{"slug":"outlook-mcp","name":"outlook-mcp","version":"0.1.0","description":"Read and manage the signed-in user's Outlook mailbox through Microsoft Graph.","category":null,"owner":null,"docs_url":null,"tags":[],"auth":{"type":"oauthproxy","provider":"azure"},"store":"redis","roles":[],"default_role":null,"health_path":"/health","arcai_mcp_version":"0.5.2","tools":[{"name":"list_messages","description":"List the signed-in user's most recent Outlook messages.","capabilities":[],"gated":false},{"name":"read_message","description":"Read one Outlook message in full, including its body.","capabilities":[],"gated":false},{"name":"send_mail","description":"Send an email from the signed-in user's mailbox immediately. This cannot be undone.","capabilities":[],"gated":false},{"name":"create_draft","description":"Create an unsent draft in the signed-in user's mailbox.","capabilities":[],"gated":false},{"name":"send_draft","description":"Send a draft that already exists in the mailbox. This cannot be undone.","capabilities":[],"gated":false}],"resources":[],"resource_templates":[],"prompts":[],"image":"acrarcaiplatform.azurecr.io/mcp/connectors/outlook-mcp:admincreds-5d6eadb","version_image":"acrarcaiplatform.azurecr.io/mcp/connectors/outlook-mcp:0.1.0","config":[{"var":"OUTLOOK_MCP_BASE_URL","kind":"platform","secret_name":null,"help":"The public URL this server is reachable at, not the bind address.\nRegister $OUTLOOK_MCP_BASE_URL/auth/callback as the redirect URI at your IdP."},{"var":"OUTLOOK_MCP_CLIENT_ID","kind":"developer","secret_name":"mcp--outlook-mcp--client-id","help":"The OAuth client registered with the provider named in config.yaml."},{"var":"OUTLOOK_MCP_CLIENT_SECRET","kind":"developer","secret_name":"mcp--outlook-mcp--client-secret","help":"Its secret. Never commit the filled-in .env."},{"var":"OUTLOOK_MCP_TENANT_ID","kind":"developer","secret_name":"mcp--outlook-mcp--tenant-id","help":""},{"var":"OUTLOOK_MCP_REDIS_URL","kind":"provisioned","secret_name":"mcp--outlook-mcp--redis-url","help":"Redis holding client registrations and upstream tokens.\n`docker compose up -d` starts one matching this URL."},{"var":"OUTLOOK_MCP_STORE_ENCRYPTION_KEY","kind":"provisioned","secret_name":"mcp--outlook-mcp--store-encryption-key","help":"Fernet key encrypting the OAuth collections. Generate one with:\n  python -c \"from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())\"\nThe value below is VALID BUT PUBLIC, so `fleet catalog-manifest` can build; deploys use Key Vault. Never encrypt real data with it."},{"var":"OUTLOOK_MCP_ALLOWED_RECIPIENT_DOMAINS","kind":"developer","secret_name":"mcp--outlook-mcp--allowed-recipient-domains","help":"Recipient domains send_mail and send_draft may reach, comma-separated, matched\nexactly (listing growtharc.com does not admit eu.growtharc.com). Read once at\nstartup. Empty or unset, both refuse every send; create_draft still works.\nNot referenced by config.yaml (the manifest refuses keys it does not know), so\nthis line is what `fleet secrets plan` sees: a developer setting in Key Vault."}],"url":"https://outlook-mcp.mcp.growtharc.com/mcp","status":{"slug":"outlook-mcp","state":"down","checked_at":"2026-10-20T08:31:07.379280+00:00","latency_ms":14,"detail":"ConnectError: ","health":null}}