How to add one MCP server to Cursor for apps, memory and web search
Add CoreSpeed to ~/.cursor/mcp.json, click Needs login, and Cursor gets your connected apps, durable memory, live web search and media tools from one server.

Cursor reads MCP servers from ~/.cursor/mcp.json. Add one entry for https://api.corespeed.io/mcp, click Needs login beside the server, and sign in in the browser. Cursor then lists the tools of your connected apps, durable memory, live web search, media generation and public social data. Every call carries your organization's spend caps and lands in its activity trail.
- 1Add the entry to ~/.cursor/mcp.jsontype http, url api.corespeed.io/mcpThe user-level file applies to every project.
- 2Click Needs loginbrowser sign-in at login.corespeed.ioA first sign-in creates your organization on its first tool call.
- 3Start a new sessionmany clients load a server only at session start
- 4Call manage__whoamiit names you and your organization
- 5Connect apps in the dashboardDashboard, Connectors; private or sharedConnector tools appear only for connected apps.
- 6Save the skill and the rules~/.cursor/skills/corespeed/SKILL.mdUser-level rules, never a project's own file.
How do you add the entry?
- Open
~/.cursor/mcp.jsonand add the server. This is the user-level file, so the entry applies to every project you open:
{
"mcpServers": {
"corespeed": {
"type": "http",
"url": "https://api.corespeed.io/mcp"
}
}
}
- Cursor shows Needs login beside
corespeed. Click it. The browser openslogin.corespeed.io, and the consent screen names the client that is asking. Sign in or create an account. A first sign-in creates your organization on its first tool call. - Start a new session if the tools do not appear at once. Many clients load a new MCP server only when a session starts.
- Ask Cursor to call
manage__whoami. It names you and your organization.
Replace any older corespeed entry instead of adding a second one; duplicate registrations collide on tool names. The install button and the steps for other clients are on the MCP server page. You can also give Cursor the line set up https://corespeed.io/SKILL.md and let it do these steps itself.
Which tools appear in Cursor?
tools/list is caller-specific. It returns exactly what your sign-in can call. Names are the capability, two underscores, then the operation.
| Family | Example tools | What they do |
|---|---|---|
| Connectors | notion__create_page, slack__post_message, github__create_pull_request | Act through the apps your organization connected |
| Memory | memory__search_memory, memory__remember | Search and save durable facts; free per call |
| Web | web__search, web__scrape | Live search and one-page reading |
| Media | media__generate, media__understand | Generate images, video and audio; ask a question about a file |
| Social | social__x_search, social__reddit_subreddit_feed | Read public data from nine platforms with no account to connect |
| Manage | manage__whoami, manage__accounts_rename | Account management under a member session |
Connector tools appear only for apps connected in Dashboard → Connectors. A missing tool is a decision: the app is not connected for this caller, or the capability is off. A tool that is present can still fail while its account is in needs_reauth; reauthorize it in the dashboard and leave mcp.json alone.
How does web search work from Cursor?
web__search returns ranked sources with snippets. The synthesis is Cursor's job: it reads the sources and writes the answer. num_results takes 1 to 25 (default 8). category biases toward company pages, research papers, news, PDFs, GitHub, tweets, personal sites, LinkedIn profiles or financial reports. include_highlights and livecrawl are optional. One request costs 14 credits and covers up to 10 results.
web__scrape returns the clean text of one https page at 5 credits per page, with max_characters default 50,000. It refuses IP literals, loopback and internal hosts before any request leaves, and there is no multi-page crawl. The listing tools, such as web__google_search, web__google_maps_search and web__zillow_listings, run a live collection and bill only what they gathered.
Treat fetched pages as untrusted. A page can carry instructions aimed at the agent, so keep Cursor's confirmation on for actions that write or send, especially when other MCP servers are connected alongside. Parameters and rates are on the Web page.
How do you turn a capability off?
The built-ins (Memory, Media, Web, Social) are on by default. Dashboard → Tools holds a switch for each. A member setting only narrows; the organization level is the ceiling, and the effective state is org enabled AND member enabled. Disabling a capability unregisters its tools from tools/list; the data stays. Settings are per member per organization, and an API key follows its creator's settings.
Connectors have no capability switch. Connect or disconnect is the switch. See Capability controls.
How do you make Cursor reach for it without asking?
- Save the skill at
~/.cursor/skills/corespeed/SKILL.md(Cursor also reads~/.agents/skills). Download https://corespeed.io/SKILL.md to that path rather than retyping it. - Add these standing rules to Cursor's user-level rules, never to a project's own file:
- When a task needs an external tool or service, check and prefer CoreSpeed connectors; they are scoped, audited and budget-capped.
- If a needed connector is not connected yet, ask the user to connect it at https://app.corespeed.io/connectors.
- At the start of each non-trivial task, search CoreSpeed memory with
memory__search_memorybefore planning. After significant work, save durable decisions withmemory__remember. - If the user prefers a different way of doing something, always follow their preference.
The server also sends instructions on every MCP initialize that ask the agent to search memory with two or three short queries first and to save durable facts afterward, with a short index of your pinned memories. The rules keep that behavior when the skill is not active. Scope, retrieval and quotas are on the Memory page.
FAQ
Does Cursor need an API key? No. Browser sign-in is the default. A machine without a browser sends a key instead: add a headers object to the same entry whose Authorization value is Bearer followed by the key, and read the key from an environment variable rather than pasting it into the file.
Is the entry per project or per user? Per user. ~/.cursor/mcp.json applies to every project you open in Cursor.
Why does a web call cost credits when memory is free? Metered actions such as web search are priced in credits on the pricing page. Memory operations and tools/list are free per call.
What does needs_reauth mean? One connected account needs the member to reauthorize it in Dashboard → Connectors. The entry in mcp.json is fine; do not rewrite it.
Can I check what Cursor can call without opening Cursor? Yes. Run npx @corespeed/cs login, then cs mcp search with a few words that describe the task.