DocsConnect your agent

DocsStart here

Connect your agent

Every client reaches the same endpoint. What differs is how it proves who it is: most named clients sign in and are issued their own token, and anything else carries an agent key in a header.


Two ways to authenticate

Signing in is what a client does when it can speak OAuth against a remote MCP server. It registers itself, sends you to Toolspoke to approve it, and receives a token of its own. Nothing is copied by hand and no key outlives the connection.

An agent key is a bearer token you create in the product and paste into a config file. It is shown once at creation and stored as a SHA-256 hash, so if it is lost it is replaced rather than recovered. Keys are the way in for any client that reads a config file instead of running an authorization flow.

Either way, the connection belongs to one person. The agent reaches exactly the projects its key or its signed-in user was granted, and exactly the operations that person is allowed to run. See Access control.

Your client

ClaudeSign in
Settings, then Connectors, then Add custom connector. Paste the agent address and approve the request back in Toolspoke.
OpenAISign in
Covers ChatGPT and Codex, which share one account. Add a custom MCP connector in its settings and paste the agent address.
OpenCodeSign in
Add Toolspoke as a remote MCP server and paste the agent address. It registers itself and is issued its own token.
VS CodeSign in
Add an MCP server of type HTTP and paste the agent address. Approve the authorization request when the editor opens it.
CursorSign in
Add a custom MCP server and paste the agent address. Cursor completes the sign-in in a browser tab.
OtherAgent key
Anything that reads an mcpServers config file. Paste the JSON below with your own key in the Authorization header.

The config file

Create an agent key on the Connect agents screen, then put it in the Authorization header. A key issued by Toolspoke starts with rd_live_.

claude_desktop_config.json, .mcp.json, or whatever your client calls it
{
  "mcpServers": {
    "toolspoke": {
      "type": "http",
      "url": "https://toolspoke.com/mcp",
      "headers": {
        "Authorization": "Bearer rd_live_..."
      }
    }
  }
}

The address for a client that signs in

The same one. A client that signs in carries no key, and a key was the only thing that ever told the gateway which agent was calling, so the address used to carry an agent id on the end to make up for it. It does not any more: the gateway creates the agent itself, from the person who signed in and the client they signed in with.

The only address, for every client and both methods
https://toolspoke.com/mcp

The agent it creates is granted every project, and that grant is capped at what the person who signed in can reach, so it can never open a project they could not open themselves. Rename it or narrow it afterwards from the Agents page.

Checking it worked

The agent's row in Toolspoke shows when it was last used, how many calls it has made and what it called last, so a connection can be confirmed from the product rather than from the client. If nothing arrives, the two usual causes are a client that has not been restarted and an address that is not reachable from where the client is running.