Citead GEO Score

Free GEO score of a web page or text: how easily AI assistants can quote it, with fixes. No key.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
93%
이름 품질
80%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,708토큰 (도구 정의)
~7.5 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.33%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "score": {
      "url": "https://mcp.citead.com/public/mcp/"
    }
  }
}

원격 엔드포인트

https://mcp.citead.com/public/mcp/streamable-http

할 수 있는 일

도구 목록

도구 (2)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢score_url(url)

Fetch a public web page and compute its GEO score with Citead. Returns the overall score (0 to 100), the score of five criteria (AI citability, naturalness, authority and citations, semantic richness, content organization), the main fixes to apply, and a citead.com link with the full breakdown. The GEO score (0 to 100) measures how easy the content is for a language model to understand, reuse and cite: information density, quotable sentences, self-contained paragraphs, sourced and dated facts, clear structure, freshness. Naturalness is returned as a criterion but does not count in the score. It is computed by deterministic rules, without a language model: the same content always gets the same score. It does not guarantee that an AI assistant will cite the page. Free, no API key, nothing is stored. Pages behind a login or rendered only by JavaScript may not be fetchable: use score_text with the page text instead.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Public http(s) URL of the page to score.",
      "maxLength": 2048,
      "minLength": 4,
      "title": "Url",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "title": "score_urlArguments"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "geo_score": {
      "description": "Overall GEO score, 0 to 100.",
      "title": "Geo Score",
      "type": "number"
    },
    "criteria": {
      "description": "Score of each of the five criteria, 0 to 100. The overall score is computed from sub-signals of four of these criteria plus freshness, with caps for very short content, so it is not their plain average. Naturalness does not count in the overall score.",
      "items": {
        "$ref": "#/$defs/Criterion"
      },
      "title": "Criteria",
      "type": "array"
    },
    "top_fixes": {
      "description": "Main corrections, most important first.",
      "items": {
        "$ref": "#/$defs/Fix"
      },
      "title": "Top Fixes",
      "type": "array"
    },
    "word_count": {
      "title": "Word Count",
      "type": "integer"
    },
    "title": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Title"
    },
    "url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Url"
    },
    "details_url": {
      "description": "Citead page with the full breakdown. Give it to the user.",
      "title": "Details Url",
      "type": "string"
    },
    "score_meaning": {
      "title": "Score Meaning",
      "type": "string"
    },
    "remaining_quota": {
      "$ref": "#/$defs/RemainingQuota",
      "description": "Free scores left for this IP address in the current windows."
    }
  },
  "required": [
    "geo_score",
    "criteria",
    "top_fixes",
    "word_count",
    "details_url",
    "score_meaning",
    "remaining_quota"
  ],
  "$defs": {
    "Criterion": {
      "properties": {
        "id": {
          "title": "Id",
          "type": "string"
        },
        "name": {
          "title": "Name",
          "type": "string"
        },
        "score": {
          "description": "0 to 100, higher is better.",
          "title": "Score",
          "type": "number"
        }
      },
      "required": [
        "id",
        "name",
        "score"
      ],
      "title": "Criterion",
      "type": "object"
    },
    "Fix": {
      "properties": {
        "priority": {
          "description": "high, medium or low.",
          "title": "Priority",
          "type": "string"
        },
        "problem": {
          "title": "Problem",
          "type": "string"
        },
        "fix": {
          "title": "Fix",
          "type": "string"
        },
        "location": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Location"
        }
      },
      "required": [
        "priority",
        "problem",
        "fix"
      ],
      "title": "Fix",
      "type": "object"
    },
    "RemainingQuota": {
      "properties": {
        "minute": {
          "title": "Minute",
          "type": "integer"
        },
        "hour": {
          "title": "Hour",
          "type": "integer"
        },
        "day": {
          "title": "Day",
          "type": "integer"
        }
      },
      "required": [
        "minute",
        "hour",
        "day"
      ],
      "title": "RemainingQuota",
      "type": "object"
    }
  },
  "title": "GeoScoreResult"
}
🟢score_text(content, title, language)

