Mcp Gateway — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Mcp Gateway (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Authorization gateway for AI agents and MCP tool calls.
Open-source. Drop-in. Works with any MCP client.
AI agents connected to MCP servers can call any tool they have access to — read your database, delete files, execute arbitrary SQL. Vengtoo MCP Gateway puts a policy enforcement point between the agent and those tools, so every call is authorized before it executes.
{"ts":"2026-05-25T10:03:11.482Z","level":"info","msg":"mcp_tool_call","subject":"agent:ai-assistant","tool":"database__query","allowed":true,"latency_ms":0.8}go install github.com/vengtoo/agent/cmd/agent@latest
vengtoo-agent --policy ./policy.regoCreate a policy.rego to define what your agent can do:
package vengtoo.mcp
default allow := false
# Allow read-only tools
allow if { input.resource.name == "database__query" }
allow if { input.resource.name == "database__list_tables" }
# Allow writes, but block destructive SQL
allow if {
input.resource.name == "database__execute"
not contains(lower(input.resource.attributes.sql), "drop")
not contains(lower(input.resource.attributes.sql), "delete from")
}See demo/policies/ for more examples including Kubernetes namespace protection.
gateway.config.json:{
"vengtoo": {
"agentUrl": "http://localhost:8181"
},
"subject": "agent:ai-assistant",
"servers": {
"database": {
"command": "node",
"args": ["./my-database-mcp-server.js"]
}
}
}claude mcp add --transport stdio vengtoo-gateway -- \
npx vengtoo-mcp-gateway --config /path/to/gateway.config.json| Field | Type | Required | Description |
|---|---|---|---|
vengtoo.agentUrl | string | \* | URL of local Vengtoo Agent (local mode) |
vengtoo.cloudUrl | string | \* | URL of Vengtoo Cloud API (cloud mode) |
vengtoo.apiKey | string | API key from Vengtoo Cloud (or set VENGTOO_API_KEY env var) | |
vengtoo.timeoutMs | number | Authorization request timeout (default: 5000) | |
subject | string | yes | Identity of the agent making tool calls |
subjectType | string | Subject type (default: "agent") | |
resourceType | string | Resource type for authorization checks (default: "mcp_tool") | |
servers | object | yes | Map of downstream MCP servers to proxy |
\* Provide either agentUrl (local mode) or cloudUrl (cloud mode).
Each entry in servers has:
| Field | Type | Required | Description |
|---|---|---|---|
command | string | yes | Command to spawn the MCP server |
args | string[] | Command arguments | |
env | object | Additional environment variables |
Connect to Vengtoo Cloud for managed policies:
{
"vengtoo": {
"cloudUrl": "https://api.vengtoo.com/access/v1/evaluation",
"apiKey": "azx_..."
},
"subject": "agent:prod-assistant",
"servers": {
"database": {
"command": "node",
"args": ["./db-server.js"]
}
}
}Run the Vengtoo Agent locally with a .rego policy file for offline, self-contained authorization:
# Start the agent with your policy
vengtoo-agent --policy ./policy.rego{
"vengtoo": {
"agentUrl": "http://localhost:8181"
},
"subject": "agent:dev-assistant",
"servers": {
"database": {
"command": "node",
"args": ["./db-server.js"]
}
}
}| Flag | Description |
|---|---|
--config <path> | Path to gateway config file (default: ./gateway.config.json) |
--list-tools | List all tools from configured downstream servers and exit |
--generate-policy [path] | Generate a starter .rego policy file for the configured tools (default: policy.rego) |
Environment variable overrides: VENGTOO_API_KEY, VENGTOO_AGENT_URL, AUTHZX_SUBJECT.
The gateway runs as a stdio MCP server. Point your MCP client at it instead of the downstream server directly.
claude mcp add --transport stdio vengtoo-gateway -- \
npx vengtoo-mcp-gateway --config /path/to/gateway.config.jsonAdd to .cursor/mcp.json:
{
"mcpServers": {
"vengtoo-gateway": {
"command": "npx",
"args": ["vengtoo-mcp-gateway", "--config", "/path/to/gateway.config.json"]
}
}
}Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"vengtoo-gateway": {
"command": "npx",
"args": ["vengtoo-mcp-gateway", "--config", "/path/to/gateway.config.json"]
}
}
}Add to .vscode/mcp.json:
{
"servers": {
"vengtoo-gateway": {
"type": "stdio",
"command": "npx",
"args": ["vengtoo-mcp-gateway", "--config", "/path/to/gateway.config.json"]
}
}
}See demo/ for full end-to-end examples with sample policies.
Apache-2.0 — see LICENSE.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.