Cursor’s MCP support matches Claude Desktop’s, so wiring in Artifacta is a single config block — paste it, restart, and the tools appear in Cursor’s inline AI chat. This page is for the “Daniel, Startup Engineer” persona who lives in Cursor and wants artifact storage without leaving the editor.Documentation Index
Fetch the complete documentation index at: https://docs.artifacta.io/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Node.js 20 or newer (
node --version). The@artifacta-mcp/mcppackage’senginesfield rejects older versions before any tool runs. - An Artifacta API key from the API keys
page — shape
ak_live_plus 32 alphanumeric characters. - Cursor with MCP support (Settings → MCP / Tools & Integrations).
npx fetches and runs the published server on demand — nothing to install
globally.
Canonical config
Cursor reads MCP servers frommcp.json. Use the global file for every
project or a project-scoped file for one repo:
- Global:
~/.cursor/mcp.json(create it if it does not exist). - Project:
.cursor/mcp.jsonat the repo root.
mcpServers block is close to Claude Desktop’s, with one mandatory
difference: each STDIO server entry must declare "type": "stdio". Omitting
it leaves the server unregistered (or stuck in a red state) in current Cursor
builds even when the rest of the block is valid:
~/.cursor/mcp.json
ak_live_…
key. Save the file, then in Cursor open Settings → MCP and confirm the
artifacta server shows a green / connected status (toggle it off and on, or
restart Cursor, if it does not pick up the new file).
The snippet leaves
@artifacta-mcp/mcp unpinned so npx resolves the latest
published release on restart — patch and security fixes roll out without a
config edit. Pin a version (e.g. @artifacta-mcp/mcp@1.0.0) only for a frozen,
managed install.Optional flags
Both flags go in the sameargs array, after the package name.
--allow-path — upload local files
store_artifact can stream a file from disk (path argument). The
path-confinement engine
defaults its allow-list to the server’s working directory; add the directory
your generated files land in:
~/.cursor/mcp.json
--allow-destructive — expose destructive tools
Cursor does not advertise MCP write confirmations, so three tools —
create_download_link (mints a public dl.artifacta.io/lnk_… URL),
delete_artifact (soft-deletes by id), and seal_session (marks a session
irreversible — no unseal) — are hidden from tools/list by default.
Add --allow-destructive to expose them:
~/.cursor/mcp.json
First call: the whoami smoke test
After Cursor shows the artifacta server connected:
- Configure the canonical config with your real key.
- Restart Cursor (or toggle the server off/on in Settings → MCP).
-
In the inline AI chat (agent mode), ask:
“What’s my Artifacta plan?”
-
Expected: the agent invokes the
whoamitool and reports your tenant info — plan tier, storage usage, request quota — in the chat:whoami response
unauthorized, see
Troubleshooting.
Smoke-test record
Cursor’s MCP config format has shifted between releases (notably the addition of"type": "stdio" as a required field on STDIO server entries), so the
snippets above must be re-checked against the live Cursor build at each docs
update and signed off by the operator.
| Field | Value |
|---|---|
| Config format last reviewed against Cursor MCP docs | 2026-05-29 (file locations + mcpServers shape + required "type": "stdio" on STDIO entries) |
| Live smoke-test Cursor version | [operator: fill version at HITL sign-off] |
| Live smoke-test date | [operator: fill date at HITL sign-off] |
| Result | [operator: PASS / FAIL recorded at sign-off] |
If a future Cursor release changes the MCP config shape (e.g. a new key name or
file location), update the canonical config and this table.
If the divergence from the Claude Desktop format is large enough to need a
separate package configuration mode, that is a follow-up task — not a docs-only
change.
Troubleshooting
See the dedicated Troubleshooting page, which coversunauthorized on every call, npx not found (Node not installed), an empty
tool list (the server failed to start), and destructive tools missing from
tools/list (add --allow-destructive).