co.pixelcove/topic-scorer
Measured conclusion: Alive, not deep-tested. L2 outcome: not_attempted.
Score pages against 11,485 public taxonomy categories by embedding similarity. $0.05/call via MCP.
| Author | co.pixelcove |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Alive, not deep-tested |
| L1 liveness | alive |
| L1 latency | 159 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"topic-scorer": {
"url": "https://topic-scorer.pixelcove.co/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (5)
topic_scorer_taxonomiesLists the six taxonomies with their label and category count. Free. Call it first to pick the taxonomy for topic_scorer_find.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
topic_scorer_findFinds categories whose path contains the query (case-insensitive substring), optionally within one taxonomy. Free. Returns up to `limit` hits with id and path; pass the id as `category` to the paid tools.
Parameters:
query(required) — string — Words to look for in category paths.limit— integertaxonomy— string — Taxonomy of the target category.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
topic_scorer_scoreScores text against every category in all six taxonomies (one embedding, cosine similarity) and returns the top `per` rows per taxonomy. With `taxonomy` and `category` it also returns the target's rank, score, gap to #1, and a phrase bank split into phrases the text already uses and phrases it does not. Read the rank and the gap, not the raw percent (scores compress into a 70 to 90 band). Paid, $0.05/call; read-only and safe to retry.
Parameters:
text(required) — string — The page or draft text to score, as plain text or HTML (tags are stripped). 1 to 32768 characters. URLs are not fetched; send the content.per— integer — Rows per taxonomy.full— boolean — Score the whole text as the mean of 8,192-char chunks instead of only the first 8,192 chars.phrases— integer — Phrase bank size for the target category (0 skips it).category— string — Target category id, full path, or a unique path substring within the taxonomy (use topic_scorer_find to look one up).taxonomy— string — Taxonomy of the target category.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
topic_scorer_gatePass/fail check: does the text rank within the top `min_rank` categories of its target taxonomy? Returns `pass`, the target's rank and gap to #1, the taxonomy's top five, and the unused phrases to work in. Use it as a content-pipeline gate. Paid, $0.05/call; read-only and safe to retry.
Parameters:
text(required) — string — The page or draft text to score, as plain text or HTML (tags are stripped). 1 to 32768 characters. URLs are not fetched; send the content.taxonomy(required) — string — Taxonomy of the target category.category(required) — string — Target category id, full path, or a unique path substring within the taxonomy (use topic_scorer_find to look one up).full— boolean — Score the whole text as the mean of 8,192-char chunks instead of only the first 8,192 chars.phrases— integer — Phrase bank size for the target category (0 skips it).min_rank— integer — Highest passing rank.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
topic_scorer_phrasesReturns the ranked phrase bank for one category: 1 to 4 word phrases a page squarely about that category would contain, ordered by similarity to the category. Use it to seed a brief. Paid, $0.05/call; read-only and safe to retry.
Parameters:
taxonomy(required) — string — Taxonomy of the target category.category(required) — string — Target category id, full path, or a unique path substring within the taxonomy (use topic_scorer_find to look one up).n— integer — Bank size.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.