Compute the GEO score of a text with Citead: an article draft, a page copy, markdown, plain text or HTML. Returns the overall score (0 to 100), the score of five criteria (AI citability, naturalness, authority and citations, semantic richness, content organization), the main fixes to apply, and a link to Citead's free live editor. The GEO score (0 to 100) measures how easy the content is for a language model to understand, reuse and cite: information density, quotable sentences, self-contained paragraphs, sourced and dated facts, clear structure, freshness. Naturalness is returned as a criterion but does not count in the score. It is computed by deterministic rules, without a language model: the same content always gets the same score. It does not guarantee that an AI assistant will cite the page. Free, no API key, the text is not stored. Texts under 300 words get a capped score (at most 65).

입력 스키마

{
  "type": "object",
  "properties": {
    "content": {
      "description": "The text to score: markdown, plain text or HTML.",
      "maxLength": 200000,
      "minLength": 1,
      "title": "Content",
      "type": "string"
    },
    "title": {
      "anyOf": [
        {
          "maxLength": 300,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Page title. Defaults to the first heading.",
      "title": "Title"
    },
    "language": {
      "anyOf": [
        {
          "enum": [
            "en",
            "fr"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Language of the text. Omit to detect it. Only English and French have dedicated rules; other languages use the English ones.",
      "title": "Language"
    }
  },
  "required": [
    "content"
  ],
  "title": "score_textArguments"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "geo_score": {
      "description": "Overall GEO score, 0 to 100.",
      "title": "Geo Score",
      "type": "number"
    },
    "criteria": {
      "description": "Score of each of the five criteria, 0 to 100. The overall score is computed from sub-signals of four of these criteria plus freshness, with caps for very short content, so it is not their plain average. Naturalness does not count in the overall score.",
      "items": {
        "$ref": "#/$defs/Criterion"
      },
      "title": "Criteria",
      "type": "array"
    },
    "top_fixes": {
      "description": "Main corrections, most important first.",
      "items": {
        "$ref": "#/$defs/Fix"
      },
      "title": "Top Fixes",
      "type": "array"
    },
    "word_count": {
      "title": "Word Count",
      "type": "integer"
    },
    "title": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Title"
    },
    "url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Url"
    },
    "details_url": {
      "description": "Citead page with the full breakdown. Give it to the user.",
      "title": "Details Url",
      "type": "string"
    },
    "score_meaning": {
      "title": "Score Meaning",
      "type": "string"
    },
    "remaining_quota": {
      "$ref": "#/$defs/RemainingQuota",
      "description": "Free scores left for this IP address in the current windows."
    }
  },
  "required": [
    "geo_score",
    "criteria",
    "top_fixes",
    "word_count",
    "details_url",
    "score_meaning",
    "remaining_quota"
  ],
  "$defs": {
    "Criterion": {
      "properties": {
        "id": {
          "title": "Id",
          "type": "string"
        },
        "name": {
          "title": "Name",
          "type": "string"
        },
        "score": {
          "description": "0 to 100, higher is better.",
          "title": "Score",
          "type": "number"
        }
      },
      "required": [
        "id",
        "name",
        "score"
      ],
      "title": "Criterion",
      "type": "object"
    },
    "Fix": {
      "properties": {
        "priority": {
          "description": "high, medium or low.",
          "title": "Priority",
          "type": "string"
        },
        "problem": {
          "title": "Problem",
          "type": "string"
        },
        "fix": {
          "title": "Fix",
          "type": "string"
        },
        "location": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Location"
        }
      },
      "required": [
        "priority",
        "problem",
        "fix"
      ],
      "title": "Fix",
      "type": "object"
    },
    "RemainingQuota": {
      "properties": {
        "minute": {
          "title": "Minute",
          "type": "integer"
        },
        "hour": {
          "title": "Hour",
          "type": "integer"
        },
        "day": {
          "title": "Day",
          "type": "integer"
        }
      },
      "required": [
        "minute",
        "hour",
        "day"
      ],
      "title": "RemainingQuota",
      "type": "object"
    }
  },
  "title": "GeoScoreResult"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 2개