Skip to main content
Looking to connect your own MCP server so Minoa’s AI agents can use its tools and data? See Bring Your Own MCP instead. This page is about the reverse — exposing Minoa to outside AI clients.

Overview

Minoa exposes an MCP (Model Context Protocol) server that lets any compatible AI client access your sales data — business cases, pipeline analytics, value frameworks, and more — through a standardized interface. If you’re using a platform that supports MCP, you can connect it to Minoa in minutes. There’s nothing to enable and no access to request — point your client at https://mcp.minoa.io and sign in with your Minoa account.
The MCP server is not a side door. It runs on the same permission model as the web app, enforced by the same backend. An AE connecting Claude to Minoa can do exactly what that AE can do in the app — no more. Editing the value framework, including its math, stays admin-only. See Permissions and Governance.

Supported Platforms

We have step-by-step setup guides for these platforms:

Claude

Claude Desktop & Claude Web

Glean

Glean MCP client

Dust

Dust AI agents

n8n

n8n workflow automation
Using a different MCP client? The configuration below works with any client that supports the MCP protocol. See Connecting Any MCP Client for generic setup instructions.

MCP Server URL

This is the URL you’ll use to connect any MCP client to Minoa.

Authentication

Minoa uses OAuth 2.0 to authenticate MCP connections. The server supports:
  • Authorization Code grant type with PKCE
  • Refresh Token grant type with token rotation
  • Standard OAuth discovery via /.well-known/oauth-authorization-server

How it works

  1. Your MCP client initiates an OAuth flow against the Minoa server
  2. You’re redirected to Minoa to sign in with your own account
  3. You authorize the client to access your workspace data
  4. The client receives an access token and a refresh token scoped to your workspace
  5. The client silently renews the access token in the background using the refresh token — no re-login needed

Token lifetimes

Access tokens are short-lived; your client renews them automatically via the refresh token grant. Refresh tokens rotate on every renewal and remain valid as long as the client refreshes at least every 30 days, up to a maximum of 90 days from the original authorization. After that, you’ll be asked to sign in and authorize again.
Why personal authentication?Minoa uses per-user authentication rather than shared API keys. This means:
  • Audit trail — Every action is logged under your user, so your team knows who did what
  • Permissions — The client inherits your role. It can read and change exactly what you can read and change in the web app, and nothing else
  • Accountability — AI actions are tied to a real person, not an anonymous bot

OAuth Endpoints


Permissions and Governance

The MCP server enforces the same user permissions as the web app. There is no separate MCP permission model to configure, no per-tool access list to maintain, and no shared service account that quietly runs as an admin. Every MCP request hits the same backend, with the same role checks, as the equivalent click in the app. That’s a consequence of how the connection is built: your client authenticates as you over OAuth, so the token it holds carries your role. Connecting a new AI client grants that client your access — it never grants you more access than you already had.

What each capability requires

Every tool declares the access it needs, and the server checks it on every call. There are three tiers: So there are two separate gates, not one. Editing a business case depends on your collaborator role on that specific business case — an AE can’t reach into a colleague’s deal through an agent any more than they can in the app. Editing the library everyone sells from depends on being a workspace admin. (Workspace admins bypass per-business-case roles, exactly as they do in the app.)
A business case is the seller’s own working space, so an AE changing an input on their own deal is expected. What an AE cannot do, over MCP or in the app, is change the library those business cases are built from.Admin-gated capabilities aren’t even advertised to a non-admin’s client — the server leaves them out of the tool list it returns, so the assistant doesn’t know they exist and won’t offer them. And because clients cache tool lists, the role check runs again on every call: a stale cached tool still gets rejected, with “You need admin access in this workspace to do this. Ask a workspace admin to run it.”

Value framework changes need an admin and an approval

Admin access is the first gate, not the only one. Even as an admin, your agent never writes straight to the live library:
  1. Every change stages in your own private draft, which nobody else on your team sees.
  2. Publishing requires an explicit review, showing what changed and what each calculation now computes on its default values.
  3. You approve by naming the use cases to publish. There’s no publish-everything shortcut, so a half-finished draft can’t ride along with a change you meant to ship.
