Cursor
How to connect ZoomInfo MCP to Cursor using the mcp-remote bridge, which handles the browser OAuth sign-in and exposes ZoomInfo to Cursor's Agent.
Overview
Cursor supports custom MCP servers, so you can give Cursor's Agent live ZoomInfo data alongside your code. Cursor connects to ZoomInfo through the mcp-remote bridge: a small local proxy (run via npx) that handles the browser sign-in and exposes ZoomInfo to Cursor over stdio. There is no developer app to register and no client secret to paste; you sign in with your normal ZoomInfo credentials on first use.
Requirements
- Node.js 18 or later with
npxon yourPATH. Check withnode --version. If you don't have it, install from nodejs.org↗ or via your package manager.
Setup
Open your MCP config
In Cursor, go to Settings → Cursor Settings → Tools & Integrations and open the MCP configuration, or edit ~/.cursor/mcp.json directly.
Add the ZoomInfo server
Add the zoominfo entry to your mcpServers block:
// ~/.cursor/mcp.json
{
"mcpServers": {
"zoominfo": {
"command": "npx",
"args": [
"-y",
"mcp-remote@0.1.38",
"https://mcp.zoominfo.com/mcp",
"46818",
"--static-oauth-client-metadata",
"{\"scope\":\"openid profile email offline_access zi_api zi_mcp api:data:mcp\"}"
]
}
}
}Restart Cursor
Restart so Cursor picks up the new server entry.
Authenticate
The first time Cursor uses the server, the bridge opens the ZoomInfo sign-in in your browser. Log in with your normal credentials or SSO and approve access. On success you'll land on a page reading "Authorization successful! You may close this window and return to the CLI" (the address bar will show localhost:46818). Close the tab and return to Cursor.
Tokens are cached locally under ~/.mcp-auth/, so you won't be prompted again until they expire. If Cursor still shows the server as connecting, toggle the MCP server off and on (or restart Cursor) so it picks up the authenticated bridge.
Verify the connection
Open the Agent and ask: "How many employees does Snowflake have?" A healthy connection calls the matching ZoomInfo tool and returns live data.
Next - run your first session. Once the ZoomInfo server is authenticated, paste this into Cursor's Agent. It orients from your GTM context and only runs after you approve:
(Use the ZoomInfo MCP tools if available; otherwise use the GTM CLI. Use the tool schema or CLI help for supported commands.) I just connected ZoomInfo. Help me complete the job below. 1. Read my saved business context with get_gtm_context, or the CLI equivalent. This read is free. Use the returned offerings, ICP, and role to frame the work. If context is missing, continue with the information we have. Save changes only if I explicitly ask; a first briefing does not require updating shared business context. 2. Prepare a connected account briefing. Ask me only which company or domain to brief if I haven't named one. Use the account and decision already in this conversation when available. Connect the account's available CRM history, including stage and status, with recent customer conversations and external buying signals. Use Account Research, and add Browse Engagements, Conversation Intelligence, or company signals when the briefing needs more evidence. Return a short briefing: where things stand, what changed, what remains unresolved, and one recommended next action. Cite the source and date for each material fact when returned. Distinguish the recommendation from the evidence. 3. Before calling a tool, check its schema or documented inputs rather than guessing at parameters. Ask only for missing inputs, in a single message, then name the tools and give a credit estimate if supported by their documentation. Label it as an estimate: actual charges depend on records and work done. Ask for approval once before paid research, then complete the selected job. If a tool call comes back "No approval received" or a similar permission response, say so plainly, name the tool, and continue with the remaining steps. Don't retry the same call hoping for a different result, and don't invent an approval that didn't happen. Include a source-coverage note of no more than 3 lines. Separate an unavailable or unauthorized source from a successful search with no matching records. If connection status is unknown, say so. Never infer "no customer history" from an empty result. Continue with available evidence and identify what is missing; use https://gtm.ai/guides/connect-customer-context for source setup. Recommend CRM changes as drafts. Applying them requires an available, separately connected CRM workflow and my authorization. Do not claim a CRM update was made by ZoomInfo research tools.
New to ZoomInfo?
How Cursor Selects Tools
Cursor's Agent reads the ZoomInfo tool descriptions and picks the right tool for your request. You don't need to name a tool, though you can reference ZoomInfo explicitly to steer it. Ask it to "research Acme Corp" and it invokes Account Research; ask for VPs of Sales at companies like Salesforce and it chains Find Similar Companies into Search Contacts.
Direct tools (Search, Enrich, Lookup) return data straight into the Agent's context window, so narrow your filters before searching across thousands of records. Research tools synthesize large payloads before returning a summary, which keeps context manageable.
Troubleshooting
"Failed during live tool discovery" or the server errors immediately after you add it: this usually means Cursor was configured with a native { "url": "..." } entry instead of the bridge. Use the mcp-remote bridge config shown in Setup above, then restart Cursor.
npx or "command not found" errors: the bridge requires Node.js. Confirm node --version returns 18 or later and that npx is on your PATH, then restart Cursor.
Authentication never completes or times out: make sure you're signing in with your personal ZoomInfo credentials, not a shared or admin-only account. If the browser window didn't open, or the token has gone stale, toggle the server off and on to re-trigger the OAuth flow. You can also clear the cached tokens under ~/.mcp-auth/ and reconnect to force a fresh sign-in.
The server shows as disconnected: confirm the JSON in ~/.cursor/mcp.json is valid (a trailing comma is the usual culprit) and that the endpoint is exactly https://mcp.zoominfo.com/mcp. Restart Cursor after any edit.
No tools appear: open the MCP settings and confirm zoominfo is enabled. Cursor refreshes the tool list when it reconnects to the server.
Credit errors during enrichment: MCP requires bulk data credits. Confirm with your ZoomInfo admin that your account has bulk credits enabled. Recurring monthly credits are not supported by MCP.
What's Next
For the field-by-field defaults that apply to any custom MCP form, see Add ZoomInfo as a Custom Connector. For the full tool list, see the MCP Tools documentation.