Odel
BittensorMCP

BittensorMCP

@btmcpUpdated 2w ago

Hosted MCP server for live Bittensor chain reads and self-custodial on-chain writes.

View on GitHub
Server endpointStreamable HTTPOAuthProbed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

BittensorMCP

Live, self-custodial Bittensor chain access for AI agents via MCP.

Endpoint SDK

What is BittensorMCP?

BittensorMCP is a hosted Model Context Protocol (MCP) server that gives AI agents live access to the Bittensor blockchain. Connect any MCP client — Claude, Cursor, ChatGPT, VS Code, Windsurf, Zed, Codex — and query balances, subnets, metagraphs, validators, and Alpha prices in real time.

  • Free reads: 17 tools, no signup, no API key
  • Premium writes: 17 on-chain actions (stake, transfer, register, weights) via self-custodial signing
  • One endpoint: https://bittensormcp.com/api/mcp with Streamable HTTP transport

Why self-custodial?

Your private key never leaves your device.

BittensorMCP uses an A2 two-step signing protocol: the server returns an UNSIGNED_PAYLOAD plus intent_id, you sign it locally with your sr25519 key, and only the signature goes back. The server broadcasts the signed extrinsic — it never sees, stores, or handles your private key.

┌─────────────┐      unsigned payload       ┌─────────────┐
│   Your Key  │  <───────────────────────   │  Bittensor  │
│  (local)    │      sign locally           │    MCP      │
│             │  ───────────────────────>   │   Server    │
└─────────────┘      signature only         └──────┬──────┘
                                                   │
                                            broadcast to
                                                   ▼
                                            ┌─────────────┐
                                            │  Bittensor  │
                                            │   Finney    │
                                            └─────────────┘

Quick start

1. Install the SDK

npm install @bittensormcp/sign

2. Authenticate (self-custody)

import { generateWallet, authenticate } from '@bittensormcp/sign';

const wallet = await generateWallet();
const { token } = await authenticate({
  endpoint: 'https://bittensormcp.com',
  ss58: wallet.ss58,
  signer: wallet.sign
});

3. Connect your MCP client

Claude Code:

claude mcp add --transport http bittensormcp \
  https://bittensormcp.com/api/mcp \
  --header "Authorization: Bearer YOUR_JWT"

Claude Desktop / Cursor / VS Code:

{
  "mcpServers": {
    "bittensormcp": {
      "url": "https://bittensormcp.com/api/mcp",
      "headers": { "Authorization": "Bearer YOUR_JWT" }
    }
  }
}

Clients without native Streamable HTTP:

{
  "mcpServers": {
    "bittensormcp": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://bittensormcp.com/api/mcp",
        "--header", "Authorization:${AUTH_HEADER}"
      ],
      "env": { "AUTH_HEADER": "Bearer YOUR_JWT" }
    }
  }
}

For step-by-step connection instructions for every client, see the Connect Guide.

Tools at a glance

CategoryCountExamples
Free reads17bittensor_balance, bittensor_account, bittensor_subnet_list, bittensor_subnet_metagraph, bittensor_validators, bittensor_dynamic, bittensor_swap_sim, bittensor_block
Premium writes17bittensor_stake_add, bittensor_stake_remove, bittensor_transfer, bittensor_register, bittensor_weights_set, bittensor_subnet_register, bittensor_root_register

All write tools use the A2 self-custody signing flow. Premium activation requires sending TAO to the treasury address (check bittensor_premium_status for the current rate).

License

MIT