Wodan Posture

Access-posture reports for agent data sourcing: robots, bot wall, licensing. Paid per call via x402.

사용해야 할까요

품질 및 안전성

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

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

컨텍스트 비용

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

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

설치

원클릭 설치

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

{
  "mcpServers": {
    "wodan-posture": {
      "url": "https://wodan-posture.app.goedvps.com/mcp"
    }
  }
}

원격 엔드포인트

https://wodan-posture.app.goedvps.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (6)

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

Paid: $0.01 USDC on Base per call, paid automatically by an x402-capable MCP client. No signup, no API key. Analyses one public http(s) URL and reports whether an agent may treat it as a machine-readable data source: exact-path robots.txt verdict, bot-wall vendor, JavaScript requirement, extractable content, JSON-LD types, licence hint, evidence lines. Verdicts: open, machine_readable, robots_disallowed, bot_walled, auth_required, js_rendered, thin_content, unreachable. An unanalysable URL is never charged for (error target_not_analysable). Argument: url. Free alternative for the verdict alone: posture_preview.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Public http(s) URL to analyse. Must be reachable from the internet; private, loopback and link-local addresses are refused (target_not_analysable) and are never charged for.",
      "title": "Url",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "title": "page_postureArguments"
}
⚪page_sources(url)

Paid: $0.02 USDC on Base per call, paid automatically by an x402-capable MCP client. No signup, no API key. For one public http(s) URL returns the posture verdict plus where the data is: sitemaps (robots.txt Sitemap lines and /sitemap.xml, with the status observed), RSS/Atom feeds, whether /llms.txt answers 200, the status of /.well-known/x402, ai-plugin.json and mcp.json, JSON/CSV/XML endpoints, JSON-LD types, licence hint. Every field is observed or explicitly empty with a reason. An unanalysable URL (target_not_analysable) or a site that advertises nothing (nothing_to_report) is never charged for. Argument: url.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Public http(s) URL to analyse. Must be reachable from the internet; private, loopback and link-local addresses are refused (target_not_analysable) and are never charged for.",
      "title": "Url",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "title": "page_sourcesArguments"
}
⚪page_data(url)

Paid: $0.03 USDC on Base per call. No signup, no API key. Returns the machine-readable data one public http(s) URL already publishes: every JSON-LD block, OpenGraph/Twitter-card/standard meta, embedded JSON state blobs (e.g. __NEXT_DATA__), parsed entries if the document is RSS/Atom/JSON Feed, HTML tables, and alternate/canonical links - each capped and returned exactly as observed, nothing invented or inferred by a model. Does not render JavaScript, does not follow links off the page, does not summarize. An unanalysable URL is never charged for (error target_not_analysable); a page with nothing extractable answers nothing_to_report, also uncharged.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Public http(s) URL to analyse. Must be reachable from the internet; private, loopback and link-local addresses are refused (target_not_analysable) and are never charged for.",
      "title": "Url",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "title": "page_dataArguments"
}
🟡pages_posture(urls)

Paid: $0.05 USDC on Base per call, as GET /v1/pages/posture?url=...&url=... (repeat url up to ten times) or POST /v1/pages/posture with a JSON body. No signup, no API key. Analyses up to 10 public http(s) URLs in ONE payment and ONE settlement, instead of paying page_posture ten times: the same access-posture report as page_posture, per URL, as a verdict array. An individual unanalysable or empty URL is never a batch failure - it is reported as its own error entry in results, target_not_analysable or nothing_to_report - and the batch is only charged (settles) when at least one URL could be analysed; if every URL fails the whole call answers 404 and nothing settles. Free companions cover a single URL: posture_preview and robots_check.

입력 스키마

{
  "type": "object",
  "properties": {
    "urls": {
      "description": "1 to 10 public http(s) URLs to analyse in one payment. Each is analysed independently: an unreachable or private URL never fails the batch, it is reported as its own error entry in results. Private, loopback and link-local addresses are refused per URL.",
      "items": {
        "type": "string"
      },
      "title": "Urls",
      "type": "array"
    }
  },
  "required": [
    "urls"
  ],
  "title": "pages_posture_toolArguments"
}
⚪posture_preview(url)

Free, no payment and no signup: 60 calls per hour, shared across all callers. Returns the headline of the same analysis - verdict, confidence, the full report's field schema, one evidence line and the price - so a caller can decide before paying. Use it when you only need the verdict; call page_posture ($0.01) for the complete report with evidence and provenance.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Public http(s) URL to analyse. Must be reachable from the internet; private, loopback and link-local addresses are refused (target_not_analysable) and are never charged for.",
      "title": "Url",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "title": "posture_previewArguments"
}
🟢robots_check(url, agent)

Free, no signup: shares posture_preview's 60-calls-per-hour budget across all callers. Answers the RFC 9309 question for one public http(s) URL and one crawler token (argument agent, e.g. 'GPTBot'; optional, defaults to the wildcard '*' group): may this agent fetch this URL? Also reports the same decision for '*', gptbot, claudebot, googlebot, perplexitybot and ccbot in one call. An unreachable or unparsable robots.txt is reported as status unknown with allowed null - never guessed as allowed. The HTTP equivalent is GET /v1/robots/check. For the wider questions this tool does not answer: page_posture ($0.01) is the full access-posture report, page_sources ($0.02) is where the data is, page_data ($0.03) is the data itself.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Public http(s) URL to analyse. Must be reachable from the internet; private, loopback and link-local addresses are refused (target_not_analysable) and are never charged for.",
      "title": "Url",
      "type": "string"
    },
    "agent": {
      "default": "*",
      "description": "Crawler user-agent token to evaluate against robots.txt, e.g. 'GPTBot'. Case-insensitive, stripped and truncated to 64 characters. Optional: omit it, or pass an empty string, to evaluate the wildcard ('*') group.",
      "title": "Agent",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "title": "robots_check_toolArguments"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

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