Use Veriom from an AI assistant (MCP)
Connect Cursor, Claude, or another MCP client to Veriom so it can send evidence, upload repositories, and start audits in your workspace.
This page is for a developer who wants an AI assistant or agent to work with Veriom. Veriom runs a Model Context Protocol (MCP) server at https://mcp.veriom.ai/mcp. A connected client works as you in one workspace, within your role there and the permissions you allow. It can:
- read the workspace, its repositories, audits, findings, architecture map, compliance programs and reports;
- start, retry and cancel audits;
- comment on findings, assign and prioritise them, and move them through their lifecycle;
- ask Veriom to prepare a fix;
- change audit schedules, triggers and webhooks;
- send evidence and upload repositories.
Some decisions stay with you in Veriom, whatever the client asks: approving remediations, reports and decisions, ratifying invariants, publishing the discovery context, accepting a risk, merging or deploying, autopilot and feature settings, members and sign-in, API tokens, billing, and deleting a workspace.
Before you start
- You are a member of the workspace.
- Your client supports remote MCP servers over HTTP. All the clients below do.
- To use an API key instead of signing in, you need the Admin or Owner role to create it.
Connect your client
Each client signs you in through Veriom in your browser: choose the workspace and click Allow. Sign-in lasts one hour and renews by itself for up to 30 days. The consent page expires after 10 minutes, so finish it promptly.
Claude Code
claude mcp add --transport http veriom https://mcp.veriom.ai/mcpClaude Desktop and claude.ai
Open Settings → Connectors → Add custom connector, and enter https://mcp.veriom.ai/mcp.
Cursor
{
"mcpServers": {
"veriom": { "url": "https://mcp.veriom.ai/mcp" }
}
}VS Code
{
"servers": {
"veriom": { "type": "http", "url": "https://mcp.veriom.ai/mcp" }
}
}ChatGPT
Open Settings → Apps & Connectors → Advanced settings, turn on Developer mode, then create a connector with the URL https://mcp.veriom.ai/mcp.
Codex
[mcp_servers.veriom]
url = "https://mcp.veriom.ai/mcp"Windsurf
{
"mcpServers": {
"veriom": { "serverUrl": "https://mcp.veriom.ai/mcp" }
}
}Gemini CLI
{
"mcpServers": {
"veriom": { "httpUrl": "https://mcp.veriom.ai/mcp" }
}
}Connect with an API key
Use a key for clients that cannot open a browser, such as a CI job or a background agent.
- Open Settings and select API tokens.
- Create a token with the scopes the agent needs. Every MCP connection needs
ingestion:read. See API tokens. - Copy the token. Veriom shows it once.
- Send it as a header. In most clients that is
"headers": { "Authorization": "Bearer ${VERIOM_API_KEY}" }next to the URL. In Claude Code, add--header "Authorization: Bearer $VERIOM_API_KEY". In Codex, addbearer_token_env_var = "VERIOM_API_KEY". - Set
VERIOM_API_KEYto the token in the environment your client runs in.
An approval scope (such as remediations:approve) never works over MCP, even when a token carries it.
Let a coding agent fix findings
- Connect with
findings:read, plusfindings:writeif the agent should comment on findings or move them to fixed. - Ask the agent to fix a finding. It calls
veriom_list_findingsto choose one andveriom_get_findingto read the evidence and the fix. - After changing the code, it can call
veriom_update_finding_lifecyclewith a reason, orveriom_start_repository_auditso the next audit confirms the fix.
To hand over one finding, open it in Veriom and click Copy for agent. Findings and their evidence come from your code and from scanners: the agent treats them as data, not as instructions.
Tools
Every tool's name starts with veriom_. Read tools are marked read-only, which many clients use to run them without asking you each time.
| Area | Tools |
|---|---|
| Start here | veriom_get_readiness, veriom_get_activity, veriom_get_plan_usage, veriom_get_evidence_health, veriom_list_members |
| Repositories | veriom_list_repositories, veriom_get_repository, veriom_get_repository_health |
| Audits | veriom_list_audits, veriom_get_audit, veriom_get_audit_logs, veriom_start_repository_audit, veriom_retry_audit, veriom_cancel_audit, veriom_start_upload_audit |
| Findings | veriom_list_findings, veriom_get_finding, veriom_get_findings_summary, veriom_list_finding_comments, veriom_add_finding_comment, veriom_update_finding_triage, veriom_update_finding_lifecycle, veriom_get_finding_architecture_context |
| Remediations | veriom_list_remediations, veriom_get_remediation_execution, veriom_request_remediation |
| Architecture | veriom_get_architecture_map, veriom_get_architecture_assessment, veriom_list_architecture_decisions, veriom_preview_intent_proposal, veriom_submit_intent_proposal |
| Compliance and reports | veriom_list_compliance_programs, veriom_get_compliance_program, veriom_list_reports, veriom_get_report |
| Workflows | veriom_list_audit_schedules, veriom_list_audit_trigger_policies |
| Evidence and uploads | veriom_get_ingestion_capabilities, veriom_submit_evidence_batch, veriom_submit_cloud_snapshot, veriom_create_artifact_upload, veriom_complete_artifact_upload, veriom_get_ingestion_status |
| Vulnerabilities | veriom_search_cves, veriom_get_cve |
| Everything else | veriom_list_operations, veriom_call_operation |
veriom_list_operations names the areas of further workspace operations your connection may call, such as webhooks, audit schedules or finding watchers. Give it an area, or search words, to list the operations in it. veriom_call_operation calls one of them. The scope and role each needs are the same as in the API. Event streams and file downloads stay in the app.
Each tool's scope and hints are listed at https://mcp.veriom.ai/.well-known/mcp.json. The names from before 11 November 2026 (list_findings, get_finding, start_audit and the rest) keep working until 31 December 2026.
Limits
- One connection works in one workspace. Connect again to use another.
- A client never gets more than you have: your role in the workspace decides, as in the app.
- List tools return 20 items by default and at most 100 (
veriom_list_findings: at most 50). Ask for the next page withcursor. A very large answer is cut, with a note to narrow it. - Files such as report downloads and exports stay in the app.
veriom_list_membersleaves out email addresses. - A CI token bound to one repository cannot use MCP.
- Your workspace's access policy applies. A client outside the allowed networks gets
ip_not_allowed. - ZIP uploads follow the same limits as the app: 1 GB per file. See Connect a repository.
If something goes wrong
| Problem | Fix |
|---|---|
| The browser never opens | Your client may not support MCP sign-in. Use an API key |
401 with an API key | The token expired, was revoked, or was deactivated. Create or reactivate it in Settings → API tokens |
| A message naming a scope | The connection lacks it. Connect again and allow it, or create a token with it |
accepted_risk stays a person's decision in the Veriom app | Accept the risk on the finding in Veriom |
is not available over MCP | The operation stays in the app, or your connection lacks its scope |
ip_not_allowed | Connect from a network your workspace allows, or ask an Admin to add it |
| The intent tools are refused | Ask an Admin to turn on architecture intent, and check that your role is Analyst or above |
Was this guide useful?
Your response stays in this browser unless you open a GitHub issue.