Find a subnet for my app
One MCP call to turn a plain-language task into candidate Bittensor subnets, with the follow-up call that gets you calling code — and a real, executed transcript showing why you should verify, not trust, the ranking.
Last updated
Goal: go from "I need something that can do X" to a specific subnet's base URL and auth requirements, without reading through 129 subnet profiles by hand.
The sequence
1. find_subnet_for_task { task } — goal-matched, callable-only subnets, ranked by intent
2. how_do_i_call { netuid } — concrete call instructions for the one you pickfind_subnet_for_task only returns subnets that already expose a callable API (subnet-api /
openapi / sse / data-artifact) — a subnet with no such surface can't appear in these results
at all, so every hit is something you can actually call today, not just a subnet that's thematically
related.
What each output means
find_subnet_for_task—relevance(0–1) is a similarity score, not a guarantee of fit; read thename/categoriesyourself before committing.integration_readinessandhealthare the two fields worth weighing against relevance — a lower-relevance hit withreadiness: 100andhealth: "ok"can be a better bet than a higher-relevance hit that's flaky.how_do_i_call— returns the base URL, auth requirement, and a concrete example for the netuid you picked. Always prefer itsbase_urlover anything a subnet's own docs claim, per every surface's own curated-vs-upstream precedence.
Failure branch
Semantic ranking is meaning-based, not keyword-based — it can rank an adjacent capability above an
exact one when the exact one is thin on public description text (see the transcript below). If the
top hits don't look right, don't assume there's no match: try search_subnets (plain keyword match,
no AI layer needed) with a narrower term, or widen find_subnet_for_task's own limit past the
default to see further down the ranking.
Executed transcript ("generate an image from a text prompt", 2026-07-28)
Real output, condensed — and a real lesson
This is the actual top-3 result for an image-generation task, run live. None of the three are an obvious image-generation subnet by name — worth reading as a caution about trusting relevance scores at face value, not as a broken example.
// 1. find_subnet_for_task { task: "generate an image from a text prompt" }
{
"discovery": "semantic",
"count": 3,
"results": [
{
"netuid": 28,
"name": "gm",
"relevance": 0.6593,
"integration_readiness": 93,
"categories": ["llm-inference", "marketplace", "tee"],
"health": "ok"
},
{
"netuid": 108,
"name": "TalkHead",
"relevance": 0.6521,
"integration_readiness": 83,
"health": "ok"
},
{
"netuid": 118,
"name": "Ditto",
"relevance": 0.6392,
"integration_readiness": 100,
"categories": ["agent-memory"],
"health": "ok"
}
]
}
// 2. how_do_i_call { netuid: 118 } (picking the highest-readiness hit to inspect)
// -> base_url, auth_required, and a worked example for Ditto's own APIReading this one: relevance scores cluster tightly (0.64–0.66) across three subnets whose
category tags — LLM inference, agent memory — don't obviously scream "image generation." That's the
real lesson: a task description without a strong keyword match against any one subnet's own
description text can still return something, ranked by loose semantic proximity rather than a
confident match. Before integrating, read how_do_i_call's actual example payload for whichever
netuid you pick — don't assume the top relevance score is a functional guarantee.
Tools used
find_subnet_for_task and how_do_i_call are MCP-native (discovery/recipe tools, no dedicated REST
mirror) — see MCP tools for the full list, or semantic_search /
search_subnets for the underlying search primitives
directly. This exact sequence is also registered as the find_subnet_for_task MCP prompt
(prompts/get name="find_subnet_for_task" arguments={ task }) — an agent whose harness surfaces
prompts natively gets this playbook without reading this page at all.
Monitor my validator
Three MCP tool calls to check a validator's current standing, its 30-day trend, and who's actually staking to it — with a real, executed transcript.
Audit an account's history
Three MCP tool calls to reconstruct what one SS58 address has actually done on-chain — activity summary, native transfers, and stake re-delegation — with a real, executed transcript.