Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

Explore

  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Tags index
  • Submit a server
  • Pricing

Learn

  • Guides hub
  • What is MCP?
  • Install guide
  • Troubleshooting
  • Security
  • Blog
  • Blog RSS

Tools

  • All tools
  • Config generator
  • Config validator
  • MCP playground
  • OpenAPI β†’ MCP
  • Badge generator

For agents

  • API docs
  • Trust & traffic
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
  • Remote MCP β†— (opens in a new tab)

Company

  • About
  • Contact
  • X (@AllMCPs) β†— (opens in a new tab)
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on Buildlist
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’¬ Communication
  3. Minerva MCP β€” Microsoft 365 & Azure
M
Health: ActiveRecent health check succeeded.Last checked 8/11/2026, 12:02:16 AM

Minerva MCP β€” Microsoft 365 & Azure

Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View RepositoryVisit Website

Microsoft 365 & Azure admin: Graph, ARM, and the PowerShell cmdlets Graph does not expose.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Not yet automatically verified

We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β€” we're steadily working through the catalog.

Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Install Config Generator

Choose your client
claude_desktop_config.json
{
  "mcpServers": {
    "minerva-mcp-microsoft-365-azure": {
      "command": "npx",
      "args": [
        "-y",
        "minerva-mcp",
        "--stdio"
      ]
    }
  }
}

πŸ’‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

Install Tool Schemas (9) Directory Badge Claim listing AlternativesπŸ’¬ More in Communication

Capabilities & Tool Schemas (9) ~110 tokensApproximate context cost of this server’s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Self-reported Self-reportedParsed from the repository README, not verified against a live server β€” may be incomplete or out of date.

Inspect callable tools, capabilities, and parameters exposed to AI agents by Minerva MCP β€” Microsoft 365 & Azure.

microsoft_graph_call

Any Microsoft Graph call (v1.0 or beta)

azure_arm_call

Any Azure Resource Manager call

microsoft_search

Unified Microsoft Search

get_tenant_context

Organisation, licences, Secure Score

generate_security_report

Tenant security posture

execute_exchange_online

Exchange Online cmdlets

Documentation Overview

Minerva MCP

Microsoft 365 and Azure administration for AI assistants β€” including the parts Microsoft Graph cannot reach.

CI License: MIT MCP 2026-07-28

An MCP server that lets Claude, Copilot, VS Code or any MCP client query and administer a Microsoft 365 tenant in plain language.


Why another Microsoft 365 MCP server?

There are already good ones, and this is not trying to replace them.

Lokkams-365-mcp-serverMinerva MCP
Microsoft Graphβœ…βœ… 300+ toolsβœ… generic call
Azure Resource Managerβœ…β€”βœ…
Exchange Online cmdletsβ€”β€”βœ…
SharePoint / PnP cmdletsβ€”β€”βœ…
Teams Admin cmdletsβ€”β€”βœ…
Purview / compliance cmdletsβ€”β€”βœ…
Risk classification per actionβ€”β€”βœ…
Human approval before writesβ€”read-only switchβœ… native to the protocol
MCP 2026-07-28 (stateless)β€”β€”βœ…

If you only need Graph, use Lokka or ms-365-mcp-server. They are excellent, more mature, and more widely used. Lokka in particular is written by a Microsoft Entra product manager.

Reach for this one when you hit the wall everyone hits eventually: a large part of Microsoft 365 administration has no Graph API. Mailbox permissions, transport rules, message trace, retention policies, sensitivity labels, Teams calling policies, SharePoint term stores, tenant-wide Exchange settings β€” those live in PowerShell and nowhere else. This server exposes them, with a risk classification and a confirmation step in front of anything that writes.


How it fits together

mermaid
flowchart LR
    A["AI client<br/>Claude Β· VS Code Β· Copilot Studio"]
    B["minerva-mcp"]
    C{"Risk<br/>classifier"}
    D["Human<br/>confirmation"]
    G["Microsoft Graph<br/>Azure ARM Β· Search"]
    P["PowerShell 7<br/>Exchange Β· PnP Β· Teams Β· Purview"]
    M["Microsoft<br/>authorizes the token"]

    A -->|"stdio or HTTP"| B
    B --> C
    C -->|"read"| G
    C -->|"write"| D
    D -->|"signed mandate"| G
    D -->|"signed mandate"| P
    C -->|"read"| P
    G --> M
    P --> M

Reads go straight through. Writes stop at a classifier, come back to you as an input_required describing the action and its consequences, and only run once you confirm. Microsoft still has the final word: the server forwards a token, it never grants access.

Install

Nothing to clone. Add it to your client and sign in on first use.

Claude Desktop

claude_desktop_config.json:

config.json
{
  "mcpServers": {
    "minerva": {
      "command": "npx",
      "args": ["-y", "minerva-mcp", "--stdio"]
    }
  }
}

