Authenticate
Validate the virtual API key.
Agents need more than a proxy. Odock puts a governed MCP gateway between your agents and every upstream server, enforcing auth, access policy, spend limits, and audit records before any tool executes.
One governed path for every tool call.
No request reaches an upstream server until it passes auth, access, inspection, and cost controls. Every outcome is recorded.
Validate the virtual API key.
Confirm access grants and server scope.
Filter tools, payloads, and policies.
Check budgets and quotas before execution.
Proxy upstream via HTTP, SSE, or STDIO.
Log tool, latency, status, and cost.
{
"apiKey": "vk_agent_prod_support",
"mcpServer": "github-tools-http",
"method": "tools/call",
"tool": "delete_file",
"reason": "blocked_tool",
"status": 403
}Odock covers everything platform teams need to run MCP in production: server registration, transport and auth setup, tool-level governance, pricing, and usage records your security team can actually read.
Register servers from a trusted catalog or add them manually. Review transport, auth config, scope, and enabled status before any agent can reach them.
Point every agent to `/v1/mcp/{slug}`. Odock authenticates the caller, confirms access, injects upstream credentials, runs governance checks, and records the outcome. The upstream server never receives an ungoverned request.
1# Call Odock instead of the upstream MCP server2curl "$ODOCK_GATEWAY_URL/v1/mcp/github-tools-http" \3 -H "Authorization: Bearer $ODOCK_API_KEY" \4 -H "Content-Type: application/json" \5 -d '{6 "jsonrpc": "2.0",7 "id": "tools-list-1",8 "method": "tools/list",9 "params": {}10 }'These are the recurring questions that come up when teams move from direct MCP server access to a governed gateway layer.
If your agents can call tools, you need the same level of control you already expect for model traffic. Odock governs both from a single request path.
# Call Odock instead of the upstream MCP servercurl "$ODOCK_GATEWAY_URL/v1/mcp/github-tools-http" \ -H "Authorization: Bearer $ODOCK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": "tools-list-1", "method": "tools/list", "params": {} }'