Setting Up the Discovery MCP

Overview

The Discovery MCP lets you ask an AI assistant such as ChatGPT, Claude or Cursor questions about your Discovery data in plain language. You connect it from User Settings → MCP.

Once connected, your assistant can:

  • Look up and summarize your clients, locations, services, vendor invoices, incidents, work orders and more
  • Answer questions such as "Which locations had the most overage charges last quarter?"
  • Classify vendor line-item text into Discovery charge types and suggest a service setup from invoice text

Access is read-only. Your assistant can never create, change or delete anything in Discovery. It sees only data from the organization you're currently working in.


Before you start

You need three things:

  1. MCP Access turned on for your organization. It is off by default. If you don't see an MCP tab under User Settings, it isn't on yet. An admin can request it by contacting Discovery Support.
  2. An active Discovery account in that organization. No special role is required.  The MCP can only read data your role can view.
  3. A supported AI client. How you connect depends on the client:
Client How it connects What you'll do
ChatGPT Sign in with Discovery Add a custom MCP app, approve a consent screen
Claude (claude.ai and Claude Desktop) Sign in with Discovery Add a custom connector, approve a consent screen
Claude Code Sign in with Discovery Run one terminal command, approve a consent screen
Codex Sign in with Discovery Run one terminal command, approve a consent screen
VS Code Sign in with Discovery Click Add to VS Code, approve a consent screen
Cursor MCP token Create a token, click Add to Cursor
Scripts, OpenAI Agents SDK, other MCP clients MCP token Create a token, paste it into your config

Clients that sign in with Discovery never need a token. You approve the connection once, and the client renews it automatically.


Set up your client

Every setup starts in Discovery. Go to User Settings → MCP and find Connect your AI client. The MCP Endpoint shown there is the address your client connects to:

https://mcp.discoveryapp.io

Then follow the steps for your client below.

ChatGPT

  1. On the MCP page, copy the endpoint and click Open ChatGPT.
  2. In ChatGPT, open Settings → Apps → Advanced settings and turn on developer mode. On a Business or Enterprise workspace, an admin may need to turn it on.
  3. Click Plugins in the sidebar.
  4. Choose Add, then Create MCP App.
  5. In the New Plugin window, name it (for example, Discovery). Paste the endpoint into Connection, with Server URL selected. Leave Authentication set to OAuth.
  6. Tick I understand and want to continue, then choose Create.
  7. Approve the Discovery consent screen when it opens.

If anything looks off, open Advanced OAuth settings before step 6. The registration method should be CIMD and the scope should be mcp:read.

Claude (claude.ai and Claude Desktop)

  1. On the MCP page, copy the endpoint and click Open Claude.
  2. Under Customize → Connectors, click + and choose Add custom connector.
  3. Name it (for example, Discovery) and paste the endpoint as its URL.
  4. Approve the consent screen when it opens.

Connectors added on claude.ai also appear in Claude Desktop.

On a Claude Team or Enterprise plan, only an Owner can add a custom connector. If you don't see Add custom connector, ask an Owner to add Discovery under Organization settings → Connectors with the endpoint above. Then open Customize → Connectors, pick the connector by the name they gave it, connect, and approve the consent screen. Everyone signs in with their own Discovery account.

Claude Code

Run this in a terminal:

claude mcp add --transport http discovery https://mcp.discoveryapp.io

The first time Claude Code uses Discovery, it opens a consent screen in your browser. Approve it.

Codex

Run this in a terminal, then approve the consent screen it opens in your browser:

codex mcp add discovery --url https://mcp.discoveryapp.io

VS Code

  1. On the MCP page, click Add to VS Code.
  2. Approve the consent screen when it opens.

To add it by hand instead, run MCP: Add Server from the Command Palette, or add this to .vscode/mcp.json    in your project:

{
  "servers": {
    "discovery": {
      "type": "http",
      "url": "https://mcp.discoveryapp.io"
    }
  }
}

If the file already has a servers    entry, add only the discovery    entry inside it.

Cursor

Cursor can't sign in to Discovery yet, so it uses an MCP token.

  1. On the MCP page, click Create a Cursor token, then Save.
  2. Click Add to Cursor.
  3. In Cursor's Install MCP server? window, choose Install. Discovery then appears under Customize → MCPs.

If the link can't open Cursor (for example, Cursor runs on a remote machine), copy the snippet shown on the MCP page into ~/.cursor/mcp.json   , or .cursor/mcp.json    in your project. It already contains your token.

