Odel
namecatcher skills

namecatcher skills

Local
@productmapJavaScriptMITUpdated 1mo ago

Score and value collectible Telegram usernames: namability 0-100, fair price, thesis. No API key.

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:

LayerForInstall
Plain HTTPany agent that can curl/fetchnothing
Agent SkillClaude Code / skills-compatible agentsnpx skills add productmap/namecatcher-skills
MCP serverClaude Desktop/Code, any MCP clientnpx -y namecatcher-mcp

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"
}

API reference

One endpoint, no auth:

GET https://api-namecatcher.rocketname.com/public/score/{name}?lang={en|ru}

Parameters

ParamInRequiredDescription
namepathyesUsername without @. 4–32 chars, a-z 0-9 _
langquerynoen (default) or ru — language of thesis

Response fields

FieldTypeDescription
usernamestringCanonical (lowercase) username
scoreint 0–100Namability — quality of the name as a brandable asset. Market-validated: names scoring 90+ sell for a multiple of 80–89 names
bandstringpremium (≥80) · strong (≥66) · medium (≥50) · weak (<50). Below 50 is not investment-grade
fair_price_tonnumber | nullClass-based fair price estimate in GRAM (length × score class)
thesisstring | nullShort positioning summary (why the name works, for whom). Present only for names already analyzed — null is not a quality signal
langstringLanguage the thesis was returned in
analysis_urlstringFull breakdown in the NameCatcher mini app
fragment_urlstringThe name's page on Fragment (live market status, buy/bid)

Errors

StatusBodyMeaning
400{"error":"INVALID_NAME"}Not a valid username string
400{"error":"NOT_COLLECTIBLE"}Valid string, but not scorable as a collectible (e.g. too short)
429{"error":"RATE_LIMITED","retry_after_s":n}Over 60 req/min per IP — wait retry_after_s and retry
429{"error":"DAILY_LIMIT","limit_per_day":1000}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).

smithery badge

Remote endpoint (Streamable HTTP) — same three tools, zero install:

https://mcp-namecatcher.rocketname.com/mcp
claude mcp add --transport http namecatcher https://mcp-namecatcher.rocketname.com/mcp

Claude Code:

claude mcp add namecatcher -- npx -y namecatcher-mcp

Claude Desktop / other MCP clients (mcpServers config):

{
  "mcpServers": {
    "namecatcher": {
      "command": "npx",
      "args": ["-y", "namecatcher-mcp"]
    }
  }
}

Tools

ToolDescriptionArguments
score_nameScore one username: namability, band, fair price, thesisname, lang?
compare_namesScore up to 20 candidates and rank them by scorenames[], lang?
check_fragment_askCompare a Fragment asking price to the class valuation → fair/ask ratio + verdictname, ask_ton

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

License

MIT