Docs
Connect your AI coding agent
Your coding agent reads each Zentinel finding with its fix, changes your code, runs your tests and asks us to retest. A security engineer verifies the fix, and the finding closes only when our retest confirms it.
1. Create an API key
In your Zentinel portal, open Integrations → AI coding agents. Your organization’s owner or security admin creates the key, chooses what it can do and when it expires. The key is shown once. Save it as an environment variable on the machine where your agent runs, in your terminal, not in an AI chat:
2. Connect your agent
Easiest: paste this prompt into your agent. It adds Zentinel to its own settings, checks the connection and lists your open findings. It reads your key from ZENTINEL_API_KEY, so the key never goes into the chat.
Or set it up yourself:
Claude Code
Run this once in your terminal:
Then type /mcp in Claude Code to check that zentinel is connected.
Cursor
Add this to ~/.cursor/mcp.json (your user settings, not the project):
Restart Cursor, then check Settings → MCP shows zentinel in green.
VS Code + Copilot
Add this to your user MCP configuration (Command Palette → “MCP: Open User Configuration”):
VS Code asks for the key once and keeps it in its secure storage. Use Copilot in Agent mode.
Windsurf
Add this to ~/.codeium/windsurf/mcp_config.json:
Refresh the MCP servers list in Cascade to load it.
Codex
Add this to ~/.codex/config.toml:
Codex reads the key from the environment variable each time it starts.
Antigravity
In the Agent panel, open … → MCP Servers → Manage MCP Servers → View raw config, and add:
Antigravity keeps this file in your home folder, outside your project. Keep it there and never commit it.
Kiro
Add this to ~/.kiro/settings/mcp.json (your user settings, not the workspace):
Kiro reads the key from the environment variable. Check the MCP Servers panel shows zentinel as connected.
OpenCode
Add this to ~/.config/opencode/opencode.json:
OpenCode reads the key from the environment variable when it starts.
Cline
In Cline, open MCP Servers → Configure → Configure MCP Servers, and add:
This settings file lives in your editor's storage, outside your project. Keep it there and never commit it.
JetBrains IDEs
In IntelliJ IDEA, PyCharm, WebStorm or any JetBrains IDE (2025.2 or later), open Settings → Tools → AI Assistant → Model Context Protocol (MCP) → Add, and paste:
The key is kept in your IDE settings, outside your project. Use AI Assistant or Junie in agent mode.
Other clients
Any client that supports remote MCP servers needs just these two things:
ChatGPT and Claude.ai (the web apps) need a sign-in flow we're adding soon. Until then, use one of the editors above.
3. Ask your agent
- “Use Zentinel to fix my open critical and high findings, one commit per finding, then request a retest for each.”
- “Show me my open Zentinel findings and explain the most severe one. Don't change any code yet.”
- “Fix Zentinel finding <id>, add a test that proves it's fixed, and request a retest.”
What your agent can and can’t do
It can:
- Read your open findings and how to fix them
- Fix the code, run your tests and commit
- Ask us to retest, with the commit that fixes it
It can’t:
- Close a finding or mark it fixed: only our retest does that
- Change a finding's severity or accept a risk
- See another organization's findings
- See raw evidence unless you allow it per request
Tools
whoami: Confirms the connection: your organization, the key's name, what it can do and when it expires.list_findings: Your open findings, most recent first. Filter by severity.get_finding: One finding in full: what's wrong, its impact, how to reproduce it and how to fix it.request_retest: Asks us to retest a fix. Needs the commit SHA or pull request link.get_retest: Where a retest stands and its result.fix_open_findings: a ready-made prompt that works through your open findings one at a time.
REST API
Everything your agent can do is also available as a REST API at https://app.zentinel.dev/api/v1, for your own scripts and CI. The MCP server for agents is at https://app.zentinel.dev/api/mcp.
Full reference: Integrations → API in your portal.
Troubleshooting
- “Unauthorized”: the key expired or was revoked, or
ZENTINEL_API_KEYisn’t set where your agent runs. Create a new key and set the variable again. - No findings: your agent only sees findings that have been reviewed and published to you. Findings still in review don’t appear.
- “Too many requests”: each key allows 60 requests a minute and 5 retest requests an hour. Wait and try again.
- Rotating a key: create a new one, update the environment variable, then revoke the old one. Revoking takes effect immediately.
Still stuck? Email hello@zentinel.dev. Never send your API key by email.