Tier 2: configuration verified on 2026-10-21 against the Cursor MCP reference. Cursor was not installed on the verification machine. The mcp.json shape, the authentication options, the fixed callback URLs and the log location below are quoted from the current documentation; the broker endpoints were checked live. Whether the installed Cursor version registers itself automatically against this broker was not verified.
Before you start
- Cursor installed and signed in.
- A browser on the same machine, signed in to the GitHub account that owns the agents.
- A verified human account with the master delegation agreement signed. See the agent quickstart.
- The server URL has no trailing slash:
https://agentregistrar.dev/mcp.
Add the server
Create .cursor/mcp.json in the project, or ~/.cursor/mcp.json for every project. The complete file:
{
"mcpServers": {
"agentregistrar": {
"url": "https://agentregistrar.dev/mcp"
}
}
}A remote entry uses url and no type; Cursor documents stdio, SSE and Streamable HTTP, and this endpoint is Streamable HTTP. Do not add an Authorization header or an auth object unless the sign-in step below tells you to.
Authorize
Open Cursor's MCP settings, either from the Customize page or by editing the file and reloading the window. The server appears in the MCP list. Start it and choose to authenticate; Cursor opens a browser for the account that should own the agents.
Cursor documents two fixed redirect URLs, which matter if the server requires a pre-registered client:
http://localhost:8787/callback
https://www.cursor.com/agents/mcp/oauth/callbackThe desktop app uses the first; Cursor's web and agent surfaces use the second. This broker accepts both shapes: dynamic registration accepts loopback HTTP and HTTPS redirect URIs, and the metadata advertises Client ID Metadata Documents.
If your Cursor version asks for a client ID instead of registering automatically, it needs a pre-registered OAuth client. The broker does not offer self-serve client creation in the portal, so in that case use a client that registers itself, or the generic MCP client path. Do not paste a token into mcp.json.
Verify the connection
The MCP settings list shows the server as connected. In a chat, the server's tools appear under Available Tools; expanding a tool shows its schema. The broker exposes nine tools: identity_register, identity_whoami, identity_signup, identity_prove, identity_record_signup, inbox_list, inbox_read, inbox_wait_for_email and inbox_send.
For a connection failure, open the Output panel, choose MCP Logs in the dropdown and read the initialization error. The log names the failing server and the transport error.
First call
In a chat:
Use the agentregistrar MCP server. Call identity_register with {"name": "cursor-agent", "harness": "cursor"}, then call identity_whoami with no arguments and show the result.Approve each tool call when Cursor asks. identity_register creates the agent and binds it to this OAuth session; identity_whoami then returns the same agent. Register first, because a bare identity_whoami auto-provisions the broker defaults, opencode-agent with harness: "opencode-v2", for every client. Registration is idempotent: the agent bound to the token is returned whatever name you pass later, so a different name needs a new OAuth session.
The shape below is illustrative, with synthetic ids and address. It is the identity_whoami result; identity_register returns the same core profile plus created_at. The nested agent mirror, signup_state and docs are omitted for length.
{
"id": "agt_01JAB2C3D4E5F6G7H8J9K0A1B2",
"name": "cursor-agent",
"slug": "cursor-agent-k0a1b2",
"harness": "cursor",
"email_address": "cursor-agent-k0a1b2@agents.agentregistrar.dev",
"status": "active",
"scopes": ["tos:accept", "signup:free_tier", "inbox:read", "inbox:send"],
"human_owner": { "...": "..." }
}Continue
The full signup is in the agent quickstart. Tool inputs and error codes are in the reference.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| The server does not appear in the list | The file is in the wrong place, or the JSON is invalid | Use .cursor/mcp.json in the project or ~/.cursor/mcp.json; validate the JSON and reload the window |
| The server connects but stays unauthenticated | The sign-in was not completed | Start the server and choose authenticate; complete the browser flow for the intended account |
invalid_client or a request for a client ID |
The client expects a pre-registered OAuth client | Use a client that registers automatically, or the generic path; there is no self-serve client in the broker portal |
| The browser callback fails | The fixed callback http://localhost:8787/callback is blocked or the port is in use |
Free the port, retry, or authenticate from the web surface that uses the HTTPS callback |
| Tools are missing from chat | The server is disabled, or the tool list is cached | Enable the server in Customize, then reload; read MCP Logs for the initialization result |
401 after a working session |
The token expired or was revoked | Authenticate again from the MCP settings |
Cursor stores sign-ins per server entry. Two entries with the same name but different URLs need separate sign-ins.
Remove and reset
Remove the entry from .cursor/mcp.json or ~/.cursor/mcp.json, or toggle the server off in Customize to keep the configuration without connecting. Remove and re-add the entry to force a new registration and a new sign-in. Do not put a token in the file.
Verification record
| Field | Value |
|---|---|
| Client | Not installed on the verification machine |
| Documentation | Cursor MCP reference at cursor.com/docs/context/mcp, read 2026-10-21 |
| Operating system | Linux 7.2.9 aarch64 (documentation review only) |
| Date | 2026-10-21 |
| Configuration shape | .cursor/mcp.json with mcpServers.<name>.url, quoted from the reference |
| Callback URLs | http://localhost:8787/callback and https://www.cursor.com/agents/mcp/oauth/callback, quoted from the reference |
| Live broker | /mcp returns 401 with WWW-Authenticate; DCR accepts loopback and HTTPS redirect URIs |
| Not verified | Install, automatic registration, sign-in, tool list and identity_whoami on a real client |
Tier 1 needs a recorded transcript from an installed client, including the registration method actually used. That transcript does not exist yet.