
Vanta
io.github.mindstone由 GitHub 账号 mindstone 发布v0.3.1更新于 Oct 24, 2026
Vanta compliance MCP server: vulnerabilities, tests, controls, evidence, people, vendors, docs
概览
Vanta 合规 MCP 服务器,让助手通过 Vanta API 读取和写入漏洞、测试、控制项、人员、供应商与文档。
- 可以做什么
- 列出并获取漏洞、测试、控制项、框架、政策、风险场景、集成、事件日志、人员与供应商
- 查询测试结果并获取合规摘要
- 创建和更新供应商,并为供应商附加文档
- 从公开 HTTPS 链接上传证据文件到已有的 Vanta 文档
- 适用场景
- 适合在 Vanta 中管理安全合规工作的团队,让助手查询控制项、测试、漏洞或供应商状态,汇总合规状况,或直接在对话中登记供应商记录和提交证据。
- 运行要求
- 通过 npx 在本地运行(需要 Node.js)。需要 Vanta OAuth 客户端凭证应用:必须提供 VANTA_CLIENT_ID 和 VANTA_CLIENT_SECRET。VANTA_REGION 仅为兼容而接受,不改变路由;VANTA_REQUEST_TIMEOUT_MS 默认 60000。需要访问 Vanta API 的网络,上传时还需访问所给文件链接。
安装
在 SourceWeft 中
- 打开 控制台中的 Vanta,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
@mindstone/mcp-server-vanta
Vanta compliance MCP server — read and write vulnerabilities, tests, controls, people, vendors, documents, and compliance summaries via the Vanta API.
One-click install
[Add to Cursor] [Add to VS Code] [Add to VS Code Insiders]
After clicking the button, your host will prompt you to fill: VANTA_CLIENT_ID, VANTA_CLIENT_SECRET, VANTA_REGION, VANTA_REQUEST_TIMEOUT_MS.
Manual config for Claude Desktop / Claude Code / Goose / Continue.dev (Vanta)
Status
- Version: 0.3.1 · npm
- Auth: OAuth client-credentials grant (
VANTA_CLIENT_ID+VANTA_CLIENT_SECRET) - Tools: 25 (19 read + 6 write across vulnerabilities, tests, controls, frameworks, policies, integrations, risk scenarios, event logs, people, vendors, documents, compliance summary)
- Surface: cloud-api
- Regions:
VANTA_REGIONis accepted for backward compatibility; all standard tenants (US, EU, AU) share one API host (api.vanta.com). The knob routes nothing in this package.
Installation
Configuration
Set these environment variables before starting the server:
VANTA_CLIENT_ID— Vanta OAuth Client ID (required)VANTA_CLIENT_SECRET— Vanta OAuth Client Secret (required)VANTA_REGION— accepted for backward compatibility; all standard tenants (US, EU, AU) share one API host (api.vanta.com). The knob routes nothing in this package.VANTA_REQUEST_TIMEOUT_MS— request timeout in milliseconds (default 60000)
To generate credentials, open the Vanta Developer Console, create a new "Manage Vanta" app type, and copy the Client ID and Client Secret.
Requested OAuth scopes
The connector requests exactly this scope string at every token exchange:
vanta-api.documents:upload is a separate scope from vanta-api.all:write and is required by Vanta's document-upload endpoint. Vanta issues one active token per application and validates scopes against the application, so there is no way to request a narrower set per tool — the trade-off is accepted deliberately: every install carries the upload scope, including installs that never upload.
Upgrading from an earlier version: if your Manage Vanta app cannot request vanta-api.documents:upload, token exchange fails with invalid_scope and every tool stops working. Update (or recreate) the app in the Developer Console so it may request all three scopes.
Tools
Read
vanta_list_vulnerabilities/vanta_get_vulnerabilityvanta_list_tests/vanta_get_testvanta_list_controls/vanta_get_controlvanta_list_frameworks/vanta_get_frameworkvanta_list_policies/vanta_get_policyvanta_list_integrationsvanta_list_risk_scenarios/vanta_get_risk_scenariovanta_list_event_logsvanta_list_peoplevanta_query_test_resultsvanta_get_compliance_summaryvanta_list_vendors/vanta_get_vendor
Write
vanta_create_vendorvanta_update_vendorvanta_attach_vendor_documentvanta_deactivate_vulnerability_monitoringvanta_reactivate_vulnerability_monitoringvanta_upload_document
File uploads
Vanta's upload endpoints take the file as multipart/form-data, so both upload tools take a public https:// URL and the connector downloads the file itself before forwarding the bytes to Vanta:
vanta_upload_documentattaches evidence to an existing Vanta document (document_id), viaPOST /v1/documents/{documentId}/uploads.vanta_attach_vendor_documentattaches a document to a vendor (vendor_id, plus a requireddocument_typesuch asSOC2_REPORT), viaPOST /v1/vendors/{vendorId}/documents.
Vanta accepts .pdf, .docx, .jpg, .png, and .xlsx files.
Known limitations
- Uploads land as drafts. Vanta files an API upload against a document as a draft; the document must be submitted for review in Vanta before auditors can see the evidence. The tool result says so via
submission_required, but the connector has no tool that submits. - No document creation.
vanta_upload_documentattaches a file to a document that already exists in Vanta; it cannot create the document. - Bounded ID fallback scan. When a direct
GETby ID returns 404, the connector cursor-paginates the collection looking for the ID, up to 50 pages (5,000 records). Beyond that bound it reports not-found with a partial-scan note instead of silently giving up at the first page.
Safety
This server enforces:
- Every string in a Vanta API response is wrapped in an
<untrusted-content>envelope — with close-tag breakout escaping — before it reaches the model, unless it is a grammar-checked structural literal (identifiers, enum-like statuses, ISO-8601 dates, http(s) URLs, pagination cursors) that must stay verbatim so it can be quoted back into follow-up tool calls. This deny-by-default walk means fields Vanta adds later, and attacker-influenced fields the connector does not know (e.g. scanner-authored package identifiers), fail closed — enveloped — rather than reaching the model raw. External message text in API and OAuth error bodies is enveloped the same way; credential-shaped values are redacted. - HTTPS-only URL validation on both upload tools (rejects
file:,localhost, RFC1918, link-local incl. cloud metadata addresses, IPv6 loopback/ULA, and hostnames whose DNS records resolve to any of those). - Bounded document fetching: at most 3 redirects, each hop re-validated through the same URL guard, a 30-second timeout, and a 25 MB size cap enforced while streaming (a source cannot lie its way past the cap with a false
Content-Length). - Content-Type handling is header sanitization, not byte-level MIME sniffing: untrustworthy source labels are replaced with
application/octet-stream. - Distinct, structured failures for every refusal — blocked host, non-HTTPS, oversize, timeout, redirect limit — rather than a generic error.
- 50-requests-per-minute rate limiting with single-flight token exchange.
- Zod validation of external responses at the client boundary (paginated list envelopes and the OAuth token response); a malformed payload fails with a structured
RESPONSE_INVALID/AUTHerror instead of an unchecked cast. - Response truncation at 25 KB with binary-search trimming; a truncated response drops
pageInfoand directs a smaller-page_sizeretry, because the full-page cursor would silently skip the dropped records. - Bearer-token redaction in all error messages.
License
来源:connectors/vanta/README.md,提交 22c4611
工具
0版本历史
1- v0.3.1最新Sep 16, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。