serp-metrics

Impression-weighted SERP position, click projection on your own CTR curve, share of voice

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
100%
命名品質
80%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~854Token(工具定義)
~2.3 KB典型回應大小
中等的注意力影響(128k 上下文的 0.67%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "serp-metrics": {
      "url": "https://toolsthatrank-mcp.lipmichal.workers.dev"
    }
  }
}

遠端端點

https://toolsthatrank-mcp.lipmichal.workers.devstreamable-http

它能做什麼

工具清單

工具(3)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟡impression_weighted_position(rows)

Compute the impression-weighted average SERP position for a set of query rows, alongside the plain arithmetic mean and the gap between them. The arithmetic mean lets a 3-impression query count as much as a 30,000-impression one; the weighted figure describes where a typical impression actually happened. A positive weighting_shift means your high-volume queries rank worse than the unweighted average suggests.

輸入結構描述

{
  "type": "object",
  "properties": {
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Optional label for the row."
          },
          "position": {
            "type": "number",
            "description": "Average SERP position for the row, 1-based."
          },
          "impressions": {
            "type": "number",
            "description": "Impressions the row received."
          },
          "clicks": {
            "type": "number",
            "description": "Optional observed clicks, used to calibrate the curve."
          },
          "target_position": {
            "type": "number",
            "description": "Optional per-row target position, overriding the global target."
          }
        },
        "required": [
          "position",
          "impressions"
        ]
      },
      "description": "Query rows."
    }
  },
  "required": [
    "rows"
  ],
  "additionalProperties": false
}
🟡project_clicks_from_ctr_curve(rows, ctr_curve, target_position)

Project how many clicks a set of query rows would earn at a target position instead of their current position, using a CTR curve THAT YOU SUPPLY. This server deliberately ships no built-in CTR table: every published average-CTR-by-position table is a third-party estimate over someone else's traffic, so applying one silently would disguise a guess as a measurement. Pass your own measured curve (Search Console clicks/impressions by position is the honest source). Positions between curve points are linearly interpolated; positions beyond the curve clamp to the last point rather than extrapolate, and are counted in clamped_row_count. If any row carries observed clicks, the output also reports how far the supplied curve is from your reality.

輸入結構描述

{
  "type": "object",
  "properties": {
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Optional label for the row."
          },
          "position": {
            "type": "number",
            "description": "Average SERP position for the row, 1-based."
          },
          "impressions": {
            "type": "number",
            "description": "Impressions the row received."
          },
          "clicks": {
            "type": "number",
            "description": "Optional observed clicks, used to calibrate the curve."
          },
          "target_position": {
            "type": "number",
            "description": "Optional per-row target position, overriding the global target."
          }
        },
        "required": [
          "position",
          "impressions"
        ]
      },
      "description": "Query rows."
    },
    "ctr_curve": {
      "type": "object",
      "description": "Required. Map of position to click-through rate as a 0-1 fraction, e.g. {\"1\":0.28,\"2\":0.15,\"3\":0.10,\"10\":0.02}. Supply your own measured values.",
      "additionalProperties": {
        "type": "number"
      }
    },
    "target_position": {
      "type": "number",
      "description": "Target position applied to every row that does not carry its own."
    }
  },
  "required": [
    "rows",
    "ctr_curve"
  ],
  "additionalProperties": false
}
🟡share_of_voice(entities, ctr_curve)

Compute share of voice across competing entities over a keyword set. Reports impression share always, and, if you supply a CTR curve, a weighted visibility share that accounts for the fact that an impression at position 1 is not worth an impression at position 9. Impression share is share of the supplied set only and says nothing about keywords you did not supply.

輸入結構描述

{
  "type": "object",
  "properties": {
    "entities": {
      "type": "array",
      "description": "One entry per competitor per keyword, or pre-aggregated per competitor.",
      "items": {
        "type": "object",
        "properties": {
          "entity": {
            "type": "string",
            "description": "Competitor name or domain."
          },
          "impressions": {
            "type": "number"
          },
          "position": {
            "type": "number",
            "description": "Average position, required only when a ctr_curve is supplied."
          }
        },
        "required": [
          "impressions"
        ]
      }
    },
    "ctr_curve": {
      "type": "object",
      "description": "Optional caller-supplied position-to-CTR map, for weighted visibility.",
      "additionalProperties": {
        "type": "number"
      }
    }
  },
  "required": [
    "entities"
  ],
  "additionalProperties": false
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本3 個工具
已驗證未記錄版本3 個工具