CHEATS

Connect an MCP Client

Point any MCP-compatible client at Cheats' hosted connector so it can search and manage your cheats, Tasks, Brain, and the rest of your account. If you're writing your own integration against the REST endpoints instead, see the API Reference.

On this page:

The endpoint

One URL for every client. Streamable HTTP with standard OAuth discovery:

https://cheats.cloud/mcp

There is no local MCP process to install. Client packaging (Claude Code and Cursor plugins, plus install notes for other hosts) lives in the cheats-mcp repo.

Authentication

  1. Sign in with Cheats (recommended). Leave the client's auth / header field blank. The client discovers Cheats' OAuth endpoints, opens a normal sign-in and consent screen, and you can untick any sections you don't want it to reach. A scoped key is minted and handed over behind the scenes — it also appears under User → API Access, where you can narrow or revoke it later.
  2. Paste an API key. For clients that only accept a bearer token, create a key on the User page and send Authorization: Bearer csk_live_.... Prefer a separate, narrowly-scoped key per client so you can revoke one without touching the others.

Clients

Claude (claude.ai / Desktop / mobile)

Settings → Connectors → Add custom connector. URL as above; leave the header blank for OAuth, or paste a bearer key. claude.ai brokers the connector through your account, so it also works in the mobile apps.

Claude Code

Install the plugin:

/plugin marketplace add AaronTrotter/cheats-mcp
/plugin install cheats@cheats-mcp

Or add the HTTP server directly:

claude mcp add --transport http cheats https://cheats.cloud/mcp

Claude Code needs "type": "http" on URL entries in .mcp.json.

Cursor

Install the Cursor plugin from the cheats-mcp marketplace (or copy cursor-plugin/ into ~/.cursor/plugins/local/cheatsheet and reload), or put this in ~/.cursor/mcp.json:

{
  "mcpServers": {
    "cheats": {
      "url": "https://cheats.cloud/mcp"
    }
  }
}

ChatGPT

Settings → Apps & Connectors → Advanced settings → enable Developer mode → Create connector with the URL above and authentication OAuth. Complete the Cheats consent screen when prompted.

VS Code with GitHub Copilot

Command Palette → MCP: Add Server → HTTP → paste the URL → authenticate when prompted.

Codex / Gemini / Windsurf

Same hosted URL. Prefer native HTTP / Streamable HTTP with OAuth when the client offers it. Example for Gemini CLI:

gemini mcp add --transport http cheats https://cheats.cloud/mcp

If a client only supports stdio, a temporary upstream shim such as npx -y mcp-remote https://cheats.cloud/mcp can bridge to the hosted connector — that shim is not something Cheats ships.

Marketplaces

The product people discover is the hosted connector (one URL, OAuth). Optional IDE plugins only package that same URL for one-click install in Claude Code or Cursor.

  • Claude Connectors Directory (primary) — browse and connect inside Claude (web, Desktop, mobile, Cowork, Claude Code). This is the listing that makes Cheats visible to the most people. Submit/manage at claude.ai/directory/manage as an MCP connector.
  • Cursor Marketplace — install the Cursor plugin from cursor.com/marketplace (publish at /marketplace/publish).
  • cursor.directory — community discovery at cursor.directory.
  • Claude Plugin Directory (optional) — Claude Code one-click install of the same connector; submit as a plugin bundle with path claude-plugin in cheats-mcp.

Until directory listings appear in search, use the client steps above or the plugins in cheats-mcp.

Reference: the MCP Connector

Every path above talks to the same remote MCP server:

URL: https://cheats.cloud/mcp
Header: Authorization: Bearer csk_live_...   (omit for OAuth)

Exposes 47 tools over the same key/quota/tier rules as the REST API. Read-scoped: search_cheats, get_cheat, get_revisions, search_tasks, get_task, search_brain, get_brain, search_pennies, get_penny_summary, search_projects, search_project_tasks, get_project_task, search_hour_projects, search_hour_entries, get_hours_summary, search_due_payers, search_due_services, search_dues, get_due, get_dues_summary, get_guides. Write-scoped: add_cheat, update_cheat, delete_cheat, add_task, update_task, delete_task, add_brain, update_brain, delete_brain, add_penny, update_penny, fill_penny, void_penny, add_project, add_project_task, update_project_task, move_project_task, delete_project_task, add_hour_project, add_hour_entry, update_hour_entry, delete_hour_entry, add_due_payer, add_due_service, add_due, mark_due_paid. All but get_guides map directly to one of the REST endpoints documented on the API Reference page, which also covers the optional X-Cheatsheet-Client header for per-client usage tracking.

The hours tools can read your time log and its totals, log time against a project, correct an entry and delete one, and add a new project to log against. Editing a project's rate, archiving a project and deleting one stay on the Hours page: a rate change prices every hour you log from then on, and deleting a project takes every hour on it with it. An entry keeps the rate it was logged at, so correcting a description from a client never reprices it.

The dues tools can set up a payer and the services they are billed for, read what you are owed, record a one-off charge and mark one paid. Note that adding a service with a start date in the past raises every charge owed since then straight away, which is how you record something you have been billing for a while. What they deliberately cannot do is anything that reaches your client directly or rewrites a price. Freezing a payer and emailing a payment reminder both act on a real client of yours rather than on your own records, and editing a charge sets the price of every future one, so all three stay on the Dues page where you can see who you are doing it to.

The task and brain tools cover two separate sections, not one list with a filter. The task tools reach your Tasks page (note and list); the brain tools reach your Brain page (brief, rules and memory). Neither can see or change the other's items, so an assistant tidying up your notes can never touch the rules you wrote for it, and vice versa.

The tool list is narrowed to what your key can actually use, which is worth knowing because a shorter list makes a client better at picking the right tool. A read-only key is offered only the 21 read tools: the write tools could never do anything but tell you the key lacks write access. A key limited to particular sections (ticked when you create it, or on the consent screen when you sign in, and changeable afterwards from the User page) is offered only those sections' tools, so a read-only key for Cheats alone is offered 3 tools rather than 21. If you just want Cheats available as reference material, that is the tidier connection as well as the safer one.

get_guides returns the brief and rules entries from your Brain. You don't normally need to ask for it: the same guidance is sent to the client automatically as it connects, so an assistant has read your rules before it does anything. The tool is there for re-reading them later in a long session, or after you have changed them.