Skip to main content
Cursor connects with an API key sent as a header. Signing in from Cursor is not available: Citino accepts sign-in only from Claude, ChatGPT and Claude Code.
1

Get a key

An owner or admin makes one on Workspace settings → API keys. The MCP tools only read, so the key needs read scopes only; untick any it does not need, and limit it to the projects you want Cursor to see.
2

Add Citino to your global Cursor configuration

Open ~/.cursor/mcp.json (create it if it does not exist) and add:
The same configuration is on Workspace settings → MCP endpoint, with a Copy button. If the file already has other servers, add citino beside them inside mcpServers.
3

Give Cursor the key

${env:CITINO_API_KEY} reads the key from Cursor’s own environment. A Cursor opened from the Dock or the Start menu does not share the environment of your terminal, so either start Cursor from a terminal where CITINO_API_KEY is set, or put the key itself in place of ${env:CITINO_API_KEY} in this file.
4

Check it is on

In Cursor’s MCP settings, Citino should appear with its tools listed. Then ask Cursor about your data in a chat.
Use the global file in your home folder, never a project’s own .cursor/mcp.json. A project’s file is usually committed, and a key written into it is a key published with your code.

If it does not connect

  • A 401: the key is wrong, revoked or expired, or the header did not reach Cursor (the environment variable was empty when Cursor started). Check the key on Workspace settings → API keys.
  • A 403 on one tool: the key lacks that tool’s scope. Tools lists the scope each one needs.
  • To stop Cursor reading Citino, revoke the key, or remove citino from the file.

Tools

Every tool and the scope it needs.

Authentication

Making, limiting and revoking keys.

Claude Code

The same server from the terminal.

How data is handled

What reaches Cursor, and what never does.