VS Code

.vscode/mcp.json:

config.json
{
  "servers": {
    "minerva": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "minerva-mcp", "--stdio"]
    }
  }
}

More, including read-only and app-only setups, in examples/.

On the first tool call the server prints a device-code prompt on stderr: open the link, enter the code, done. No app registration needed to try it β€” it uses the public Microsoft Graph PowerShell client by default.

Requirements: Node.js 20+. For the PowerShell tools, PowerShell 7+ and the modules you intend to use (ExchangeOnlineManagement, PnP.PowerShell, MicrosoftTeams).


What you can ask

"Which mailboxes have full access delegated to someone outside their department?" β†’ execute_exchange_online with Get-MailboxPermission, no Graph equivalent exists.

"Show me every conditional access policy that does not require MFA, and our Secure Score." β†’ generate_security_report + microsoft_graph_call.

"Create a shared mailbox for invoicing and give the finance team access." β†’ classified as a write: the server describes the action and its consequences, and waits for your confirmation before doing anything.


Tools

ToolWhat it doesGraph equivalent?
microsoft_graph_callAny Microsoft Graph call (v1.0 or beta)β€”
azure_arm_callAny Azure Resource Manager callβ€”
microsoft_searchUnified Microsoft Searchβ€”
get_tenant_contextOrganisation, licences, Secure Scoreβ€”
generate_security_reportTenant security postureβ€”
execute_exchange_onlineExchange Online cmdlets❌ none
execute_pnp_sharepointPnP PowerShell (SharePoint) cmdlets❌ none
execute_teams_adminTeams Admin cmdlets❌ none
execute_purview_compliancePurview / compliance cmdlets❌ none

Restrict the surface with --tools=microsoft_graph_call,get_tenant_context, or forbid every write with --read-only.


Approval, and why it is not optional

A model reads untrusted content β€” an email subject, a site name, a document β€” and decides which tool to call. Prompt injection is not hypothetical, and the tools here can delete mailboxes.

So writes do not simply execute. Every action is classified auto, confirmed or critical from the HTTP verb and path (or the PowerShell verb). Anything above auto makes the server answer input_required under MCP's Multi Round-Trip Requests: your client shows what is about to happen and its consequences, you confirm, and only then does it run.

The confirmation is a signed mandate (HMAC) bound to the caller, the method, and a digest of the arguments, valid five minutes. A mandate obtained to delete /users/1 cannot be replayed on /users/999, and cannot be presented by anyone else.

If your client does not support elicitation, nothing is silently executed: the server returns an error saying the action needs confirmation.


Options

Every flag has an environment variable equivalent.

Transport

FlagEnvDefault
--stdioMINERVA_TRANSPORT=stdioHTTPJSON-RPC over stdin/stdout
--port=<n>MCP_SERVER_PORT3001HTTP listen port

In stdio mode all logs go to stderr β€” stdout belongs to the protocol.

Authentication

FlagEnv
--auth=<mode>MINERVA_AUTH_MODEbearer, device-code, client-secret
--tenant=<id>MINERVA_TENANT_ID, AZURE_TENANT_IDEntra tenant
--client-id=<id>MINERVA_CLIENT_ID, AZURE_CLIENT_IDApplication
--client-secret=<s>AZURE_CLIENT_SECRETApp-only secret

Defaults: bearer over HTTP (the caller supplies the token), device-code over stdio, client-secret as soon as a secret is present. Each resource gets its own token: Graph, ARM, Exchange, Purview, SharePoint and Teams do not share an audience.

Scope

FlagEnv
--read-onlyMINERVA_READ_ONLYRefuse every write
--tools=<a,b,c>MINERVA_TOOLSRegister only these tools
--ps=<mode>MINERVA_PS_EXECUTORauto, redis, local, none
--sharepoint-url=<url>MINERVA_SHAREPOINT_URLRequired by the PnP tool locally
--allowed-origins=<a,b>MINERVA_ALLOWED_ORIGINSBrowser origins allowed on /mcp
--redis-url=<url>REDIS_URLQueue for an external PowerShell runner
β€”MINERVA_MRTR_SECRETSigning key for approval mandates
β€”MINERVA_PWSH_PATHPath to pwsh
β€”MINERVA_REQUIRE_VERIFIED_TOKENSRefuse tokens whose signature cannot be verified

--read-only reuses the same risk classifier as the approval gate, so it covers PowerShell cmdlets too, not just HTTP verbs.


Protocol support

Speaks MCP 2026-07-28, and still serves handshake-era clients until 2027-07-28.

Stateless core (per-request _meta, no initialize, no Mcp-Session-Id)βœ…
server/discoverβœ…
Multi Round-Trip Requests (input_required)βœ… β€” this is the approval mechanism
MCP-Protocol-Version / Mcp-Method / Mcp-Name headers, base64 sentinelβœ… validated against the body
ttlMs / cacheScope on listsβœ… always private
Version negotiation (-32022 listing supported versions)βœ…
Origin validation (anti DNS-rebinding)βœ…
GET/DELETE on the MCP endpointβœ… 405, removed by this revision
Handshake era (initialize)βœ… until 2027-07-28

