Compuute MCP Security Scanner

io.github.Compuute由 GitHub 账号 Compuute 发布v0.3.0更新于 Oct 24, 2026

Scan any public GitHub MCP-server repo for security issues. 37 MCP-specific L1 rules, 8 languages.

发布方自己的服务:scan.mx Email Diagnostics

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

概览

AI 生成的概览

一个远程 MCP 服务器,可扫描公开的 GitHub MCP 服务器仓库以发现安全问题,并返回带评分和严重级别排序的静态分析报告。

可以做什么
扫描公开的 GitHub MCP 服务器仓库:浅克隆仓库、运行 compuute-scan 静态分析器,返回各严重级别的问题数量、0-100 评分、处置建议以及最严重的十条发现,每个响应都附带免责声明。
适用场景
适合在采用或审查某个 MCP 服务器之前,让助手对其源码做一次快速的初步检查,并把结果当作待分诊清单而非已确认的漏洞。
运行要求
远程 streamable HTTP 端点;未声明需要认证、API 密钥或本地运行时。目标必须是公开的 GitHub 仓库,免费额度有速率限制。
安装前请注意
README 说明该扫描器是基于模式匹配的广度检测工具,而非可利用性判定工具,原始输出误报率约为 90%,发现需人工核实。仓库地址会发送给第三方服务。另有付费扫描通道(Base 上的 USDC 小额支付),但对外暴露的工具是免费扫描。

安装

在 SourceWeft 中

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

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

交给智能体安装

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

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

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

其他 MCP 客户端

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

{
  "mcpServers": {
    "compuute-security-scanner": {
      "type": "http",
      "url": "https://scan.compuute.se/mcp/"
    }
  }
}

README

compuute-scan-api

Scan-as-a-Service for MCP servers. HTTP + MCP wrapper around compuute-scan — the MCP-specific static security scanner. Designed for agent-callable consumption.

