Microsoft Work IQ
Microsoft WorkIQ is Microsoft’s official MCP server that connects AI assistants to Microsoft 365 Copilot data through natural language queries.
The MCP server provides direct access to emails, calendar meetings, documents, Teams messages, and people information across your organization’s Microsoft 365 tenant.
You can ask questions such as “What did my manager say about the project deadline?” or “Find my recent documents about Q4 planning” and receive structured responses from your actual Microsoft 365 data.
Features
- 🔐 Tenant-Wide Data Access: Queries emails, meetings, documents, Teams messages, and people data across your Microsoft 365 tenant with admin-consented permissions.
- 💬 Natural Language Interface: Processes questions in plain English without requiring specific query syntax or M365 API knowledge.
- 🔌 Dual Deployment Options: Runs as a GitHub Copilot CLI plugin for immediate use or as a standalone MCP server for integration with coding agents and IDEs.
- 🌐 Cross-Platform Support: Functions on Windows (x64/ARM64), Linux (x64/ARM64), and macOS (x64/ARM64) including WSL environments.
- ⚡ Direct CLI Interaction: Includes a built-in ask command for testing queries without configuring an AI assistant.
How to Use It
Initial Setup and EULA Acceptance
You must accept the End User License Agreement before using WorkIQ. Run the following command after installation:
workiq accept-eulaInstallation via GitHub Copilot CLI
The GitHub Copilot CLI method provides the fastest deployment path. Open your terminal and start the Copilot CLI:
copilotAdd the GitHub plugins marketplace if you have not done so previously:
/plugin marketplace add github/copilot-pluginsInstall the WorkIQ plugin:
/plugin install workiq@copilot-pluginsRestart the Copilot CLI session. You can now query your Microsoft 365 data directly via natural-language prompts in the CLI.
Standalone MCP Server Installation
Install WorkIQ MCP server globally through npm:
npm install -g @microsoft/workiqStart the MCP server in stdio mode:
workiq mcpYou can also run the server without installing it globally by using npx:
npx -y @microsoft/workiq mcpConfiguration for MCP clients
Add WorkIQ as an MCP server in your AI assistant or IDE configuration file. The configuration uses npx to run the server without requiring a global installation:
{
"workiq": {
"command": "npx",
"args": [
"-y",
"@microsoft/workiq",
"mcp"
],
"tools": [
"*"
]
}
}Administrative Consent for Tenant Access
WorkIQ requires administrative consent to access Microsoft 365 tenant data. On first authentication attempt, a consent dialog will appear. If you are not a tenant administrator, you must contact your IT department to grant the necessary permissions.
Tenant administrators can review the detailed consent process in the ADMIN-INSTRUCTIONS.md file included with the package. Microsoft provides a one-click consent URL that administrators can use to approve the required permissions. The permissions follow Microsoft’s standard admin consent flow documented at their Entra identity platform.
WSL Browser Support
The WorkIQ authentication flow launches a browser for OAuth sign-in. WSL users must install browser support utilities:
sudo apt install xdg-utils
sudo apt install wsluThese packages enable WSL to open the default Windows browser for authentication.
Command Line Interface
The WorkIQ CLI provides several commands beyond the MCP server mode:
Interactive Mode: Launch an interactive session where you can ask multiple questions:
workiq askSingle Question Mode: Ask a specific question and exit:
workiq ask -q "What meetings do I have tomorrow?"Tenant-Specific Queries: Target a specific tenant by providing the tenant ID:
workiq ask -t "your-tenant-id" -q "Show my emails from last week"Version Information: Check the installed WorkIQ version:
workiq versionAvailable Query Types
The server supports queries across five primary Microsoft 365 data types:
Emails: Search through your email messages with natural language. Example: “What did John say about the proposal?”
Meetings: Access calendar events and meeting information. Example: “What’s on my calendar tomorrow?”
Documents: Find files across SharePoint and OneDrive. Example: “Find my recent PowerPoint presentations”
Teams Messages: Query conversations in Microsoft Teams channels. Example: “Summarize today’s messages in the Engineering channel”
People: Search for colleagues and their information. Example: “Who is working on Project Alpha?”
Global Options
The WorkIQ CLI accepts global options that apply to all commands:
Tenant ID: Specify which Entra tenant to authenticate against. Defaults to “common” which uses the home tenant of the authenticated user.
-t, --tenant-id <tenant-id>Help Information: Display command usage and options.
-?, -h, --helpVersion Display: Show the current WorkIQ version.
--versionFAQs
Q: What happens if I am not a tenant administrator and WorkIQ requests admin consent?
A: The authentication flow will fail until an administrator grants consent. Contact your IT department and provide them with the ADMIN-INSTRUCTIONS.md file from the WorkIQ package.
Q: Can I use WorkIQ with multiple Microsoft 365 tenants?
A: Yes. Use the –tenant-id option with your specific tenant ID for each command. The default “common” value uses your home tenant, but you can override this for each query or MCP server session.
Q: How do I troubleshoot authentication failures in WSL?
A: Install the xdg-utils and wslu packages to enable browser launching from WSL. If authentication still fails, verify that your WSL installation can open Windows applications and that your default browser is configured correctly.
Q: What is the difference between using WorkIQ through GitHub Copilot CLI versus as a standalone MCP server?
A: The GitHub Copilot CLI integration provides immediate access through the Copilot interface without additional configuration. The standalone MCP server mode allows integration with any MCP-compatible AI assistant or IDE.
Latest MCP Servers
Terminal
Cloudflare
Comet
Featured MCP Servers
Microsoft Work IQ
Better Icons
Apify
FAQs
Q: What exactly is the Model Context Protocol (MCP)?
A: MCP is an open standard, like a common language, that lets AI applications (clients) and external data sources or tools (servers) talk to each other. It helps AI models get the context (data, instructions, tools) they need from outside systems to give more accurate and relevant responses. Think of it as a universal adapter for AI connections.
Q: How is MCP different from OpenAI's function calling or plugins?
A: While OpenAI's tools allow models to use specific external functions, MCP is a broader, open standard. It covers not just tool use, but also providing structured data (Resources) and instruction templates (Prompts) as context. Being an open standard means it's not tied to one company's models or platform. OpenAI has even started adopting MCP in its Agents SDK.
Q: Can I use MCP with frameworks like LangChain?
A: Yes, MCP is designed to complement frameworks like LangChain or LlamaIndex. Instead of relying solely on custom connectors within these frameworks, you can use MCP as a standardized bridge to connect to various tools and data sources. There's potential for interoperability, like converting MCP tools into LangChain tools.
Q: Why was MCP created? What problem does it solve?
A: It was created because large language models often lack real-time information and connecting them to external data/tools required custom, complex integrations for each pair. MCP solves this by providing a standard way to connect, reducing development time, complexity, and cost, and enabling better interoperability between different AI models and tools.
Q: Is MCP secure? What are the main risks?
A: Security is a major consideration. While MCP includes principles like user consent and control, risks exist. These include potential server compromises leading to token theft, indirect prompt injection attacks, excessive permissions, context data leakage, session hijacking, and vulnerabilities in server implementations. Implementing robust security measures like OAuth 2.1, TLS, strict permissions, and monitoring is crucial.
Q: Who is behind MCP?
A: MCP was initially developed and open-sourced by Anthropic. However, it's an open standard with active contributions from the community, including companies like Microsoft and VMware Tanzu who maintain official SDKs.


