SRI — MCP Server Inspector

biz.sri-test由 sri-test.biz 发布官方发布者v0.4.0更新于 Oct 24, 2026

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

已验证Streamable HTTP可网页运行开发者工具安全与监控

概览

AI 生成的概览

一个远程 MCP 服务器,读取其他 MCP 服务器已发布的源码并报告代码实际做了什么,每条发现都标注到文件和行。

可以做什么
按名称和版本检查语料库中的 MCP 服务器,返回风险等级、摘要以及带文件与行号定位、逐字引用代码和原因说明的发现列表。查询语料库覆盖情况,了解已按源码读取的服务器数量,以及凭据访问、网络外发、安装时执行、提示注入面等各类发现的占比。
适用场景
在连接、安装或调用自己没读过的 MCP 服务器之前使用,先看清其代码实际做了什么。也可用来判断对某个具体服务器做源码级检查是否值得。
运行要求
远程 Streamable HTTP 端点,无需安装、无需 API 密钥、无需账号。请求以 JSON-RPC 通过 POST 发送,另提供普通 REST 端点。不在语料库中的服务器会返回排队状态而非检查结果。
安装前请注意
它只报告代码做了什么,不判断服务器是否安全;没有发现不等于安全证明。覆盖范围仅限语料库中的 MCP 服务器,分析为单次单遍,实测重复运行一致率低于百分之百。存在付费 L402 通道但目前关闭,启用后将按每次缓存查询收费。服务会记录请求路径、响应时间、User-Agent 和按日加盐的 IP 哈希并保留 90 天,也会记录查询过哪些服务器。

安装

在 SourceWeft 中

  1. 打开 控制台中的 SRI — MCP Server Inspector,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/biz.sri-test%2Fverifier/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "sri-inspector": {
      "type": "http",
      "url": "https://sri-test.biz/mcp"
    }
  }
}

README

SRI — MCP Server Inspector

Read what an MCP server does before you connect to it.

Connecting an MCP server hands it a channel into your agent's context and its tool calls. SRI reads the server's published source and reports what it found — every observation anchored to a file:line with the code quoted verbatim.

It does not tell you whether a server is safe. It tells you what the code does, and shows you the line it read. You decide.

  • Endpoint: https://sri-test.biz/mcp (Streamable HTTP)
  • Corpus: 2,238 MCP servers from the official registry
  • Price: free right now — settlement runs on Bitcoin signet, so invoices cannot be paid with real funds
  • Findings across the corpus: sri-test.biz/research

Add it to your client

Remote MCP server, no install, no API key.

json
{  "mcpServers": {    "sri": {      "type": "http",      "url": "https://sri-test.biz/mcp"    }  }}
Claude Code
bash
claude mcp add --transport http sri https://sri-test.biz/mcp
Anything that speaks Streamable HTTP

Point it at https://sri-test.biz/mcp. There is one tool and no auth. GET on that URL returns 405 — this server does not offer a server-initiated SSE stream, which the spec permits. Send JSON-RPC over POST.

The tool

check_mcp_server

ArgumentRequiredMeaning
nameyesServer name as published in the registry, e.g. io.github.firebase/firebase-mcp
versionyesExact version, e.g. 1.2.3
ecosystemnoAlways mcp; other ecosystems are not covered

Returns a risk_level, a summary, and a list of findings. Each finding carries location (file:line), evidence (the code, quoted), and why.

If the server is not in the corpus you get status: "queued", an explicit "nothing has been checked" — not a clean result — and no charge. We do not bill for an answer we could not give.

Try it without a client

bash
curl -X POST https://sri-test.biz/mcp \  -H 'Content-Type: application/json' \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",       "params":{"name":"check_mcp_server",                 "arguments":{"name":"io.github.firebase/firebase-mcp","version":"0.3.0"}}}'

There is a plain REST endpoint too, if that is easier:

bash
curl -X POST https://sri-test.biz/v1/verify \  -H 'Content-Type: application/json' \  -d '{"ecosystem":"mcp","name":"io.github.firebase/firebase-mcp","version":"0.3.0"}'

GET /v1/price is open and tells you the current terms. GET /v1/docs is the OpenAPI spec.

What gets reported

CategoryWhat it means
credential_accessReads environment credentials, tokens, or key files
network_egressSends data to a host outside the package's own service
install_scriptExecutes code at install time (postinstall, setup.py)
prompt_injection_surfaceTool text or returned data that steers the agent toward actions unrelated to the tool's stated purpose
obfuscationEncoded strings decoded and executed
typosquatName close to a well-known package, different publisher
excessive_permissionPermissions beyond the declared purpose

Severity is info / low / medium / high. risk_level is the highest severity among the findings, derived in code rather than asked for — a verdict with no findings behind it cannot be published.

What this is not

  • No finding is not a clean bill of health. It means nothing was found in the categories above, in the code we could fetch.
  • We never label a package malicious, and never call one safe. The ingest step rejects records whose summary contains either kind of claim.
  • MCP servers only. npm and PyPI libraries are out of scope; ask about one and you will get "not analyzed".
  • One analyzer, one pass. Run-to-run agreement measured at 93% on a hand-labelled set of 84 servers before the full corpus was built. Not 100%.

If a finding is wrong

If you maintain a server and a finding is mistaken, tell us through the report form. Agents can use POST /v1/disputes.

We reply within three business days. While we review, the finding may be withheld from results. If we withdraw it, the server is re-analysed and the record replaced. If we keep it, we say which facts it rests on.

Payment

The paid path is L402 (Lightning HTTP 402): the server issues an invoice and a macaroon, you pay, and you present Authorization: L402 <macaroon>:<preimage>. Verification is sha256(preimage) == payment_hash — no node required on your side, and no signup on ours.

This is switched off today. Settlement runs on signet, a test chain, so invoices cannot be paid with real funds and usage is free. When mainnet is enabled the price returns to $0.20 per cached lookup. GET /.well-known/l402 tells you the current state.

Privacy

We record the path requested, response time, User-Agent, and an IP hashed with a daily salt, kept for 90 days. Raw IP addresses are never stored, and request bodies are never stored — the servers you ask about are recorded by name, nothing more.

来源:README.md,提交 5cee16a

工具

2

check_mcp_server

Check what an MCP server does before connecting to it

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

输入参数name必填version必填ecosysteml402_token

get_corpus_coverage

What has already been read, and what was found in it

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.

无需输入参数。

版本历史

1
  1. v0.4.0最新Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分