Cursor · MCP
Cursor wrote the HTML.
Deliverd handles everyone else.
Hosting, identity, permissions, versions and delivery are the same problem every time, and none of it is what you opened the editor to do. Add one entry to your MCP config and it stops being your problem.
No card required · Unlimited viewers · Secure by default
The situation
What happens to Cursor's output today
A dead file in a chat window
Cursor produces a genuinely good single-file report. It then sits in your project directory, and sharing it means finding somewhere to put it.
Static hosting is the wrong shape
The quick options are public. A report with a customer's numbers in it cannot live on a URL that anyone who guesses it can read.
The feedback never gets back to the code
Comments arrive in Slack, out of context, describing a chart by roughly where it was. Anchored to the passage they are about, they are something your agent can act on.
Setup
Connect Cursor
Turn the HTML Cursor writes into a URL you can send, behind your organisation's sign-in.
- 1.
Add it to ~/.cursor/mcp.json
{ "mcpServers": { "deliverd": { "type": "http", "url": "https://deliverd.dev/api/mcp" } } }Keep any servers already listed there — replacing the file removes them.
- 2.
Reload Cursor
Then approve the connection in your browser.
No token is written anywhere. Deliverd implements the MCP authorization spec, so the client registers itself and you approve it in a browser — and removing someone from your organisation cuts their connection off at once, rather than whenever a token happens to expire.
What you get
Once it is connected
Everything below is what happens to a report after Cursor publishes it.
A URL instead of a file
The report lands on an address you can send. It stays put, so a link you shared last month still opens the report — not a stale copy of it.
Behind your own sign-in
Readers authenticate with the identity your organisation already uses, including SAML single sign-on. Nobody gets a password to remember or a file to lose.
You choose who, in plain English
“Finance team”, “Sarah Jones”, “everyone”. Ambiguous phrases come back as a list to pick from rather than a guess, so a board pack cannot land in the wrong inbox.
Every version kept
Publishing again updates the same URL and keeps what was there before. You can see what changed, and roll back if the new one is wrong.
Comments on the passage, not the page
A reader selects a sentence and comments on it. Your agent can read those threads, fix what they point at, and mark them resolved.
A record of who opened it
Views, versions, access changes and share links are all written to an audit trail you can export.
Questions
Cursor and Deliverd.
Where does the config go?
~/.cursor/mcp.json for every project, or .cursor/mcp.json inside one. Merge the entry into what is already there — replacing the file removes the other servers you had configured.
Do I have to paste a token into the file?
No, and you should not. The entry holds only a URL; Cursor registers itself and you approve the connection in a browser. A pasted token is a long-lived credential sitting in a plaintext file in your home directory.
Can I publish a multi-file bundle?
Yes — a folder or a zip with an index.html, up to 500 files. Use relative asset paths and they resolve correctly once published.
What about the report's own libraries?
Scripts from the major CDNs are fetched and bundled into the report when it is published, so it keeps working even if the CDN does not. Anything you inline yourself always works.
Stop sending Cursor’s output around as files.
Publish it to an address instead, and let the people who need it open it with the sign-in they already have.