# Gordon > Gordon is the agentic payment control plane for x402 services. > Agents discover paid APIs, authorize USDC payments on Base, and receive structured receipts — all within owner-defined policy. ## Documentation - [Developer Docs](https://withgordon.ai/docs): Full API reference, quickstart, SDK, MCP setup, policy controls, and agent discovery. - [MCP Quickstart](https://withgordon.ai/docs/mcp): Step-by-step setup for Cursor, VS Code, Claude Desktop, Codex CLI, Windsurf. - [MCP SKILL.md](https://api.withgordon.ai/SKILL.md): Machine-readable capability file for AI agents. Fetch this to learn Gordon's tools, auth format, spend semantics, and failure handling. - [Service Catalog](https://withgordon.ai/services): Browse all x402-enabled services with pricing, operations, and trust status. ## Quick links - [Dashboard](https://withgordon.ai/account): Agents, sessions, audit log, approvals, spend summary. - [Connect](https://withgordon.ai/account/agents): Create an agent, get your API key, configure MCP. - [API base URL](https://api.withgordon.ai): All platform API calls. - [MCP endpoint](https://api.withgordon.ai/mcp): Remote HTTP MCP server. Authentication required — see below. ## Key concepts - **Agent key**: `Bearer gak_pub_...:gak_sec_...` — authenticates all API and MCP calls. Issued once at agent creation; rotate at withgordon.ai/account/agents if lost. - **Micro-units**: All amounts in Gordon micro-units. 1,000,000 units = $1.00 USD. - **Service enablement**: Services are deny-by-default. Enable per agent at withgordon.ai/account/agents. - **settlement_status**: `"confirmed"` = on-chain receipt final. `"failed"` = payment sent, confirmation pending. `null` = no payment required. ## Installing Gordon MCP — prompts for coding agents If an AI agent (Cursor, Claude Code, Codex, Windsurf, etc.) needs to install Gordon MCP, use this prompt: ### Env-var install (recommended) ``` Please install the Gordon MCP server so that YOU (the coding agent I'm currently talking to) can call it. - Server URL: https://api.withgordon.ai/mcp - Transport: Streamable HTTP - Authentication: Bearer token — required. Format: gak_pub_…:gak_sec_… Do NOT ask the user to paste a secret key into the chat, and do NOT write a literal secret into config. Configure the client to read the key from the GORDON_AGENT_KEY environment variable. The Authorization header must be: Bearer ${GORDON_AGENT_KEY} Identify which MCP client harness you are running inside and add Gordon to THAT client's config only: - Cursor: ~/.cursor/mcp.json → "mcpServers": { "gordon": { "type": "streamable-http", "url": "...", "headers": { "Authorization": "Bearer ${GORDON_AGENT_KEY}" } } } - VS Code: .vscode/mcp.json → "servers": { "gordon": { "type": "http", "url": "...", "headers": { "Authorization": "${env:GORDON_AGENT_KEY}" } } } - Claude Code: claude mcp add --transport http gordon https://api.withgordon.ai/mcp --header "Authorization: Bearer ${GORDON_AGENT_KEY}" - Codex CLI: ~/.codex/config.toml → [mcp_servers.gordon] command = "npx", args = ["-y", "mcp-remote", "https://api.withgordon.ai/mcp", "--header", "Authorization: Bearer ${GORDON_AGENT_KEY}"] - Claude Desktop / Zed / Warp: npx mcp-remote https://api.withgordon.ai/mcp --header "Authorization: Bearer ${GORDON_AGENT_KEY}" Tell the user what value to set, whether the client needs a restart, and confirm by calling gordon_list_services once connected. ```