One endpoint serves both generations; the request body decides which. Both read the same tool registry, and a test compares them against a frozen contract so they cannot drift.


Security

Read SECURITY.md before deploying. The three things that matter:

  1. This server grants nothing. It forwards a Microsoft token; Microsoft authorizes. A restricted token gives a restricted server.
  2. Graph tokens cannot be verified by a third party β€” they carry a nonce header that only Graph can check. Their tid/oid claims are therefore self-reported. The server validates them structurally, flags them verified: false, and binds approval mandates to a fingerprint of the token itself rather than to the claims alone. A token that should have verified and did not is rejected.
  3. Local PowerShell mode isolates nothing. Cmdlets run with the current user's rights. Do not expose it to a caller you do not trust.

Cmdlet names and parameters never reach the script as code: they travel through environment variables, the name is validated against a strict Verb-Noun pattern, and the call goes through Get-Command plus the call operator.

Report a vulnerability privately β€” see SECURITY.md.


What this does not do

  • No process isolation in local mode.
  • No multi-tenant brokering β€” one server, one identity.
  • No signed audit ledger. Audit events are JSON on stderr, not a signed, offline-verifiable record.

Those three belong to Minerva-IA, the commercial platform this server was extracted from. Everything in this repository works without it.


Development

Terminal
npm install
npm run dev:stdio     # stdio, hot reload
npm run verify        # typecheck + tests + secret scan
npm run build && node scripts/smoke-stdio.mjs

Tests need no credentials and touch no network.

Pull requests are closed until 2027-07-31 β€” see CONTRIBUTING.md for why, and for what is welcome in the meantime (bug reports very much are).

Licence

MIT β€” see LICENSE.

Related MCP Servers

View all in Communication View all alternatives
  • Slack Mcp Server logoSlack Mcp Server

    The most powerful MCP server for Slack Workspaces.

    πŸ’¬ Communication1 views
    Compare vs Slack Mcp Server β†’
  • Ntfy Me Mcp logoNtfy Me Mcp

    An ntfy MCP server for sending/fetching ntfy notifications to your self-hosted ntfy server from AI Agents πŸ“€ (supports secure token auth & more - use with npx or docker!)

    πŸ’¬ Communication3 views
    Compare vs Ntfy Me Mcp β†’
  • Telegram Mcp logoTelegram Mcp

    Telegram API integration for accessing user data, managing dialogs (chats, channels, groups), retrieving messages, and handling read status

    πŸ’¬ Communication2 views
    Compare vs Telegram Mcp β†’
  • Telegram Mcp logoTelegram Mcp

    Telegram API integration for accessing user data, managing dialogs (chats, channels, groups), retrieving messages, sending messages and handling read status.

    πŸ’¬ Communication1 views
    Compare vs Telegram Mcp β†’

Frequently Asked Questions about Minerva MCP β€” Microsoft 365 & Azure

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "minerva-mcp-microsoft-365-azure": { "command": "npx", "args": ["-y", "Minerva MCP β€” Microsoft 365 & Azure"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMinerva MCP β€” Microsoft 365 & Azure AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/minerva-mcp-microsoft-365-azure?style=directory)](https://allmcps.com/mcp/minerva-mcp-microsoft-365-azure)
HTML Embed
<a href="https://allmcps.com/mcp/minerva-mcp-microsoft-365-azure"><img src="https://allmcps.com/api/badge/minerva-mcp-microsoft-365-azure?style=directory" alt="Minerva MCP β€” Microsoft 365 & Azure on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’¬Communication
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
4/4 checks healthy over the last 6h
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars0
GitHub Star CountTotal stargazers on GitHub representing community popularity (0 stars).
Last commit12d ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Jul 29, 2026
52Quality signal: Good Β· 52/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools25/30
Adoption & activity4/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedAllMCPs Server logo

AllMCPs Server

The official MCP server for AllMCPs.com - submit and manage tools directly from your AI. The open directory for MCP servers. Connect Claude, Cursor, Windsurf, and AI agents to databases, tools, files, and APIs. Explore 3,181+ servers. AllMCPs is the premier, open directory for discovering, evaluating, and installing Model Context Protocol (MCP) servers to equip AI agents and LLMs with real-world superpowers.

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge.

Free dofollow backlink: after claiming, verify your product site and place a dofollow AllMCPs badge β€” we recheck it stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’¬ Communication β†’Best MCP servers for Slack & Communication β†’Alternatives to Minerva MCP β€” Microsoft 365 & Azure β†’Install in Claude DesktopInstall in CursorInstall in VS Code