MCP / Cursor
Connect Manycrawl to Cursor
There is no button for this one — you add a single entry to a JSON file. It is the same server Claude Desktop uses, and the same tools; only the config location differs.
Step 1Open the app and sign in
The desktop app is the engine, so it has to be running. Opening it starts the local bridge on port 8765 and the scraper sidecar on 8766 — you do not run either yourself, and you do not need Node installed. The app ships its own.
If you have logged into Apollo, Facebook or LinkedIn in its built-in browser, those sources are available to Cursor too, because it is still your browser doing the fetching.
Step 2Add the entry to Cursor
Create or edit ~/.cursor/mcp.json to make it available everywhere, or .cursor/mcp.json inside a project to scope it to that project alone:
{
"mcpServers": {
"manycrawl": { "url": "http://127.0.0.1:8765/mcp" }
}
}
A bare url, with no type — that is the form Cursor uses for a local HTTP server. Claude Desktop wants "type": "http" alongside it, which is why the two configs are not quite interchangeable even though the endpoint is identical. If the file already has other servers in it, add manycrawl beside them rather than replacing the object.
No restart. Cursor watches the file and picks up a new server within a few seconds — verified against an instance that had been open for six days. To see it, go to Customize → MCPs: manycrawl appears under Connected with a green dot and its tool count.
Step 3Ask for a list
Say the word Manycrawl in the request:
"Use Manycrawl to find 50 dentists in Ljubljana and get their emails."
Naming it matters. Without it the model may answer from a web search instead — which returns names but rarely phone numbers or emails, and leaves no table behind in the app.
CheckIs it working?
Ask Cursor to call manycrawl_engine_status. A healthy answer looks like this:
{
"bridge": true,
"dashboardAlive": true,
"engine": { "desktop": true, "authenticated": true, "isPro": true }
}
Leave the app running and signed in while you work. You do not have to keep the window in front of you — closing it hides the app to the tray and it keeps serving. Quitting it properly stops the bridge, and Cursor loses the server until you open the app again.
Worth knowingHalf the server is not for you
The tools split into two halves. The eighteen control tools are the ones that matter here: Cursor creates a source, adds enrichment columns, waits for the run and reads the finished table back, while your machine does the fetching.
The seven drain tools invert that — an AI column in the app queues a job and the agent answers it. They exist so a Claude or Codex subscription can do that thinking instead of an API key. They will run in Cursor, but there they simply spend Cursor's quota, which is the thing they were built to avoid. Use them from Claude or Codex, or not at all.
FAQWhen it does not work
Cursor does not list the server
Give it a few seconds — Cursor reloads the file on its own. If it still is not under Customize → MCPs, check the JSON parses: a trailing comma is the usual cause, and a malformed file is skipped silently. Restarting Cursor is the last resort, not the first step.
bridge: false, or the tools time out
Nothing is answering on port 8765. Usually the app is not running — open it and it starts the bridge. If the app is running and you still see this, something else on your machine is holding 8765; quit that and restart the app.
authenticated: false
The app is running but signed out. Sign in and the tools start working immediately; nothing needs restarting.
Can I run this and Claude Desktop at once?
Yes — and Codex alongside both. They are separate clients pointing at the same bridge, and it serves all of them. What you must not do is configure one client twice — the HTTP entry and a stdio entry together expose every tool in duplicate.
Can I use this from Cursor's cloud agents?
No. The endpoint is 127.0.0.1, so it is only reachable from the machine running the app. Anything executing elsewhere cannot see it, by design.
Is the bridge safe to expose?
No, and it is not meant to be. It listens on loopback with no authentication, because nothing outside your machine is supposed to reach it. Do not tunnel it or port-forward it — anything that could reach it could create tables and read them.
Does the agent spend my actions?
Yes, at the same rate as clicking Run yourself: one action per row processed. Creating a source and adding a column through MCP costs exactly what it costs in the app.