{"openapi":"3.0.3","info":{"title":"Fenceline MCP Server API","description":"AI-powered business automation server using Model Context Protocol for fence contractors and construction businesses","version":"0.2.0","contact":{"name":"Fenceline Support","url":"https://fenceline.ai/support","email":"support@fenceline.ai"},"license":{"name":"Proprietary","url":"https://fenceline.ai/license"},"termsOfService":"https://fenceline.ai/terms"},"servers":[{"url":"https://mcp.fenceline.ai","description":"Production MCP Server"},{"url":"https://fenceline-mcp-preview.fly.dev","description":"Preview/Testing MCP Server"}],"paths":{"/":{"get":{"summary":"Server Information","description":"Get comprehensive server information, capabilities, and available transports","responses":{"200":{"description":"Server information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerInfo"},"example":{"name":"Fenceline MCP Server","description":"AI-powered business automation server using Model Context Protocol","version":"0.2.0","status":"healthy","transports":{"sse":{"endpoint":"/mcp/sse"},"jsonrpc":{"endpoint":"/mcp/rpc"}}}},"text/html":{"schema":{"type":"string"},"example":"<!DOCTYPE html>..."}}}}}},"/health":{"get":{"summary":"Health Check","description":"Check server health status and uptime","responses":{"200":{"description":"Server is healthy","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthStatus"}}}}}}},"/mcp/info":{"get":{"summary":"MCP Transport Information","description":"Detailed information about available MCP transports and endpoints","responses":{"200":{"description":"MCP transport information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpInfo"}}}}}}},"/mcp/console":{"get":{"summary":"Interactive Console","description":"Web-based interactive console for testing MCP tools","responses":{"200":{"description":"Interactive console HTML page","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/mcp/tools.json":{"get":{"summary":"Tools Catalog","description":"Complete catalog of available MCP tools with examples and documentation","responses":{"200":{"description":"Tools catalog","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolsCatalog"}}}}}}},"/mcp/.well-known/mcp-server.json":{"get":{"summary":"MCP Server Discovery","description":"Machine-readable server discovery endpoint for MCP aggregators and clients","responses":{"200":{"description":"Server discovery information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerDiscovery"}}}}}}},"/mcp/rpc":{"post":{"summary":"JSON-RPC MCP Endpoint","description":"Execute MCP tools via JSON-RPC protocol","security":[{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcRequest"},"examples":{"list_tools":{"summary":"List available tools","value":{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}},"call_tool":{"summary":"Call a specific tool","value":{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"rag.search","arguments":{"query":"fence materials","topK":5}}}}}}}},"responses":{"200":{"description":"JSON-RPC response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcResponse"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/sitemap.xml":{"get":{"summary":"XML Sitemap","description":"Search engine sitemap for crawling and indexing","responses":{"200":{"description":"XML sitemap","content":{"application/xml":{"schema":{"type":"string"}}}}}}},"/robots.txt":{"get":{"summary":"Robots.txt","description":"Search engine crawler instructions","responses":{"200":{"description":"Robots.txt content","content":{"text/plain":{"schema":{"type":"string"}}}}}}}},"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key","description":"API key for MCP server access"}},"schemas":{"ServerInfo":{"type":"object","properties":{"name":{"type":"string","example":"Fenceline MCP Server"},"description":{"type":"string"},"version":{"type":"string","example":"0.2.0"},"status":{"type":"string","enum":["healthy","degraded","unhealthy"]},"uptime_seconds":{"type":"number"},"active_sessions":{"type":"number"},"transports":{"type":"object"},"authentication":{"type":"object"},"examples":{"type":"object"},"tool_categories":{"type":"array","items":{"type":"string"}}}},"HealthStatus":{"type":"object","properties":{"status":{"type":"string","enum":["healthy","degraded","unhealthy"]},"timestamp":{"type":"string","format":"date-time"},"uptime_seconds":{"type":"number"},"version":{"type":"string"}}},"McpInfo":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"},"transports":{"type":"object"},"authentication":{"type":"object"},"examples":{"type":"object"}}},"ToolsCatalog":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"server_url":{"type":"string"},"tools_count":{"type":"number"},"categories":{"type":"object"},"tools":{"type":"array","items":{"$ref":"#/components/schemas/Tool"}},"examples":{"type":"object"},"updated_at":{"type":"string","format":"date-time"}}},"Tool":{"type":"object","properties":{"name":{"type":"string","example":"rag.search"},"description":{"type":"string"},"inputSchema":{"type":"object"},"category":{"type":"string"},"endpoint":{"type":"string"},"authentication_required":{"type":"boolean"},"rate_limited":{"type":"boolean"},"example_usage":{"type":"object"}}},"ServerDiscovery":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"},"description":{"type":"string"},"homepage":{"type":"string"},"documentation":{"type":"string"},"repository":{"type":"string"},"logo":{"type":"string"},"transports":{"type":"object"},"endpoints":{"type":"object"},"categories":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"}},"industry":{"type":"string"},"use_cases":{"type":"array","items":{"type":"string"}},"technical_specs":{"type":"object"},"contact":{"type":"object"},"compliance":{"type":"object"},"updated_at":{"type":"string","format":"date-time"},"schema_version":{"type":"string"}}},"JsonRpcRequest":{"type":"object","required":["jsonrpc","id","method"],"properties":{"jsonrpc":{"type":"string","enum":["2.0"]},"id":{"oneOf":[{"type":"string"},{"type":"number"}]},"method":{"type":"string","enum":["tools/list","tools/call"]},"params":{"type":"object"}}},"JsonRpcResponse":{"type":"object","required":["jsonrpc","id"],"properties":{"jsonrpc":{"type":"string","enum":["2.0"]},"id":{"oneOf":[{"type":"string"},{"type":"number"}]},"result":{"type":"object"},"error":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object"}}}}},"ErrorResponse":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"code":{"type":"number"}}}}},"tags":[{"name":"Server Information","description":"Endpoints for server status and capabilities"},{"name":"MCP Tools","description":"Model Context Protocol tool execution"},{"name":"Discovery","description":"Machine-readable discovery endpoints"},{"name":"SEO","description":"Search engine optimization endpoints"}],"externalDocs":{"description":"Fenceline MCP Server Documentation","url":"https://mcp.fenceline.ai/mcp/docs"}}