Copy it before you leave the page. The link and snippet contain your token and disappear when you leave or reload the page. The token is never shown again.

Scripts, OpenAI Agents SDK and other clients

Clients that run without a browser can't approve a consent screen, so they use an MCP token.

  1. On the MCP page, find Scripts and the OpenAI Agents SDK or Other MCP clients and click Create a token.
  2. Copy the filled-in snippet or header right away.

For the OpenAI Agents SDK or Responses API, add this to your tools    array:

{
  "type": "mcp",
  "server_label": "discovery",
  "server_url": "https://mcp.discoveryapp.io",
  "headers": { "Authorization": "Bearer <your-token>" },
  "require_approval": "never"
}

Any other client that supports HTTP (streamable) MCP and lets you set a request header can connect with the endpoint plus this header:

Authorization: Bearer <your-token>

Regular Discovery API tokens don't work here. Only tokens created on the MCP page do.


Check that it works

After you approve the consent screen, the client appears under Connected applications on the MCP page, for example as ChatGPT. Cursor and other token clients appear under MCP Tokens instead.

To confirm the connection, ask your assistant something simple:

  • "Using Discovery, how many active locations do we have?"

The assistant should list Discovery's tools (such as describe_schema    and run_sql   ) or start using them. Once that works, try questions like:

  • "Which 10 locations had the highest overage charges in the last 90 days?"
  • "Summarize vendor invoice spend by vendor for last month."
  • "List the active services at our Denver locations and how many pickups each gets per week."
  • "Classify these invoice lines into Discovery charge types: …"

Your client may also offer two built-in Discovery prompts: Analyze overage spend by customer and Rank locations & customers by excess / contamination / overage penalties.

A few limits to keep in mind:

  • Each answer returns at most 1,000 rows. Ask for totals or a narrower range for bigger questions.
  • A single query times out after 30 seconds.
  • Data comes from a reporting copy that can lag a few moments behind the live app.

Manage and disconnect access

You can cut off any client at any time from User Settings → MCP, and it takes effect immediately.

  • Sign-in clients (ChatGPT, Claude, Claude Code, Codex, VS Code): under Connected applications, click the disconnect icon next to the client and confirm. It must be authorized again before it can read your data.
  • Token clients (Cursor, scripts, other clients): under MCP Tokens, click the revoke icon next to the token and confirm.

How long access lasts:

Credential Lasts Ends when
Sign-in connection Renews automatically while in use You disconnect it, or it goes unused for 28 days
MCP token Does not expire You revoke it

Security notes:

  • Treat an MCP token like a password. Anyone who has it can read your organization's Discovery data as you. Don't paste it into shared files or chats.
  • Only approve consent screens you started yourself. Check that the app name and address on the screen match the client you're setting up.
  • Access follows you. The assistant always reads the organization you're currently working in. If you switch organizations in Discovery, it reads the new one.
  • Leaving Discovery ends access. If you're removed from your last organization, all your connections and tokens are revoked automatically.
  • Discovery logs every request your assistant makes, including the queries it runs, for security review.

Troubleshooting

What you see What it means What to do
No MCP tab under User Settings MCP Access isn't on for your organization Ask an admin or owner to contact Discovery Support to request it
"MCP access is not enabled for your organization" on the consent screen Same as above Request the feature, then start the connection again from your client
"We couldn't complete this request" on the consent screen The client sent an incomplete or outdated request Remove the connector or server in your client and add it again
"This credential is not valid for MCP" The client is using a regular API token, not an MCP token Create a token on the MCP page, or reconnect with sign-in
"Unauthenticated" The token was revoked, or your account is inactive Create a new token or reconnect; contact your admin if your account was deactivated
"Your current tenant changed. Retry this request." You switched organizations mid-request Ask the question again
Too many requests (429) You've passed 60 requests per minute across all your connections Wait a minute and retry
"The 30s statement timeout was exceeded" The question was too broad Retry once, then narrow the date range or ask for totals
Add custom connector missing in Claude You're on a Claude Team or Enterprise plan Ask a Claude Owner to add Discovery (see the Claude steps above)
Cursor link does nothing No cursor://    handler on this machine Use the JSON snippet from the MCP page instead
Lost a token Tokens are shown only once Revoke the old one and create a new one

Can my assistant change data in Discovery? No. Every connection is read-only.

Can it see other organizations' data? No. It sees only the organization you're currently working in.

Still stuck? Contact Discovery Support with your client name and the exact message you see.


If you have additional questions or need more in depth information, please feel free to send us a message using the help beacon in the lower right-hand corner.