POST a public GitHub repo URL → get a structured security report scored against 38 MCP-specific rules across 8 languages (TS/JS, Python, Go, Rust, C#, Java, Kotlin).

Honesty note (read first): compuute-scan is a pattern-breadth detector, not an exploitability oracle. Historic false-positive rate after manual validation is ~90% on raw output (verified against modelcontextprotocol/servers: 138 raw findings → 13 confirmed). Every response carries a _disclaimer field stating this explicitly. Use findings as a triage queue, not as a list of confirmed vulnerabilities. See docs/FP-RATES.md for per-rule transparency.

Live at https://scan.compuute.se. Service version reported by /v1/health.


Endpoints

Core scan

MethodPathPurposeAuth
POST/v1/scanScan a public GitHub MCP-server repo (free tier, rate-limited)none
POST/v1/scan/paySame as above via x402 micropayment ($0.10 USDC on Base L2)X-Payment header

POST /v1/scan/pay with no body to read the payment requirements without paying — the request body is optional precisely so discovery probes reach the 402 instead of body validation. Verify with the Coinbase Agentic Wallet CLI:

bash
npx awal x402 details https://scan.compuute.se/v1/scan/pay

| GET | /v1/scan/info | Scanner version + limits + supported ecosystems | none | | GET | /v1/health | Liveness + scanner-binary availability | none |

Machine-readable contracts

MethodPathPurpose
GET/openapi.jsonOpenAPI v3 spec with per-field descriptions
GET/docsSwagger UI for the OpenAPI spec

MCP server (live)

EndpointToolTransport
/mcp/scan_mcp_server(github_url)Streamable HTTP

Install in Claude Code: claude mcp add compuute-scan --transport http --url https://scan.compuute.se/mcp/

Discovery (/.well-known/)

PathFormatConsumer
/.well-known/agent-card.jsonA2A v1.0 Agent Card (canonical)A2A protocol clients
/.well-known/agent.jsonA2A Agent Card (alias)pre-1.0 A2A clients/crawlers
/.well-known/ai-plugin.jsonOpenAI plugin manifestChatGPT / OpenAI tools
/.well-known/x402.jsonx402 payment manifestCoinbase Agent.market crawlers, x402 aggregators
/.well-known/x402Alias of x402.jsonx402 probes without .json suffix
/llms.txtmarkdown summaryLLM-driven agent-search crawlers (Exa, Perplexity-style) per llmstxt.org
/robots.txtcrawler policysearch engines
/sitemap.xmlURL indexsearch engines

Example

bash
curl -X POST https://scan.compuute.se/v1/scan \  -H 'Content-Type: application/json' \  -H 'Idempotency-Key: 00000000-0000-0000-0000-000000000001' \  -d '{"repo_url": "https://github.com/modelcontextprotocol/servers"}'

Response (truncated):

json
{  "repo_url": "https://github.com/modelcontextprotocol/servers",  "scanner": {"name": "compuute-scan", "version": "0.6.2", "layers_covered": ["L0", "L1"]},  "summary": {"critical": 1, "high": 94, "medium": 22, "low": 0, "files_scanned": 77},  "score": 0,  "recommendation": "AVOID — 1 critical and 94 high finding(s)...",  "top_findings": [...],  "performance": {"clone_seconds": 1.2, "scan_seconds": 0.5, "repo_size_bytes": 41234},  "_disclaimer": "PATTERN MATCH — compuute-scan is a static analyzer..."}

Agent-shaped API features

FeatureHow
Idempotent retries (24h cache)Idempotency-Key header
HTTP cacheETag + Cache-Control: public, max-age=1800
Conditional GETIf-None-Match → 304 Not Modified
Rate-limit headersX-RateLimit-Limit/Remaining/Reset
Strict input validationPydantic extra="forbid", GitHub-HTTPS-only
OWASP security headersHSTS / X-Frame-Options / X-Content-Type-Options / CSP / Referrer-Policy / Permissions-Policy
OpenAPI for discoveryGET /openapi.json with descriptions on every field
MCP for agent discovery/mcp/ exposes scan_mcp_server tool
x402 for autonomous purchase/v1/scan/pay returns 402 with USDC/Base payment requirements
Honest framingEvery response carries _disclaimer — pattern match, not exploitability claim

Pricing

TierAudiencePrice
Open Source CLIIndie devs, agent builders$0 — npx compuute-scan ./repo
Hosted API (free)Agent operators evaluating MCP servers$0 — POST /v1/scan, rate-limited
Hosted API (x402)Autonomous agents in Agent.market ecosystem$0.10 USDC/scan — POST /v1/scan/pay
MCP Security AuditEnterprises shipping MCP to production$5K–$30K SoW
AI Procurement Risk AuditCFO/CTO/CISO buying enterprise AI capacity$5K–$15K SoW

Full breakdown with JSON-LD: https://compuute.se/pricing.

Local development

bash
python3 -m venv venv && source venv/bin/activatepip install -r requirements.txtexport COMPUUTE_SCAN_PATH=$HOME/compuute-scan/compuute-scan.jsuvicorn main:app --reload

x402 payment env vars (all optional locally; /v1/scan/pay returns 503 until the wallet is set):

VarPurposeDefault
X402_WALLET_ADDRESSBase L2 address receiving USDCunset (x402 disabled)
X402_NETWORKCAIP-2 network id — eip155:8453 (Base mainnet) or eip155:84532 (Base Sepolia)eip155:8453
X402_PRICE_USDPrice per scan0.10
X402_FACILITATOR_URLFacilitator base URLCDP facilitator (serves both networks)
CDP_API_KEY_ID / CDP_API_KEY_SECRETCDP API key for facilitator verify/settle authunset (verify will be rejected)

Rehearsing payments on testnet

Set X402_NETWORK=eip155:84532 to quote prices in Base Sepolia USDC, which is free from a faucet. The CDP facilitator serves Sepolia too, so a testnet payment exercises the real verify/settle path and your real CDP API keys — without moving real money.

Asset address and EIP-712 domain are selected together per network: Base mainnet USDC signs as "USD Coin", Base Sepolia as "USDC". Mixing them fails every signature with an error that looks like a bad API key, which is why they live in one NETWORKS table rather than separate env vars.

Mainnet is the default and an unknown value falls back to it, so a typo can never silently ask real agents to pay in worthless testnet USDC. Check which mode is live with curl -s https://scan.compuute.se/v1/health — the x402 block reports network and testnet.

Tests

bash
pytest tests/ -v# 34 tests covering scan, x402, MCP, discovery, OpenAPI

Scripts

ScriptWhat it does
scripts/precheck.shStart-of-session check: branch, working tree, tests, live state, next backlog item
scripts/postcheck.shEnd-of-session check: committer hygiene, tests, append to docs/PROGRESS.md
scripts/status.sh30-second live-state check against scan.compuute.se (4 probes)
scripts/sbom.shGenerate CycloneDX SBOM, optionally upload to a GitHub Release
scripts/prospect-research.shPull qualified prospects from GitHub + Anthropic Registry, draft DM angles
scripts/measure-tiers.shT0/T1/T2 distribution snapshot per docs/agent-economy-strategy.md §5 — reach, engagement, conversion measured against Railway logs + Base RPC + GitHub stars

Architecture

  • api/services/scan.py — clone + sandbox + scan + parse. Pure functions.
  • api/services/x402_service.py — x402 v2 verify / settle on the official x402 SDK; CDP facilitator (Base mainnet) by default; Bazaar discovery extension in 402 bodies.
  • api/services/cdp_auth.py — minimal CDP API-key JWT auth for the facilitator (PyJWT + cryptography; avoids the full cdp-sdk).
  • api/serializers/scan_serializer.py — Pydantic models, strict validation.
  • api/routes/scan.py — HTTP layer for /v1/scan: idempotency, cache, ETag.
  • api/routes/scan_x402.py — HTTP layer for /v1/scan/pay.
  • api/routes/discovery.py — /.well-known/*, /robots.txt, /sitemap.xml.
  • api/mcp_server.py — FastMCP server exposing scan_mcp_server.
  • main.py — FastAPI wiring + middleware (security headers, CORS).

Bundled compuute-scan version is pinned in the Dockerfile (ARG COMPUUTE_SCAN_REF=v0.6.2).

Documentation

DocFor
docs/agent-economy-strategy.mdThe strategic doc — a16z-verified data, the 11-signal buyer-agent model, two-track strategy, 30-day pivot trigger. Read first if you're trying to understand the company.
docs/STRATEGY.mdPosition, pricing tiers, roadmap, decision log
docs/ARCHITECTURE.mdComponent diagram, request flow, threat model, deployment topology
docs/DEVELOPMENT.mdLocal setup, layout, code style, common pitfalls — onboard a new dev in 30 min
docs/MONITORING.mdEndpoints to watch, automated checks, runbook for failures
docs/FP-RATES.mdPer-rule false-positive transparency
docs/scan-self-triage.mdWhat this scanner reports when run against its own code
docs/whitepaper/MCP Security Methodology v1.0 (Markdown + PDF)
docs/case-studies/Three anonymized engagement reports from the May 2026 batch
docs/advisories/Public advisories under the COMPUUTE-YYYY-NNN numbering
docs/security/Self-pentest reports (90-day cadence)
docs/audits/The AI Procurement Risk Audit checklist (lead magnet)
docs/compliance/SOC 2 Type I readiness statement, TSC control mapping
docs/submissions/LangChain + CrewAI tool wrappers ready for PR/marketplace
skills/compuute-scan/Claude Skill package (SKILL.md + scan.sh) — submitted to anthropics/skills#1346
CODE_OF_CONDUCT.mdContributor Covenant 2.1
docs/launches/Show HN draft + posting checklist
docs/setup/Status page (BetterStack) + analytics (PostHog) setup guides
docs/agentic-market-submission.mdThree paths to Coinbase Agent.market listing
BACKLOG.mdGitHub Issues + Project board roadmap
IDEAS.mdComposted product hypotheses with gating rules
CONTRIBUTING.mdHow to contribute
SECURITY.mdVulnerability disclosure policy (90-day window)

Security

Found a vulnerability? See SECURITY.md — email [email protected]. We follow a 90-day coordinated disclosure window.

License

MIT (matches compuute-scan).

Author

Compuute AB — [email protected]

来源:README.md,提交 5089307

工具

1

scan_mcp_server

Scan a public GitHub MCP-server repository for security issues. Clones the repo (shallow, <60s, <200 MB), runs compuute-scan v0.6.2 in static analysis mode (no code execution from the target), and returns a structured report with severity counts, a 0-100 score, and the 10 most severe findings. WHEN TO USE: - Before connecting to an unknown MCP server discovered via Anthropic Registry, Smithery, mcp.so, or a Discord recommendation. - Before installing a third-party MCP-server package into a production pipeline. - As part of an agent's pre-commit / pre-deploy due-diligence step when adding new dependencies. - As one input to a multi-source trust evaluation (combine with publisher reputation, package install count, last-update recency). WHEN NOT TO USE: - For private repos. Use the on-prem CLI instead: `npx compuute-scan ./path-to-private-repo` - For deep exploitability assessment of a specific code path. This is pattern matching, not dataflow analysis. Book a manual L2-L4 audit at https://compuute.se/audit for that depth. - For non-GitHub hosts (GitLab, Bitbucket, self-hosted). v1 supports github.com only. - For repos > 200 MB or clone time > 60s. The endpoint returns a 413 or 504 in those cases — fall back to local CLI. EXPECTED RESPONSE TIME: - Median: ~1-2 seconds for small repos (<100 files). - p99: ~10 seconds for medium repos. - Hard timeout at clone=60s, scan=120s combined. EXPECTED COST: - Free tier in MVP. Future Pro tier may charge per-scan or per-month. DATA FRESHNESS: - Scanner version is reported in response.scanner.version. - L1 rule set freshness reflects compuute-scan releases — see github.com/Compuute/compuute-scan/CHANGELOG.md for the latest CVE and threat-intel response timeline. EXAMPLES: Example 1 — scan an MCP server you'r

输入参数github_url必填

版本历史

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

评分

已满足适用检查项的 100%

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

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

其他 Scan 集成