topic-scorer
Score pages against 11,485 public taxonomy categories by embedding similarity. $0.05/call via MCP.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"topic-scorer": {
"url": "https://topic-scorer.pixelcove.co/mcp"
}
}
}远程端点
https://topic-scorer.pixelcove.co/mcpstreamable-http它能做什么
工具清单
工具(5)
⚪topic_scorer_taxonomies
Lists the six taxonomies with their label and category count. Free. Call it first to pick the taxonomy for topic_scorer_find.
输入模式
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟢topic_scorer_find(query, taxonomy, limit)
Finds 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.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Words to look for in category paths."
},
"taxonomy": {
"type": "string",
"enum": [
"google_ads_topics",
"google_merchant",
"iab_content",
"iab_audience",
"iab_ad_product",
"linkedin_industries"
],
"description": "Taxonomy of the target category."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 25
}
},
"required": [
"query"
],
"additionalProperties": false
}🟢topic_scorer_score(text, taxonomy, category, per, phrases, ...)
Scores 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.
输入模式
{
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"maxLength": 32768,
"description": "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": {
"type": "string",
"enum": [
"google_ads_topics",
"google_merchant",
"iab_content",
"iab_audience",
"iab_ad_product",
"linkedin_industries"
],
"description": "Taxonomy of the target category."
},
"category": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Target category id, full path, or a unique path substring within the taxonomy (use topic_scorer_find to look one up)."
},
"per": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10,
"description": "Rows per taxonomy."
},
"phrases": {
"type": "integer",
"minimum": 0,
"maximum": 100,
"default": 30,
"description": "Phrase bank size for the target category (0 skips it)."
},
"full": {
"type": "boolean",
"default": false,
"description": "Score the whole text as the mean of 8,192-char chunks instead of only the first 8,192 chars."
}
},
"required": [
"text"
],
"additionalProperties": false
}🟢topic_scorer_gate(text, taxonomy, category, min_rank, phrases, ...)
Pass/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.
输入模式
{
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"maxLength": 32768,
"description": "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": {
"type": "string",
"enum": [
"google_ads_topics",
"google_merchant",
"iab_content",
"iab_audience",
"iab_ad_product",
"linkedin_industries"
],
"description": "Taxonomy of the target category."
},
"category": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Target category id, full path, or a unique path substring within the taxonomy (use topic_scorer_find to look one up)."
},
"min_rank": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 3,
"description": "Highest passing rank."
},
"phrases": {
"type": "integer",
"minimum": 0,
"maximum": 100,
"default": 30,
"description": "Phrase bank size for the target category (0 skips it)."
},
"full": {
"type": "boolean",
"default": false,
"description": "Score the whole text as the mean of 8,192-char chunks instead of only the first 8,192 chars."
}
},
"required": [
"text",
"taxonomy",
"category"
],
"additionalProperties": false
}🟢topic_scorer_phrases(taxonomy, category, n)
Returns 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.
输入模式
{
"type": "object",
"properties": {
"taxonomy": {
"type": "string",
"enum": [
"google_ads_topics",
"google_merchant",
"iab_content",
"iab_audience",
"iab_ad_product",
"linkedin_industries"
],
"description": "Taxonomy of the target category."
},
"category": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Target category id, full path, or a unique path substring within the taxonomy (use topic_scorer_find to look one up)."
},
"n": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 30,
"description": "Bank size."
}
},
"required": [
"taxonomy",
"category"
],
"additionalProperties": false
}社区
证据