AgentGateway · JSON Structure

Agentgateway Mcp Target Structure

Configuration for an MCP server target in AgentGateway, defining a connected MCP tool provider.

Type: object Properties: 6 Required: 2
AI GatewayAPI GatewayMCPLLMAgent-to-AgentOpen SourceCNCFObservabilitySecurity

MCPTarget is a JSON Structure definition published by AgentGateway, describing 6 properties, of which 2 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

name type url authentication tools allowedClients

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/agentgateway/refs/heads/main/json-structure/agentgateway-mcp-target-structure.json",
  "name": "MCPTarget",
  "description": "Configuration for an MCP server target in AgentGateway, defining a connected MCP tool provider.",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Unique name for this MCP target.",
      "example": "filesystem-tools"
    },
    "type": {
      "type": "string",
      "description": "The connection type for this MCP target.",
      "enum": [
        "sse",
        "stdio",
        "http"
      ],
      "example": "http"
    },
    "url": {
      "type": "uri",
      "description": "URL of the MCP server endpoint.",
      "example": "http://localhost:3001/mcp"
    },
    "authentication": {
      "type": "object",
      "description": "Authentication configuration for connecting to this MCP server.",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "bearer",
            "apikey",
            "none"
          ],
          "example": "bearer"
        },
        "tokenRef": {
          "type": "string",
          "description": "Reference to the secret containing the authentication token.",
          "example": "mcp-server-token"
        }
      }
    },
    "tools": {
      "type": "array",
      "description": "List of tool names exposed by this MCP target (empty means all tools are available).",
      "items": {
        "type": "string"
      },
      "example": [
        "read_file",
        "write_file",
        "list_directory"
      ]
    },
    "allowedClients": {
      "type": "array",
      "description": "List of client identifiers permitted to use this MCP target.",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "name",
    "type"
  ]
}