Drafts are the same staging area as Value Intelligence → Reviews in the web app, so an admin can start in chat and finish in the UI, or review a draft there before it goes live. See Drafts, Reviews, and Publishing for the safety model, or the Update Your Value Framework with Your AI Agent recipe for the full flow.
Publishing also leaves existing business cases untouched — a use case already added to a business case keeps the math it had when it was added. So even a mistaken publish can’t move the numbers in a deal your team is currently negotiating.
Global inputs are the exception to the draft flow. They’re admin-only, but they write live — there’s no review step, so the workspace sees the change immediately. Treat them like any other shared benchmark edit.

Keeping an audit trail

Because every client authenticates as a real user, every action an agent takes is attributed to that person, not to “the AI”. If a number in a business case changed last Tuesday, the log tells you which teammate’s agent changed it.
Want to tighten this further? Fewer admins means a smaller surface for value framework edits from any direction — app, Value Agent, or MCP. See User Management to review who currently holds Admin.

Available Tools

Once connected, your MCP client can use the capabilities below. You don’t pick tools manually — your AI client reads their descriptions and selects (and chains) the right ones for your request. Every capability is permission-checked server-side. The ones marked workspace admins only aren’t offered to a non-admin’s client at all — see Permissions and Governance. Discover & read Analytics Create Build & edit Author your value framework (workspace admins)
Value framework authoring is admin-only — the server refuses these calls for anyone else — and every change stages in your own private draft until you approve it by name. See Permissions and Governance for the full picture, or the Update Your Value Framework with Your AI Agent recipe for the whole flow.
Export & collaborate Your MCP client automatically discovers each capability’s full schema — parameters, types, and exact name — when it connects.

Guided Workflows

Beyond individual capabilities, the Minoa MCP server offers guided workflows — multi-step routines your client can run directly. Each one orchestrates the capabilities above to complete an end-to-end task.
In most clients, prompts appear as slash-commands or selectable actions once the server is connected. Attach any relevant files (e.g. a deck for a backfill) and run the workflow.

Available Resources

MCP resources allow clients to read structured data directly from Minoa.

Connecting Any MCP Client

If your MCP client isn’t listed in our platform guides, you can connect it manually using the information above. Here’s what you’ll need: Most modern MCP clients can auto-discover OAuth endpoints. Just provide:
  1. MCP Server URLhttps://mcp.minoa.io
  2. The client will discover authorization and token endpoints automatically via /.well-known/oauth-authorization-server

For clients requiring manual configuration

If your client doesn’t support auto-discovery, configure these settings:
If your client requires a Client ID, contact support@minoa.io to get one provisioned for your platform.

Transport

The Minoa MCP server supports Streamable HTTP transport:
  • SSE endpointGET https://mcp.minoa.io/ (or /sse for backwards compatibility)
  • Message endpointPOST https://mcp.minoa.io/ (or /messages for backwards compatibility)

Security

  • All requests are authenticated via OAuth and scoped to your Minoa workspace
  • Clients inherit the authenticated user’s role — they can read and change exactly what that user can in the web app. Admin-only capabilities, such as value framework edits, aren’t offered to a non-admin’s client and are rejected if called anyway (details)
  • Access tokens can be revoked at any time by disconnecting from your MCP client
  • The server enforces rate limits to prevent abuse
  • All connections use TLS encryption

Troubleshooting

OAuth flow doesn’t start

Make sure your MCP server URL is correct and includes the full path. The server exposes discovery endpoints at /.well-known/oauth-authorization-server — if your client can’t reach these, double-check the URL.

”Missing or invalid required parameters” on token exchange

Some clients send client_id in the HTTP header instead of the request body. Set Authentication to Body in your client’s OAuth configuration.

Connection drops or times out

The MCP server supports long-lived SSE connections. If your client drops the connection, it should automatically reconnect. If issues persist, check your network/firewall settings.

Tools suddenly stop working (“can’t access” errors)

This usually means your client’s authorization has expired and it isn’t prompting you to reconnect. Disconnect (or remove) the Minoa server in your MCP client, then add or use it again to trigger a fresh sign-in. See the platform guides for client-specific steps.

Need Help?

For setup help or any questions, reach out to support@minoa.io.