Install
$ agentstack add mcp-martinm85-mcp-server-graph-api ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
MCP Server for the Microsoft Graph Api
Model-context-protocol (MCP) server for the Microsoft Graph API in C#.
Prerequisites
Entra ID application
Register a new Entra ID application, add and grant at least the User.Read.All application permission and create a new client secret.
You can grant also another permissions, it depends on what you want to ask AI about your tenant through the Microsoft Graph API.
Claude Desktop app
I'm using the Claude Desktop app, but I think you can use any other MCP clients, including GitHub Copilot if they allow to add local MCP server.
MCP server
Open and build the solution.
MCP server configuration
Open the claude_desktop_config.json file. On Windows, the file should be located in \%APPDATA%\Claude\\ folder.
Add the MCP Server. Under the args section, specify the path to project folder. Don't forget to set the details about the Entra ID application like tenant id, client id and client secret under the env section.
By default, Microsoft Graph global service is used. You can change it by modifying the NATIONAL_CLOUD environment variable.
Possible values for the NATIONAL_CLOUD are:
- Global: https://graph.microsoft.com - Microsoft Graph global service
- US_GOV: https://graph.microsoft.us - Microsoft Graph for US Government L4
- USGOVDOD: https://dod-graph.microsoft.us - Microsoft Graph for US Government L5 (DOD)
- China: https://microsoftgraph.chinacloudapi.cn - Microsoft Graph China operated by 21Vianet
- Germany: https://graph.microsoft.de - Microsoft Graph for Germany
{
"mcpServers": {
"graphApi": {
"command": "dotnet",
"args": [
"run",
"--project",
"path/to/folder/with/console_project",
"--no-build"
],
"env": {
"TENANT_ID": "",
"CLIENT_ID": "",
"CLIENT_SECRET": "",
"NATIONAL_CLOUD": "Global"
}
}
}
}
Run MCP server
When you open Claude Desktop app, the MCP server should be automatically discovered and run. You can start new chat.
If Claude Desktop app was already open, you need to close (quit it in system tray) and reopen it.
In case of any issues, you can check logs in \%APPDATA%\Claude\\logs.
MCP Client
The MCP client allows you to connect the MCP server.
Tools exposed by the MCP server can be invoked either by Claude AI (via Anthropic Claude API) or by any model deployed to Azure OpenAI Service.
You need to set the Anthropic API key in the AnthropicService.GetAnthropicApiKey() method.
private static string GetAnthropicApiKey()
{
return "";
}
For Azure OpenAI Service, you need to
- API key: set either the
AZURE_OPENAI_API_KEYenvironment variable or specify the key in theAzureOpenAIServiceGetOpenAIApiKey()method - Azure OpenAI endpoint: set either the
AZURE_OPENAI_ENDPOINTenvironment variable or specify the endpoint in theAzureOpenAIService.GetOpenAIEndpoint()method
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: MartinM85
- Source: MartinM85/mcp-server-graph-api
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.