RoamiRoami

Connect Cursor to Your Blog With MCP

Key takeawaysCursor reads MCP servers from an mcp.json file, either per project (.cursor/mcp.json) or globally (~/.cursor/mcp.json).A remote server needs a url...

19 October 2026 · 4 min read

By

Connect Cursor to Your Blog With MCP

Key takeaways

  • Cursor reads MCP servers from an mcp.json file, either per project (.cursor/mcp.json) or globally (~/.cursor/mcp.json).
  • A remote server needs a url entry instead of a command.
  • After saving, confirm the tools show up under Available Tools. If they don't, the MCP Logs panel tells you why.
  • Whatever the client, Roami agents can draft and edit but cannot publish. That stays true in Cursor.

Roami connect-agent screen

Most people think of Cursor as a code editor. It is also a perfectly good place to run a blog if your posts already live next to your code: docs, changelogs, build logs. Because Cursor speaks MCP, the same agent that edits your repo can read your content library and write drafts into it. The short version of this setup lives on the Roami for Cursor page.

Where does the Cursor MCP config live?

Cursor's docs describe two locations (Cursor MCP docs):

ScopeFileUse it for
Project.cursor/mcp.jsonA blog that belongs to one repo
Global~/.cursor/mcp.jsonTools you want in every workspace

If you write about one product from one repo, use the project file. If you run a personal blog from many workspaces, use the global one.

What does the Roami entry look like?

Remote servers use url where local ones use command. Cursor's documented shape is:

{
  "mcpServers": {
    "roami": {
      "url": "https://mcp.roami.xyz/sse"
    }
  }
}

Roami's endpoint is https://mcp.roami.xyz/sse, the same one you paste into Claude. Cursor's docs describe url entries for HTTP or SSE servers. They also say to keep secrets in environment variables (${env:NAME}) rather than pasting them into the file. For Roami you should not need a secret in the file at all, because access is granted by signing in rather than by pasting a long-lived key.

Check on your machine: the exact sign-in prompt Cursor shows for Roami depends on your Cursor version. Cursor's documentation covers OAuth for servers that give you a fixed client ID, which is a different case. If a browser sign-in window opens, complete it. If nothing happens, see the troubleshooting section below.

Step by step

#Step
1Decide project or global scope
2Create the file if it doesn't exist and add the roami entry above
3Save, and make sure the server is toggled on (Customize in the sidebar)
4Check Available Tools for the Roami tools
5In chat: "List my Roami projects."
6Name the project in later prompts

How do I know it worked?

Cursor's docs give two checks:

  1. Open the MCP list from Customize in the sidebar, where servers can be toggled on or off, and look for the Roami tools under Available Tools.
  2. If anything fails, open the Output panel (Cmd+Shift+U on macOS, Ctrl+Shift+U on Windows or Linux), choose MCP Logs, and read the initialization or connection error.

Then run a smoke test in the Cursor chat:

List my Roami projects.

A list of your projects means the connection works.

What should my first real prompt be?

Start read-only, then draft:

  1. "Search my Roami content for posts about <topic> and tell me which ones overlap."
  2. "Draft a post titled <title> in the <project> project, using the outline in docs/launch-notes.md."

Cursor can read the file, write the body, and call Roami to create the draft. The draft lands in your CMS with status DRAFT. You open it, edit it and publish it yourself.

A docs-to-blog workflow

Repo fileBecomes
CHANGELOG.mdA build-log post (see Roami Build Log)
docs/feature-x.mdA how-to draft
notes/launch.mdAn announcement draft

Ask Cursor to use only the contents of the file and to list questions it can't answer from it.

Why can't Cursor publish?

Because Roami enforces that at the API and MCP layers, not in a prompt. An agent that asks to publish gets: 403 Agents can draft and edit. Only you can publish. Read Why AI Agents Should Not Publish and The Publish Gate.

Troubleshooting

SymptomCheck
No tools listedJSON valid? File in the right folder? Server toggled on?
Connection error in MCP LogsURL exact, including /sse
Works in Claude but not CursorEach client signs in separately; complete the sign-in in Cursor too
Wrong projectAlways name the project in your prompt

Frequently asked questions

Project file or global file? Project if the blog belongs to one repo, global if you write from many.

Do I need an API key? Not for the flow described here. Do not paste secrets into a file you commit.

Can Cursor edit my published posts? It can edit drafts. Changes to live content go through you.

Try it

Start with Roami, connect Cursor, and ask it to list your projects. Then read Connect Claude to Your Blog With MCP if you also use Claude, and 10 Starter Prompts for prompts that work in any client.

Sources

Next step: connect an agent, or audit your archive first.

Drafted with an agent in Roami, edited and published by Aaghran. This blog runs on Roami.