Subtensor MCP
Server Details
Subtensor blockchain reference — events, calls, storage, constants, errors for all 28 active pallets
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Score is being calculated.
Available Tools
7 toolssubtensor_decodeDecode SCALE dataRead-onlyIdempotentInspect
Decode SCALE-encoded hex into labelled fields with RAO→TAO and hex→SS58 conversions applied. Omit pallet and name to identify an event or call from its two-byte (pallet index, item index) prefix — the usual case when you have bytes and want to know what they are.
| Name | Required | Description | Default |
|---|---|---|---|
| hex | Yes | SCALE-encoded bytes as hex, with or without a 0x prefix. Whitespace is ignored. | |
| kind | No | What the bytes are: 'event' (default), 'call', or 'value' for a bare value of a given type | |
| name | No | Event or call name. Must be given together with "pallet". | |
| type | No | For kind="value": the SCALE type to decode against, e.g. "u64", "AccountId", "Vec<u16>", "Option<u32>" | |
| format | No | Response format: 'text' (compact, default) or 'json' (structured) | |
| pallet | No | Pallet of the event or call. Omit together with "name" to identify the item from the byte prefix instead. |
Output Schema
| Name | Required | Description |
|---|---|---|
| kind | Yes | |
| input | Yes | |
| fields | Yes | |
| trailing_bytes | Yes |
subtensor_explainExplain Subtensor conceptsRead-onlyIdempotentInspect
Understand Bittensor concepts, workflows, mechanisms, runtime APIs, runtime errors, extrinsic format, or get code examples.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Topic-specific name: concept name ('staking'), workflow ID ('add-stake'), mechanism ID ('yuma-consensus'), runtime API name ('NeuronInfoRuntimeApi'), or item name for examples | |
| topic | Yes | What to explain | |
| format | No | Response format: 'text' (compact, default) or 'json' (structured) | |
| pallet | No | Pallet name — required for examples (e.g., 'SubtensorModule') | |
| language | No | For examples: filter to one language (overrides session preference) | |
| node_url | No | For examples: WebSocket endpoint override | |
| enum_slug | No | For runtime_errors: get a specific error enum | |
| item_type | No | For examples: type of item to generate code for | |
| node_type | No | For examples: 'lite' (current state) or 'archive' (historical patterns) | |
| preferences | No | Preferences handle from subtensor_preferences(action="set"). Carries language/node_url/node_type without a session. Explicit arguments on this call take precedence over the handle. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
subtensor_exploreExplore relationships and changelogsRead-onlyIdempotentInspect
Explore relationships, version history, removed items, changelogs, and migration guides between runtime versions.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Item name (e.g., 'StakeAdded', 'add_stake', 'TotalStake') | |
| type | No | Item type — for relationships (event/call/storage/error), for removed (all/pallet/event/call/storage/constant/error) | |
| limit | No | Max items per page (default: 10) | |
| topic | Yes | What to explore | |
| cursor | No | Pagination cursor from previous response | |
| format | No | Response format: 'text' (compact, default) or 'json' (structured) | |
| pallet | No | Pallet name (e.g., 'SubtensorModule') | |
| version | No | For versions: look up a specific version | |
| to_version | No | For changelog/migration: end version | |
| from_version | No | For changelog/migration: start version |
Output Schema
| Name | Required | Description |
|---|---|---|
| topic | Yes | Explore topic, mirrors the request topic |
subtensor_listList Subtensor itemsRead-onlyIdempotentInspect
Browse items by category: pallets, events, calls, storage, constants, errors, types, runtime APIs, RPC methods, protocol accounts, EVM precompiles, mechanisms, workflows, hyperparameters, cli_flags, build_features, chain_specs, or env_vars.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | For types: filter by type kind | |
| role | No | Filter calls by required role (only applies when category=calls) | |
| limit | No | Max items per page (default: 10) | |
| cursor | No | Pagination cursor from previous response | |
| domain | No | For mechanisms: filter by domain | |
| format | No | Response format: 'text' (compact, default) or 'json' (structured) | |
| pallet | No | Pallet name — required for events/calls/storage/constants/errors (e.g., 'SubtensorModule'). For category='rpc_methods' this filters by RPC namespace instead (e.g., 'state', 'subtensor'). | |
| search | No | For types: search by name | |
| context | No | For cli_flags/build_features: filter by usage context | |
| category | Yes | Category of items to list | |
| flag_category | No | For cli_flags: filter by flag category (chain, sync, networking, rpc, metrics, runtime, subtensor) | |
| include_removed | No | Include removed/historical items (default: false) |
Output Schema
| Name | Required | Description |
|---|---|---|
| category | Yes | Item category, mirrors the request category |
subtensor_lookupLook up Subtensor itemRead-onlyIdempotentInspect
Get detailed info about a specific pallet, event, call, storage item, constant, error, SCALE type, RPC method, protocol account, or EVM precompile. Accepts URN identifiers with optional #field.path drilling.
| Name | Required | Description | Default |
|---|---|---|---|
| sub | No | For type="account": derive a sub-account. A number is a netuid or crowdloan id; a string is an 8-byte tag such as "beta/esc". Index 0 collapses onto the base address. | |
| urn | No | URN identifier (e.g., 'subtensor:event:SubtensorModule.StakeAdded', 'subtensor:storage:System.Account#data.free', 'subtensor:api:SwapRuntimeApi.sim_swap_tao_for_alpha', 'subtensor:account:SubtensorModule.SubtensorPalletId#64', 'subtensor:precompile:StakingV2'). `subtensor:runtime_api:...` is accepted as an alias for `subtensor:api:...`. Supports field-path drilling with # for event/call/storage/type items (for account items, #fragment is a sub-index instead). Alternative to type+pallet+name. Takes precedence if both provided. | |
| name | No | Item name (e.g., 'SubtensorModule', 'StakeAdded', 'add_stake', 'AccountId32', 'pruning', 'pow-faucet') or type ID number. For type="account": the declaring key ('SubtensorModule.SubtensorPalletId'). For type="precompile": a name ('StakingV2') or 0x address. | |
| type | No | What kind of item to look up | |
| format | No | Response format: 'text' (compact, default) or 'json' (structured) | |
| pallet | No | Pallet name — required for event/call/storage/constant/error lookups (e.g., 'SubtensorModule') | |
| address | No | For type="account": an SS58 address to identify. Returns which protocol account it is, including the sub-index, or reports that it is an ordinary wallet. | |
| include | No | For pallet lookup: filter to a specific item type with descriptions | |
| language | No | Field name casing for your language. TypeScript shows camelCase (tickLow), others show snake_case (tick_low). Overrides session preference. | |
| preferences | No | Preferences handle from subtensor_preferences(action="set"). Carries language/node_url/node_type without a session. Explicit arguments on this call take precedence over the handle. | |
| include_history | No | Include full argument signatures for each version range (events/calls only) | |
| include_removed | No | Include removed/historical items (default: false) |
Output Schema
| Name | Required | Description |
|---|---|---|
| name | Yes | |
| type | Yes | Item kind, mirrors the request type |
| pallet | No |
subtensor_preferencesSession preferencesInspect
Get or set session preferences for language, node URL, and node type. Language affects field name casing (TypeScript=camelCase, others=snake_case) and code examples.
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Action to perform (default: 'get') | |
| format | No | Response format: 'text' (compact, default) or 'json' (structured) | |
| language | No | For set: preferred language. Affects field name casing in lookups (TypeScript=camelCase, others=snake_case) and code examples. | |
| node_url | No | For set: WebSocket endpoint for generated code | |
| node_type | No | For set: 'lite' (current state) or 'archive' (historical patterns) | |
| preferences | No | Preferences handle from subtensor_preferences(action="set"). Carries language/node_url/node_type without a session. Explicit arguments on this call take precedence over the handle. |
Output Schema
| Name | Required | Description |
|---|---|---|
| language | No | |
| node_url | No | |
| node_type | Yes | |
| preferences_handle | Yes | Pass back as `preferences` on later calls to reapply these. |
subtensor_searchSearch SubtensorRead-onlyIdempotentInspect
Search across all Subtensor pallets, events, calls, storage, constants, and errors by keyword.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Filter by item type (default: all) | |
| limit | No | Max results per page (default: 10, max: 50) | |
| query | Yes | Search query (e.g., 'stake', 'neuron', 'emission') | |
| cursor | No | Pagination cursor from previous response | |
| format | No | Response format: 'text' (compact, default) or 'json' (structured) | |
| status | No | Filter by item status (default: 'active') |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| total | Yes | |
| results | Yes | |
| nextCursor | No | |
| _removed_hint | No | |
| status_filter | Yes | |
| removed_hidden | No |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
7 tool updates
- First observed
subtensor_decode - First observed
subtensor_explain - First observed
subtensor_explore - First observed
subtensor_list - First observed
subtensor_lookup - First observed
subtensor_preferences - First observed
subtensor_search
Related MCP Connectors
Live operational + integration registry for Bittensor subnets: APIs, schemas, health.
TRON blockchain: accounts, TRC20 tokens, staking, contracts, resources and transaction builders
Tenzro Ledger MCP: wallet, identity, payments, inference, staking, bridges, verification, agents.
Blockchain data across 100+ chains: token prices, NFTs, transfers, simulation, traces, Solana DAS
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceBittensor subnet intelligence — mineability scores, 1-click deploy scripts, momentum scoring, whale flows, institutional tracking for all 128 subnets. 18 API endpoints. Free tier.-
- AlicenseNot gradedqualityAmaintenanceLocal-first Sui review and evidence layer for AI clients. It enables users to review and approve Sui transactions in their own wallet after AI requests, without the AI having signing authority.690 npmMIT

Macrocosmos MCPofficial
AlicenseAqualityAmaintenanceEnables real-time queries and large-scale data collection from X (Twitter) and Reddit via the Model Context Protocol, powered by Bittensor's Data Universe.723 PyPI29MIT- AlicenseNot gradedqualityDmaintenanceCrypto intelligence MCP: 104 tools for market data, ML signals, on-chain analytics, derivatives, and Bittensor subnets. Pay-per-call via x402 USDC on Base/Solana/Algorand/Stellar or $9.99/mo API key.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.