Connect Cursor to a remote MCP server.
One URL in mcp.json and Cursor's agent can call tools running on someone else's infrastructure — including x402-paid endpoints. Here's the config, scoping, and the checklist when the dot stays red.
Remote MCP servers are the easy case in Cursor: there's no command to spawn, no runtime to install, no PATH issues. You give Cursor a URL, it speaks Streamable HTTP to the endpoint, and the server's tools appear in the agent's toolkit.
The configuration is one JSON file with one meaningful decision — project scope or global — plus a short list of things that go wrong with servers that require auth or payment.
Choose where the config lives
Cursor reads MCP configuration from two places: .cursor/mcp.json inside a project, and ~/.cursor/mcp.json for every project you open. Project scope is right for servers tied to one codebase — your team's internal tools, a project-specific database server — and it travels with the repo if you commit it.
Global scope suits general-purpose servers you want everywhere: documentation lookup, web search, scraping. If the same server name appears in both files, the project-level entry is the one to check first when behavior surprises you.
The config
A remote server needs only a name and a url pointing at its Streamable HTTP endpoint — conventionally a path like /mcp. Compare that to local entries, which need command and args: the url field is what tells Cursor this server is remote.
{
"mcpServers": {
"acme-search": {
"url": "https://mcp.acme.dev/mcp"
},
"local-for-comparison": {
"command": "npx",
"args": ["-y", "@acme/mcp-server"]
}
}
}Servers that need auth — or payment
Many remote servers are open endpoints, but the interesting ones rarely are. OAuth-protected servers trigger a browser sign-in when Cursor first connects — approve it once and the session persists. For servers using other schemes, the listing or README is authoritative; auth conventions vary by server.
x402-paid servers are a different mechanism: the server answers a tool call with HTTP 402 and a price, and a wallet signs a USDC authorization before the handler runs — settlement on Base takes about two seconds. Cursor itself doesn't carry a wallet as of mid-2026, so paying these endpoints means routing through a wallet-equipped proxy or using the server's free tier where one exists. The useful part: Loomal listings state the per-call price (from $0.01) up front, so you know what a server costs before wiring it in.
Verify the connection
Open Cursor Settings and find the MCP section: your server should be listed with a green indicator and an expandable tool list. If it's there, ask the agent in chat to use one of the tools by name — that exercises the full round trip, not just the handshake.
Cursor caps how many tools it exposes to the model at once, so if you've connected many servers, disable the ones you're not using rather than letting them crowd the toolbox. Fewer available tools also measurably improves the agent's tool selection.
When the dot stays red
Work through the short list: hit the URL with curl from the same machine to rule out network and DNS, confirm the path includes the server's MCP route (forgetting /mcp is the most common miss), check that the server actually speaks Streamable HTTP rather than only legacy SSE, and watch for a 401 or 402 in the response — auth and payment failures look like connection failures from the settings screen.
After fixing mcp.json, toggle the server off and on in settings or restart Cursor; config edits aren't always picked up live.
FAQ
Should I put a remote server in project or global mcp.json?
Project scope (.cursor/mcp.json) for servers specific to one codebase — it's shareable with the repo so teammates get it automatically. Global (~/.cursor/mcp.json) for utilities you want in every project. Both files use the same format.
How is a remote entry different from a local one in mcp.json?
A remote entry has a url field; a local one has command and args for Cursor to spawn as a child process. Remote servers run on the operator's infrastructure, so there's nothing to install and the server version is whatever the operator deployed.
Can Cursor use MCP servers that charge per call?
The connection works like any remote server, but payment needs a wallet that can sign USDC authorizations for the x402 flow, which Cursor doesn't bundle as of mid-2026. Practical options are a wallet-equipped proxy in front of the endpoint or the server's free tier. The per-call price is visible on the server's Loomal listing.
My server connects but the agent never uses its tools. Why?
Usually tool descriptions, not connectivity. The model picks tools by their names and descriptions, so vague ones lose to built-ins. It also helps to disable unused servers — Cursor limits how many tools reach the model, and a crowded toolbox dilutes selection.
Find a remote server to wire in.
The Loomal Index shows live tool lists and per-call prices before you connect.