{"openapi":"3.0.3","info":{"title":"Host UK MCP API","description":"HTTP API for interacting with Host UK MCP servers. Execute tools, read resources, and discover available capabilities.","version":"1.0.0","contact":{"name":"Host UK Support","url":"https:\/\/host.uk.com\/contact","email":"support@host.uk.com"},"license":{"name":"Proprietary","url":"https:\/\/host.uk.com\/terms"}},"servers":[{"url":"https:\/\/mcp.host.uk.com\/api\/v1\/mcp","description":"Production"},{"url":"https:\/\/mcp.test\/api\/v1\/mcp","description":"Local development"}],"tags":[{"name":"Discovery","description":"Server and tool discovery endpoints"},{"name":"Execution","description":"Tool execution endpoints"},{"name":"CorePHP Agentic","description":"Work plans, agent sessions, and content generation"},{"name":"OpenBrain","description":"Shared agent knowledge store with vector search"},{"name":"ContentShield","description":"AI content detection and sycophancy scoring engine"}],"paths":{"\/servers":{"get":{"tags":["Discovery"],"summary":"List all MCP servers","operationId":"listServers","security":[{"bearerAuth":[]},{"apiKeyAuth":[]}],"responses":{"200":{"description":"List of available servers","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ServerList"}}}}}}},"\/servers\/{serverId}":{"get":{"tags":["Discovery"],"summary":"Get server details","operationId":"getServer","security":[{"bearerAuth":[]},{"apiKeyAuth":[]}],"parameters":[{"name":"serverId","in":"path","required":true,"schema":{"type":"string"},"description":"Server identifier"}],"responses":{"200":{"description":"Server details with tools and resources","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Server"}}}},"404":{"description":"Server not found"}}}},"\/servers\/{serverId}\/tools":{"get":{"tags":["Discovery"],"summary":"List tools for a server","operationId":"listServerTools","security":[{"bearerAuth":[]},{"apiKeyAuth":[]}],"parameters":[{"name":"serverId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"List of tools","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ToolList"}}}}}}},"\/servers\/{serverId}\/resources":{"get":{"tags":["Discovery"],"summary":"List resources for a server","operationId":"listServerResources","security":[{"bearerAuth":[]},{"apiKeyAuth":[]}],"parameters":[{"name":"serverId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"List of resources","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ResourceList"}}}}}}},"\/tools\/call":{"post":{"tags":["Execution"],"summary":"Execute an MCP tool","operationId":"callTool","security":[{"bearerAuth":[]},{"apiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ToolCallRequest"}}}},"responses":{"200":{"description":"Tool executed successfully","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ToolCallResponse"}}}},"400":{"description":"Invalid request"},"401":{"description":"Unauthorized"},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}}}},"\/resources\/{uri}":{"get":{"tags":["Execution"],"summary":"Read a resource","operationId":"readResource","security":[{"bearerAuth":[]},{"apiKeyAuth":[]}],"parameters":[{"name":"uri","in":"path","required":true,"schema":{"type":"string"},"description":"Resource URI (server:\/\/path)"}],"responses":{"200":{"description":"Resource content","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ResourceResponse"}}}}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key in Bearer format: hk_xxx_yyy"},"apiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key","description":"API key header"}},"schemas":{"ServerList":{"type":"object","properties":{"servers":{"type":"array","items":{"$ref":"#\/components\/schemas\/ServerSummary"}},"count":{"type":"integer"}}},"ServerSummary":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"tagline":{"type":"string"},"status":{"type":"string","enum":["available","beta","deprecated"]},"tool_count":{"type":"integer"},"resource_count":{"type":"integer"}}},"Server":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"tagline":{"type":"string"},"description":{"type":"string"},"tools":{"type":"array","items":{"$ref":"#\/components\/schemas\/Tool"}},"resources":{"type":"array","items":{"$ref":"#\/components\/schemas\/Resource"}}}},"Tool":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"inputSchema":{"type":"object","additionalProperties":true}}},"Resource":{"type":"object","properties":{"uri":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"}}},"ToolList":{"type":"object","properties":{"server":{"type":"string"},"tools":{"type":"array","items":{"$ref":"#\/components\/schemas\/Tool"}},"count":{"type":"integer"}}},"ToolCallRequest":{"type":"object","required":["server","tool"],"properties":{"server":{"type":"string","description":"Server ID"},"tool":{"type":"string","description":"Tool name"},"arguments":{"type":"object","description":"Tool arguments","additionalProperties":true}}},"ToolCallResponse":{"type":"object","properties":{"success":{"type":"boolean"},"server":{"type":"string"},"tool":{"type":"string"},"result":{"type":"object","additionalProperties":true},"duration_ms":{"type":"integer"},"error":{"type":"string"}}},"ResourceResponse":{"type":"object","properties":{"uri":{"type":"string"},"content":{"type":"object","additionalProperties":true}}},"ResourceList":{"type":"object","properties":{"server":{"type":"string"},"resources":{"type":"array","items":{"$ref":"#\/components\/schemas\/Resource"}},"count":{"type":"integer"}}}}}}