KnoxCall · Schema
AiGatewayMcpServer
An MCP server KnoxCall proxies and governs. `connect_url` and `resource` are deliberately different values — see their descriptions.
CompanyAPI ManagementSecurityDevOpsAI Agents
Properties
| Name | Type | Description |
|---|---|---|
| id | string | |
| gateway_id | stringnull | |
| name | string | |
| slug | stringnull | Lowercase machine handle; the last segment of `connect_url`. |
| description | stringnull | |
| server_type | string | Only `upstream` can be created today; `collection` is not served yet. |
| transport | stringnull | |
| upstream_url | stringnull | The upstream MCP endpoint. Always a public `https://` address. |
| allowed_tools | array | Tool names this server may advertise. EMPTY MEANS IT ADVERTISES NOTHING — a client sees an empty tool list. |
| pii_inspection | boolean | Inspect tool arguments and results for PII. |
| pii_redact_policy_id | stringnull | The tenant PII policy whose recognizers apply to this server's tool arguments and results (AIGW-151). Null means every enabled recognizer this tenant owns, on top of the shipped built-ins. Before AIGW |
| firewall_policy_id | stringnull | Prompt-injection firewall policy applied to this server's tool traffic. |
| guardrail_webhook_url | stringnull | The tenant's own external scanner (AIGW-150). https only, no embedded credentials, and the destination is SSRF-checked at write time and again on every call. Unlike `/v1/ai` there is no streaming carv |
| guardrail_webhook_secret_id | stringnull | KnoxCall secret holding the HMAC key deliveries are signed with. |
| guardrail_webhook_mode | string | Which directions are offered to the scanner. `request` sees the tool ARGUMENTS after PII redaction and before they leave; `response` sees the tool RESULT after redaction and before it is returned. A ` |
| guardrail_webhook_timeout_ms | integer | |
| guardrail_webhook_failure_action | string | What happens when the scanner cannot be reached or does not answer. |
| auth | object | Upstream auth. Only `{ headers, environment_name }` is supported, and every header value must reference a KnoxCall secret, so this object never contains a credential. |
| sandbox | boolean | Which Live/Test space this server lives in (AIGW-152). READ-ONLY: it is taken from the mode of the request that created the server (a test API key on the sandbox host makes a Test server) and cannot b |
| status | string | |
| created_at | string | |
| updated_at | string | |
| connect_url | string | Where an MCP client points. Served on the tenant data-plane host. |
| resource | string | The RFC 8707 `resource` a token for this server must be bound to. A token bound to a different resource is refused at this server. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/knoxcall/main/json-schema/knoxcall-ai-gateway-mcp-server-schema.json",
"title": "AiGatewayMcpServer",
"description": "An MCP server KnoxCall proxies and governs. `connect_url` and `resource`\nare deliberately different values — see their descriptions.\n",
"x-generated": "2026-10-18",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/knoxcall-openapi.json#/components/schemas/AiGatewayMcpServer",
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"gateway_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"name": {
"type": "string"
},
"slug": {
"type": [
"string",
"null"
],
"description": "Lowercase machine handle; the last segment of `connect_url`."
},
"description": {
"type": [
"string",
"null"
]
},
"server_type": {
"type": "string",
"enum": [
"upstream",
"collection"
],
"description": "Only `upstream` can be created today; `collection` is not served yet."
},
"transport": {
"type": [
"string",
"null"
],
"enum": [
"streamable_http",
"sse",
null
]
},
"upstream_url": {
"type": [
"string",
"null"
],
"format": "uri",
"description": "The upstream MCP endpoint. Always a public `https://` address."
},
"allowed_tools": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tool names this server may advertise. EMPTY MEANS IT ADVERTISES NOTHING — a client sees an empty tool list."
},
"pii_inspection": {
"type": "boolean",
"description": "Inspect tool arguments and results for PII."
},
"pii_redact_policy_id": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "The tenant PII policy whose recognizers apply to this server's tool arguments and results (AIGW-151). Null means every enabled recognizer this tenant owns, on top of the shipped built-ins. Before AIGW-151 the MCP plane used one built-in-only detector stack built at boot, so no tenant recognizer ever applied to tool traffic."
},
"firewall_policy_id": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "Prompt-injection firewall policy applied to this server's tool traffic."
},
"guardrail_webhook_url": {
"type": [
"string",
"null"
],
"format": "uri",
"description": "The tenant's own external scanner (AIGW-150). https only, no embedded credentials, and the destination is SSRF-checked at write time and again on every call. Unlike `/v1/ai` there is no streaming carve-out — the MCP transport materialises every JSON-RPC message, so both directions are always inspectable."
},
"guardrail_webhook_secret_id": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "KnoxCall secret holding the HMAC key deliveries are signed with."
},
"guardrail_webhook_mode": {
"type": "string",
"enum": [
"off",
"request",
"response",
"both"
],
"description": "Which directions are offered to the scanner. `request` sees the tool ARGUMENTS after PII redaction and before they leave; `response` sees the tool RESULT after redaction and before it is returned. A `block` verdict refuses the call."
},
"guardrail_webhook_timeout_ms": {
"type": "integer",
"minimum": 100,
"maximum": 10000
},
"guardrail_webhook_failure_action": {
"type": "string",
"enum": [
"fail_open",
"fail_closed"
],
"description": "What happens when the scanner cannot be reached or does not answer."
},
"auth": {
"type": "object",
"additionalProperties": true,
"description": "Upstream auth. Only `{ headers, environment_name }` is supported, and every header value must reference a KnoxCall secret, so this object never contains a credential."
},
"sandbox": {
"type": "boolean",
"description": "Which Live/Test space this server lives in (AIGW-152). READ-ONLY: it is taken from the mode of the request that created the server (a test API key on the sandbox host makes a Test server) and cannot be set or changed through the API, for the same reason the mode is never a request field anywhere else — a body that could choose it would let a Test caller create a Live server whose `auth` reference resolves a LIVE secret. Reads and writes are confined to the calling key's own space, so a Live key does not see a Test server at all. On the data plane the confinement is the capability token's: a `kp_test_` token against a Live server is a 404. The same slug may exist in both spaces, so an MCP client's configuration does not change between them."
},
"status": {
"type": "string",
"enum": [
"active",
"paused",
"archived"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"connect_url": {
"type": "string",
"format": "uri",
"description": "Where an MCP client points. Served on the tenant data-plane host."
},
"resource": {
"type": "string",
"format": "uri",
"description": "The RFC 8707 `resource` a token for this server must be bound to. A token bound to a different resource is refused at this server."
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/knoxcall-ai-gateway-mcp-server"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.