NameCatcher
NameCatcher provides tools to evaluate, compare, and price collectible Telegram usernames using real Fragment marketplace data.
score_name: Score a single username (0–100), get a quality band (premium/strong/medium/weak), a fair price estimate in GRAM, and a positioning thesis explaining why the name works and for whom.compare_names: Submit up to 20 candidate usernames at once and receive them ranked by namability score — ideal for choosing the best name for a brand, bot, channel, or investment portfolio.check_fragment_ask: Compare a Fragment marketplace asking price against the name's estimated fair value; a fair/ask ratio ≥ 1.2 signals the lot is priced below its class valuation, helping you spot underpriced deals.
Enables evaluation and comparison of collectible Telegram usernames, including scoring, fair price estimation, and pre-purchase checks against Fragment market data.
Provides username valuation and market analysis for Telegram usernames on the TON blockchain, leveraging Fragment market data for investment decisions.
NameCatcher — username intelligence for AI agents
Score and value collectible Telegram usernames: namability score (0–100) validated against 111k+ real Fragment sales, fair price estimation in GRAM, and positioning theses. Free public API — no key, no wallet, no setup.
Three ways to plug in, thinnest first:
Layer | For | Install |
any agent that can | nothing | |
Claude Code / skills-compatible agents |
| |
Claude Desktop/Code, any MCP client |
|
Built by NameCatcher — the Telegram mini app for username investors: mint catching, market analytics, portfolio, value passports.
Quick try
curl -s "https://api-namecatcher.rocketname.com/public/score/wearlab?lang=en" | jq{
"username": "wearlab",
"score": 67,
"band": "strong",
"fair_price_ton": 400,
"thesis": "A crisp fusion of \"wear\" and \"lab\" …",
"lang": "en",
"analysis_url": "https://t.me/NameCatcherBot?startapp=name_wearlab__pub_api",
"fragment_url": "https://fragment.com/username/wearlab"
}Related MCP server: NoesisAPI
API reference
One endpoint, no auth:
GET https://api-namecatcher.rocketname.com/public/score/{name}?lang={en|ru}Parameters
Param | In | Required | Description |
| path | yes | Username without |
| query | no |
|
Response fields
Field | Type | Description |
| string | Canonical (lowercase) username |
| int 0–100 | Namability — quality of the name as a brandable asset. Market-validated: names scoring 90+ sell for a multiple of 80–89 names |
| string |
|
| number | null | Class-based fair price estimate in GRAM (length × score class) |
| string | null | Short positioning summary (why the name works, for whom). Present only for names already analyzed — |
| string | Language the thesis was returned in |
| string | Full breakdown in the NameCatcher mini app |
| string | The name's page on Fragment (live market status, buy/bid) |
Errors
Status | Body | Meaning |
400 |
| Not a valid username string |
400 |
| Valid string, but not scorable as a collectible (e.g. too short) |
429 |
| Over 60 req/min per IP — wait |
429 |
| Over 1,000 req/day per IP |
Rate limits
60 requests/min and 1,000 requests/day per IP. Generous for agent workflows (evaluating and comparing dozens of names); not enough for bulk scraping — that's intentional. Need more for a legitimate use case? Ping @BrandEvangelist.
curl cookbook
# Score one name (Russian thesis)
curl -s "https://api-namecatcher.rocketname.com/public/score/morya?lang=ru" | jq '{score, band, fair_price_ton}'
# Compare candidates: pick the best of three
for n in pulsefit traintrack fitwave; do
curl -s "https://api-namecatcher.rocketname.com/public/score/$n" | jq -c '{username, score, band}'
done | sort -t: -k2 -rn
# Pre-purchase check: is a 300 GRAM ask below class valuation?
curl -s "https://api-namecatcher.rocketname.com/public/score/vault" \
| jq '{score, fair_price_ton, below_class: (.fair_price_ton / 300 >= 1.2)}'Agent Skill
The names/ton-usernames skill teaches an agent the full workflow: single-name evaluation, candidate comparison, and pre-purchase checks against Fragment asks.
npx skills add productmap/namecatcher-skills --skill ton-usernames
# or manually:
cp -r names/ton-usernames ~/.claude/skills/A PR adding this skill to the official ton-org/skills is open.
MCP server
A thin stdio bridge over the same API — for Claude Desktop, Claude Code, and any MCP client. No key needed. Published on npm as namecatcher-mcp (GitHub install npx -y github:productmap/namecatcher-skills also works).
Remote endpoint (Streamable HTTP) — same three tools, zero install:
https://mcp-namecatcher.rocketname.com/mcpclaude mcp add --transport http namecatcher https://mcp-namecatcher.rocketname.com/mcpClaude Code:
claude mcp add namecatcher -- npx -y namecatcher-mcpClaude Desktop / other MCP clients (mcpServers config):
{
"mcpServers": {
"namecatcher": {
"command": "npx",
"args": ["-y", "namecatcher-mcp"]
}
}
}Tools
Tool | Description | Arguments |
| Score one username: namability, band, fair price, thesis |
|
| Score up to 20 candidates and rank them by score |
|
| Compare a Fragment asking price to the class valuation → fair/ask ratio + verdict |
|
Environment: NAMECATCHER_API_ORIGIN (optional) — override the API origin.
Notes for builders
The score measures naming quality, deterministic per model version — safe to cache
It is not demand for a specific lot: always check the live Fragment price before money decisions
Pairs naturally with TON wallet tooling (@ton/mcp): evaluate → then buy
Links
🤖 Bot & mini app: @NameCatcherBot
🛒 Username market: fragment.com
🧩 TON MCP ecosystem: mcp.ton.org
License
MIT
Available Tools
3 toolscheck_fragment_askA
Pre-purchase check: compare a Fragment asking price against the name's class valuation (fair price). Returns the fair/ask ratio — ratio >= 1.2 means the lot is priced below its class valuation.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Username without @ | |
| ask_ton | Yes | Asking price / current bid in GRAM (TON) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It explains the output (fair/ask ratio) and provides a threshold interpretation (>=1.2 means underpriced). However, it does not disclose error cases (e.g., nonexistent name), side effects, authentication needs, or rate limits. The basic behavior is clear but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise: two short sentences that front-load the purpose and immediately provide actionable output interpretation. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's straightforward nature (two parameters, no nested objects, no output schema), the description adequately explains the return value and its interpretation. It does not explain what 'class valuation' is, but that is a domain concept the agent might infer. The context is sufficient for a simple check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. The description adds context about 'Fragment asking price' and 'class valuation', but does not clarify what 'class valuation' means or how it is computed. Since schema already covers parameter details, the description provides marginal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: comparing a Fragment asking price against the name's class valuation and returning a ratio. It uses specific verbs ('compare', 'returns') and identifies the resource (Fragment ask price). It distinguishes from siblings (compare_names, score_name) by focusing on a specific pre-purchase check.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates when to use the tool ('Pre-purchase check'), but does not explicitly state when not to use it or provide alternatives. It could be improved by mentioning that compare_names or score_name might be used for other purposes, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_namesA
Score several username candidates (max 20) and rank them by score. Use when choosing between name options for a brand, bot, channel or investment.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | ||
| names | Yes | Candidate usernames |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states it scores and ranks but does not describe scoring methodology, return values, or whether it is a read/mutation operation. Limited behavioral insight.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with key purpose. Efficient but could include more structured bullet points for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for basic usage but lacks behavioral details and parameter semantics. No output schema makes return type unclear. With 2 params and siblings, minimal but acceptable completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% with 'names' described as 'Candidate usernames' in schema. Description adds no new parameter details; 'lang' and scoring logic remain unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it scores and ranks multiple username candidates (max 20), distinguishing it from sibling 'score_name' which likely handles single names. Specific verb 'score' and resource 'username candidates' are present.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use when choosing between name options for a brand, bot, channel or investment.' Provides clear context for use but does not mention when not to use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_nameA
Score a Telegram username as an asset: namability 0-100 (validated against real Fragment sales), quality band, fair price estimate in GRAM, and a positioning thesis when available. Use when the user asks whether a username is good, what it is worth, or before buying/minting it.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Thesis language, default en | |
| name | Yes | Username without @ (4-32 chars, a-z 0-9 _) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that scoring is validated against real Fragment sales and mentions the outputs, but it does not describe any behavioral traits such as side effects, authentication needs, or rate limits. For a read-only scoring tool, this is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the primary purpose and key outputs. Every word serves a purpose, with no redundancy or wasted space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately explains the return values and their significance (validated against real sales). It covers the main inputs and usage context. Minor omission: does not state whether the tool is read-only or requires authentication, but for a scoring tool this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description doesn't add significant new information about parameters beyond the schema; it explains the output context (validation vs Fragment sales, GRAM price) but doesn't clarify parameter usage beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Score' and identifies the resource as 'Telegram username'. It lists the outputs (namability 0-100, quality band, fair price, positioning thesis) and distinguishes from siblings like check_fragment_ask and compare_names via usage guidance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use the tool: 'when the user asks whether a username is good, what it is worth, or before buying/minting it.' While it does not explicitly mention when not to use or list alternatives, the sibling tools provide implied alternatives and the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v0.1.0- First observed
check_fragment_ask - First observed
compare_names - First observed
score_name
TDQS
Scored across 3 tools
Each tool serves a distinct, non-overlapping purpose: one compares ask prices, one ranks multiple candidates, and one evaluates a single name. No ambiguity.
All tool names follow a consistent verb_noun pattern in snake_case, using verbs like check, compare, and score.
Three tools is appropriate for a focused server that handles Telegram username valuation and comparison. Not too few or too many.
Covers core valuation and comparison operations. Lacks direct buy/mint actions, but these are not valuation tasks. Minor gap in lifecycle coverage.
Maintenance
Related MCP Connectors
RiskDataApi — Solana token risk scoring for AI agents. Safety score, insider clusters, honeypot.
Blockchain analytics API for AI agents. Smart Money signals, wallet profiling, token analytics.
Blockchain analytics API for AI agents. Smart Money signals, wallet profiling, token analytics.
Internet identity for AI agents: register or broker domains, email, DNS - pay by card or USDC.
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceReal-time crypto risk scoring for AI agents. Trust Score, crash probability, and distance-to-default for 205 tokens. Free, no API key needed.MIT- AlicenseNot gradedqualityDmaintenanceSolana on-chain intelligence API — token scans, wallet PnL, bundle detection, fresh wallets, dev profiling. MCP server for Claude, Cursor & AI agents. Live PumpFun/Raydium streams1MIT
- 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.-
- FlicenseAqualityDmaintenanceTON Data MCP Server — real-time blockchain data for AI agents. Provides wallet balances, token prices, STON.fi liquidity pools, market overview, transactions, and network state. 6 MCP tools, free tier, Docker-ready.6-