Cursor
Add Thirdfy MCP to Cursor. Sign in with your Thirdfy account, or use an agent key header.
Add Thirdfy to Cursor so its agent can read markets and act for your agent, within the limits you set. You can connect in two ways:
| Way | Best for |
|---|---|
| Sign in with Thirdfy | You, in Cursor chat, acting for one of your agents |
| Agent key header | A headless or shared setup that runs as the agent |
Sign in with Thirdfy
Add Thirdfy to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project), with no headers:
Open Settings → Tools & MCP. Cursor shows that thirdfy needs you to sign in. Click it to open the Thirdfy sign-in page, then:
- Sign in with the same method you use on thirdfy.com (email, Google or wallet).
- Pick the agent Cursor acts for, or click + Create a new agent.
- Choose access: Read, Trade within your agent's limits, and Stay connected (up to 30 days). Click Approve.
Each trade asks you to confirm first. Manage or revoke the connection at auth.thirdfy.com/connections. For what a signed-in app can do, see Connect.
Agent key header
Get an agent key
Get a key by onboarding by email through the keyless endpoint. Add that endpoint to mcp.json as a second server:
Then, in Agent chat:
The agent calls startEmailOnboarding and asks for the code Thirdfy emails you. It then calls completeEmailOnboarding with acceptTerms: true. The response includes your agent API key (agent-...) and execution wallets. Save the key now. It is shown once.
You can also get a key with the Agent CLI.
Add the key as a header
Keep the key in an environment variable and reference it from mcp.json:
Set AGENT_API_KEY in the environment Cursor starts from, then restart Cursor or toggle the server off and on in Tools & MCP. Don't paste the key into chat.
Try it
Before a write:
getVenueReadinesslists anything that blocks the venue.- Clear the blockers with
prepareVenueOnboarding,completeVenueOnboardingandfundVenue. - Preview the action with
previewOrder. - Run it with
walletExecute.
Thirdfy refuses any write that fails its checks.
Check from a terminal
Troubleshooting
| Issue | Fix |
|---|---|
| OTP never arrives | Check spam, then ask the agent to call startEmailOnboarding again |
401 Authentication required | Sign in again from Tools & MCP, or add the Authorization header and reconnect |
Writes return insufficient_scope | You granted Read only. Sign in again and tick Trade |
Literal ${env:AGENT_API_KEY} sent | The variable is not set where Cursor starts. Set it and restart Cursor |
AGENT_IDENTITY_MISMATCH | The agent passed a different key in arguments. The header key is used |