okgate MCP
okgate (formerly agentguard) is a policy proxy for agent tool calls that provides spend caps, kill switches, and audit logging. The MCP server allows agents to retrieve machine-readable pricing and generate detailed spend reports from agent logs to monitor costs and detect loops.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://agentwares-agentguard.vercel.app/api/mcpWhat its tools do
7 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Can change data (3)
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Retrieve machine-readable pricing for okgate hosted bands and features
- Read an agent log to report totals, calls by tool, and estimated dollars
- Identify loops and the exact cap that would have stopped overspending
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- okgate 0.2.1
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 7 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
},
"logging": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
7 advertised
okgate_get_pricing
Machine-readable pricing for okgate hosted: bands (Starter/Pro/Team) with included tool calls per month, the 80% soft alert and 150% hard stop, features, the free trial allowance, `per_call` — buying tool calls outright at POST /api/v1/calls from a prepaid balance, which is the one purchase here an unattended agent can complete — and `one_time`: reports a person pays for once on Stripe Checkout, such as the $49 EU AI Act Article 50 readiness report. Same data as /pricing.json.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}okgate_spend_report
Read an agent log and report what it spent: totals, calls by tool and by class, estimated dollars by rail, loops, the largest single run, and — for every overspend — the okgate band whose cap would have stopped it, the exact cap, and the call that would have tripped it. Needs no account and no key. The log is read in the request and discarded; nothing is stored. Accepts an agentwares audit export (`agentwares.audit/v1`), a Claude Code session `.jsonl`, or a CSV/JSONL of tool calls with any of `tool`, `ts`, `class`, `amount_usd`, `rail`, `run_id`, `model`, `input_tokens`, `output_tokens`. Caps come from the proxy's own default policy, so a band named here refuses exactly what it says it refuses. Buying that band is a checkout a person completes; the calls-only purchase an unattended agent can complete is in `okgate_get_pricing` instead.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"log"
],
"properties": {
"log": {
"type": "string",
"minLength": 1,
"description": "The log itself, verbatim — JSON, JSONL or CSV. Not a path and not a URL: this server does not fetch anything."
},
"detail": {
"enum": [
"concise",
"full"
],
"type": "string",
"description": "`concise` (default) returns the totals, the top ten tools, the rails, the loops and every overspend. `full` adds the complete per-tool breakdown and the window. Ask for `full` only when you are going to read it."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}okgate_create_proxy
Create a hosted okgate proxy in front of an MCP server. Returns the proxy id, the per-customer MCP URL and the proxy key (shown once). Point your agent's MCP client at the URL with `Authorization: Bearer <key>`. Requires an account key.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"slug",
"upstreamUrl"
],
"properties": {
"mode": {
"enum": [
"dry-run",
"enforce"
],
"type": "string",
"default": "dry-run",
"description": "dry-run records what the policy would have blocked and lets every call through; enforce actually blocks. Start in dry-run."
},
"slug": {
"type": "string",
"maxLength": 40,
"minLength": 2,
"description": "short name, a-z 0-9 -"
},
"upstreamUrl": {
"type": "string",
"format": "uri",
"description": "Streamable HTTP URL of the MCP server to protect"
},
"upstreamName": {
"type": "string",
"maxLength": 32,
"minLength": 1,
"description": "name used to namespace tools when you add more upstreams later"
}
},
"additionalProperties": false
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}okgate_set_policy
Replace a proxy's policy (YAML: mode, upstreams, classify, caps, loop, dry_run, approvals, alerts, chaos, drift). Validated before saving; takes effect within 30 seconds. Requires an account key.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"proxyId",
"policyYaml"
],
"properties": {
"proxyId": {
"type": "string",
"minLength": 6,
"description": "the proxy id returned by okgate_create_proxy"
},
"policyYaml": {
"type": "string",
"maxLength": 64000,
"minLength": 1,
"description": "the complete policy document; it replaces the current one rather than merging"
}
},
"additionalProperties": false
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": true
}okgate_get_run
The incident-shaped report for one run: counts (calls, reads, writes, faked, blocked, spend), the call timeline with decisions, dry-run mutations (what would have changed), ledger entries and the audit-chain verification. Requires an account key.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"proxyId",
"runId"
],
"properties": {
"runId": {
"type": "string",
"minLength": 1,
"description": "the X-Run-Id your agent sent with the calls; one run is one agent session"
},
"proxyId": {
"type": "string",
"minLength": 6,
"description": "the proxy id returned by okgate_create_proxy"
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}okgate_export_audit
Export a run's hash-chained audit entries (prev_hash, hash, redacted args) with the Merkle root, for disputes and questionnaires. Verify offline with sha256(prev_hash + canonical(entry)). Requires an account key.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"proxyId",
"runId"
],
"properties": {
"runId": {
"type": "string",
"minLength": 1,
"description": "the X-Run-Id your agent sent with the calls; one run is one agent session"
},
"proxyId": {
"type": "string",
"minLength": 6,
"description": "the proxy id returned by okgate_create_proxy"
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}okgate_recommend_allowlist
Least-privilege recommendation from the proxy's recorded calls: the minimal tool allowlist, argument keys used per tool, and the upstream tools never used (remove them first). No LLM call here; apply it in the dashboard. Requires an account key.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"proxyId"
],
"properties": {
"proxyId": {
"type": "string",
"minLength": 6,
"description": "the proxy id returned by okgate_create_proxy"
}
},
"additionalProperties": false
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-07: 1 of 1 checks answered
- 2026-11-09: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 413 ms
- 95th percentile latency
- 413 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 413 ms · metadata changed · 7 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http okgate-mcp https://agentwares-agentguard.vercel.app/api/mcpCodex
codex mcp add okgate-mcp --url https://agentwares-agentguard.vercel.app/api/mcpCursor
{
"mcpServers": {
"okgate-mcp": {
"url": "https://agentwares-agentguard.vercel.app/api/mcp"
}
}
}Cline
{
"mcpServers": {
"okgate-mcp": {
"type": "streamableHttp",
"url": "https://agentwares-agentguard.vercel.app/api/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"okgate-mcp": {
"type": "http",
"url": "https://agentwares-agentguard.vercel.app/api/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http okgate-mcp https://agentwares-agentguard.vercel.app/api/mcpClaude Desktop
https://agentwares-agentguard.vercel.app/api/mcpWindsurf
{
"mcpServers": {
"okgate-mcp": {
"serverUrl": "https://agentwares-agentguard.vercel.app/api/mcp"
}
}
}Let your agent find its tools
Find servers like okgate MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.