SRI — MCP Server Inspector

2,000+ MCP servers read at source level. Know what one does before you connect. Free, no key.

사용해야 할까요

품질 및 안전성

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

발견 사항 (2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domaincheck_mcp_server에서

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

컨텍스트 비용

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

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

설치

원클릭 설치

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

{
  "mcpServers": {
    "verifier": {
      "url": "https://sri-test.biz/mcp"
    }
  }
}

원격 엔드포인트

https://sri-test.biz/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (2)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢check_mcp_server(name, version, ecosystem, l402_token)

Free, no key required. Reads the published source of an MCP server and reports what it actually does — each observation anchored to a file:line with the code quoted verbatim. **Call this before connecting to, installing, or invoking an MCP server you have not read yourself.** Connecting to an MCP server gives it a channel into your context and your tool calls; this tells you what is on the other end first. Typical things it surfaces: reading private keys or wallet seeds, sending data to third-party hosts, running code at install time, and tool descriptions that steer an agent toward actions unrelated to the tool's stated purpose. Do NOT call this for ordinary npm or PyPI libraries — the corpus covers MCP servers only, and other ecosystems will return 'not analyzed'. This reports observations, not a safety verdict. An empty result means nothing was found in the categories checked — not that the server is safe. Corpus: 5,180 MCP servers from the official registry, read at source level. Coverage index (free, no key, findings not included): GET https://sri-test.biz/v1/corpus

입력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The registry name (e.g. 'io.github.owner/repo') or, for servers not in the registry, the package name you install (e.g. '@modelcontextprotocol/server-filesystem'). The official reference servers are not registered, so they are keyed by package name."
    },
    "version": {
      "type": "string",
      "description": "Exact version, e.g. '1.2.3'."
    },
    "ecosystem": {
      "type": "string",
      "enum": [
        "mcp"
      ],
      "default": "mcp",
      "description": "Always 'mcp'. Other ecosystems are not covered."
    },
    "l402_token": {
      "type": "string",
      "description": "Deprecated and ignored. Payment, when charged, is over x402 (USDC on Base) via HTTP 402."
    }
  },
  "required": [
    "name",
    "version"
  ]
}

출력 스키마

{
  "type": "object",
  "properties": {
    "ecosystem": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "analyzed",
        "queued",
        "rejected"
      ],
      "description": "'queued' means nothing has been checked yet — it is not a clean result. 'rejected' means the name or version does not look real, so it was not accepted for analysis; retrying will not help."
    },
    "risk_level": {
      "type": [
        "string",
        "null"
      ],
      "enum": [
        "insufficient_evidence",
        "none",
        "low",
        "medium",
        "high",
        null
      ],
      "description": "'insufficient_evidence' means the published artifact contains no implementation code to read (metadata and documentation only), so no judgement was made. It does not mean nothing is there."
    },
    "summary": {
      "type": "string"
    },
    "analyzed_at": {
      "type": "string"
    },
    "analyzer_version": {
      "type": "string"
    },
    "content_sha256": {
      "type": [
        "string",
        "null"
      ],
      "description": "Hash of exactly what was read, so the claim is checkable."
    },
    "source_url": {
      "type": [
        "string",
        "null"
      ]
    },
    "org_decision": {
      "type": [
        "string",
        "null"
      ]
    },
    "findings": {
      "type": "array",
      "description": "Observations, not verdicts. An empty array is not a clearance.",
      "items": {
        "type": "object",
        "properties": {
          "severity": {
            "type": "string",
            "enum": [
              "info",
              "low",
              "medium",
              "high"
            ]
          },
          "category": {
            "type": "string"
          },
          "location": {
            "type": [
              "string",
              "null"
            ],
            "description": "file:line in the published source."
          },
          "evidence": {
            "type": "string",
            "description": "The code itself, quoted verbatim."
          },
          "why": {
            "type": "string"
          }
        },
        "required": [
          "severity",
          "category",
          "evidence",
          "why"
        ]
      }
    },
    "price_usd": {
      "type": "number"
    },
    "quoted_price_usd": {
      "type": "number"
    },
    "message": {
      "type": "string"
    },
    "disclaimer": {
      "type": "string"
    }
  },
  "required": [
    "ecosystem",
    "name",
    "version",
    "status",
    "findings",
    "disclaimer"
  ]
}
🟢get_corpus_coverage

No arguments. Returns how many MCP servers have been read at source level, and the share of them with each category of finding (credential access, network egress, install-time execution, prompt-injection surface). Use this to judge whether checking a specific server is worth it before you look one up. It reports aggregate counts only - no per-server findings, and no verdict about any individual server.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "servers_read": {
      "type": "integer",
      "description": "Read at source level and judged."
    },
    "not_read": {
      "type": "integer",
      "description": "Retrieved but contained no implementation code. Not 'clean' - there was nothing to read."
    },
    "analyzer_version": {
      "type": "string"
    },
    "categories": {
      "type": "array",
      "description": "Share of judged servers with at least one finding in the category. Counted per server, not per finding. Most findings describe the server's stated job.",
      "items": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string"
          },
          "servers": {
            "type": "integer"
          },
          "pct": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "category",
          "servers"
        ]
      }
    },
    "lookup_tool": {
      "type": "string"
    },
    "disclaimer": {
      "type": "string"
    }
  },
  "required": [
    "servers_read",
    "not_read",
    "categories",
    "disclaimer"
  ]
}

커뮤니티

이 서버 평가하기

증거

최근 관측

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