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 整合