Documentation Blog Free tools [email protected]Log in

How to use MCP in Cursor: add a server, give your agent real tools

Cursor's agent connects to an MCP server declared in mcp.json and gains its toolsCursorAgent — decides whena task needs a tool.cursor/mcp.jsondeclares the servertool call →← resultMCP serversearch · scrapecrawl · mapany capabilityBackendAPI · web · DB

MCP in Cursor lets the agent use external tools — search the web, scrape a page, query a database, hit your API — instead of only reading your codebase. You add a server by declaring it in an mcp.json file, Cursor connects to it, and its tools become available to the agent in chat and Composer. Setup is a few lines of JSON; the value is an agent that can act on the world, not just your files.

What MCP adds to Cursor

Out of the box, Cursor's agent reasons over your code. The Model Context Protocol extends that: a server exposes tools with names and descriptions, and the agent can call them mid-task. Connect a database server and the agent queries your schema; connect a web-data server and it fetches live documentation or scrapes a page it needs. The agent decides when a tool is relevant from its description — you don't script the calls. This is the same protocol Claude and other hosts use, so a server you add to Cursor works elsewhere too; we explain the mechanics in how MCP servers work.

Adding a server: the mcp.json file

Cursor reads MCP servers from a JSON config. You have two scopes:

ScopeFileUse for
Project.cursor/mcp.json in the repoServers specific to this project; shareable with the team
Global~/.cursor/mcp.jsonServers you want in every project

The format is the same as other MCP hosts — a mcpServers object naming each server and how to launch it:

{
  "mcpServers": {
    "web-data": {
      "command": "npx",
      "args": ["-y", "quantumproxies-mcp"],
      "env": { "QUANTUMPROXIES_API_KEY": "your_key" }
    }
  }
}

Save the file, and Cursor picks up the server. Open Settings → MCP to confirm it connected and see the tools it exposes — a green indicator and a tool list mean it's working. If it doesn't appear, the usual cause is a bad command path or a missing env var, both visible in that settings panel.

Using the tools in a task

Once connected, just ask. In agent chat or Composer, describe what you need — "scrape the pricing page at example.com and summarize the tiers" — and the agent recognizes the web-data server's scrape tool applies, calls it, and reasons over the result. By default Cursor asks you to approve each tool call the first time, which is the right safety posture: you see exactly what the agent is about to do before it acts. You can allow-list trusted tools to skip the prompt for routine calls. The agent chooses tools from their descriptions, so a well-described server "just works" without you naming the tool explicitly.

stdio vs remote servers

Cursor supports two kinds of MCP server, and knowing which you're adding avoids confusion. A stdio server — like the npx example above — runs locally: Cursor launches the command as a subprocess on your machine and talks to it over standard input/output. This is the common case for developer tools and needs nothing but the command in your config. A remote server runs elsewhere and Cursor connects to it over HTTP with a URL instead of a command; you'd use this for a shared team server or a hosted service. For most setups you want stdio: it's simpler, has no network to configure, and the server starts and stops with Cursor. If a server's documentation gives you a URL rather than a command, it's remote, and your mcp.json entry uses a url field instead of command and args.

Project vs global, and team sharing

Put a server in .cursor/mcp.json and commit it, and everyone on the team gets the same tools when they open the repo — MCP config becomes part of the project setup, like a devcontainer. Keep personal or credentialed servers in the global ~/.cursor/mcp.json instead, and never commit API keys: reference them via environment variables the config reads, not literal values in a shared file. This split — shared tool declarations, private credentials — is the clean pattern for a team using MCP in Cursor.

A web-data server for Cursor

One of the highest-value servers to add is web data, because it's the capability the agent most often lacks: Cursor can read your code but not the live web. Our MCP server is the config shown above — an npx package that gives the Cursor agent search, scrape, crawl, map, batch and seo_audit as tools, backed by residential proxies and billed pay per success. With it connected, the agent can look up current documentation while coding, scrape an API's page to understand its shape, or pull live data into what it's building — without you leaving the editor to copy-paste. It's a free open package with $2 of usage included monthly, so trying it is a two-line addition to your mcp.json. The same web-data API is available over REST if you'd rather call it directly, and the docs cover setup for Cursor and every other MCP host.

Sources & further reading

FAQ

Quick answers on how to use cursor mcp.

Something else? Ask us →

Where do I put the mcp.json file in Cursor?

Two options: .cursor/mcp.json in your project root for servers specific to that repo (and shareable with the team), or ~/.cursor/mcp.json for servers you want available in every project. Cursor reads both; project config is ideal for committing shared tools, global for personal or credentialed servers.

How do I know if my Cursor MCP server connected?

Open Settings → MCP. A connected server shows a green indicator and lists the tools it exposes. If it's missing or red, the usual causes are a wrong command path or a missing environment variable — both are visible in that panel, and fixing the mcp.json entry then reloading resolves most cases.

Does Cursor ask before running MCP tools?

Yes, by default it prompts you to approve each tool call the first time, so you see exactly what the agent will do before it acts. You can allow-list trusted tools to skip the prompt for routine calls. Keeping approval on for anything with side effects is the safer posture.

Can I share MCP servers with my team in Cursor?

Yes — put the server in .cursor/mcp.json and commit it, and everyone gets the same tools when they open the repo, like a devcontainer. Never commit API keys, though: reference credentials via environment variables the config reads, keeping shared tool declarations and private secrets separate.

What MCP server should I add to Cursor first?

A web-data server is one of the most useful, because Cursor can read your code but not the live web. Adding one gives the agent search, scrape and crawl tools so it can look up current docs, understand an API's real shape, or pull live data into what it's building — without you leaving the editor to copy-paste.

Give the Cursor agent the live web

Add our MCP server in two lines of mcp.json and the agent gets search, scrape, crawl, map and more — residential proxies underneath, pay per success. Free open package, $2 of usage monthly.

Related reading