{"openapi":"3.1.0","info":{"title":"PlatPhormNews MCP Gateway API","version":"0.1.0","description":"Canonical MCP gateway, capability registry, micro-factory, MCP/API bridge, and agent tool gateway. Live counts: 140 tools, 16 resources, 23 prompts."},"servers":[{"url":"https://mcp.platphormnews.com"}],"components":{"securitySchemes":{"PlatformApiKey":{"type":"apiKey","in":"header","name":"X-PlatPhorm-API-Key","description":"PLATPHORM_API_KEY for protected write, sync, proxy, registration, reporting, model, and admin actions."},"PlatformBearer":{"type":"http","scheme":"bearer","description":"Bearer PLATPHORM_API_KEY for protected write, sync, proxy, registration, reporting, model, and admin actions."}}},"paths":{"/api/health":{"get":{"summary":"Public health summary","security":[],"responses":{"200":{"description":"Health summary"}}}},"/api/mcp":{"get":{"summary":"MCP metadata","security":[],"responses":{"200":{"description":"MCP metadata"}}},"post":{"summary":"JSON-RPC 2.0 MCP endpoint","responses":{"200":{"description":"JSON-RPC response"}}}},"/api/v1/registry/snapshot":{"get":{"summary":"Canonical registry snapshot","security":[],"responses":{"200":{"description":"Registry snapshot"}}}},"/api/v1/registry/reconcile":{"get":{"summary":"Registry reconciliation summary","security":[],"responses":{"200":{"description":"Reconciliation summary"}}}},"/api/v1/registry/counts":{"get":{"summary":"Canonical and Phase 2 registry counts","security":[],"responses":{"200":{"description":"Registry counts"}}}},"/api/v1/registry/drift":{"get":{"summary":"Source-labeled registry count drift report","security":[],"responses":{"200":{"description":"Registry drift report"}}}},"/api/v1/registry/federated-tools":{"get":{"summary":"Source-labeled remote MCP tools discovered from trusted PlatPhormNews endpoints","security":[],"parameters":[{"name":"live","in":"query","schema":{"type":"string","enum":["0","1"]},"description":"Set live=1 to probe trusted remote tools/list endpoints."}],"responses":{"200":{"description":"Federated MCP registry snapshot"}}}},"/api/v1/discovery/sites":{"get":{"summary":"Public-safe network discovery sites","security":[],"responses":{"200":{"description":"Discovered sites"}}}},"/api/v1/discovery/graph":{"get":{"summary":"Capability graph JSON","security":[],"responses":{"200":{"description":"Capability graph"}}}},"/api/v1/capability-graph":{"get":{"summary":"Canonical capability graph JSON","security":[],"responses":{"200":{"description":"Capability graph"}}}},"/api/v1/factory/tools":{"get":{"summary":"Generated draft tool factory state","security":[],"responses":{"200":{"description":"Draft generated tools"}}}},"/api/v1/factory/status":{"get":{"summary":"Generated draft tool lifecycle and validation status","security":[],"responses":{"200":{"description":"Factory status"}}}},"/api/v1/factory/tools/generate":{"post":{"summary":"Protected generated-tool draft creation","responses":{"200":{"description":"Draft generated tools"},"401":{"description":"PLATPHORM_API_KEY required"}}}},"/api/v1/factory/validate":{"post":{"summary":"Protected generated-tool validation dry-run or trigger","responses":{"200":{"description":"Dry-run handoff envelope"},"401":{"description":"PLATPHORM_API_KEY required"},"503":{"description":"Validation execution degraded"}}}},"/api/v1/factory/publish":{"post":{"summary":"Protected generated-tool publication","responses":{"401":{"description":"PLATPHORM_API_KEY required"},"503":{"description":"Publication degraded until durable approval exists"}}}},"/api/v1/gateway/status":{"get":{"summary":"Public-safe gateway status","security":[],"responses":{"200":{"description":"Gateway status"}}}},"/api/v1/gateway/call":{"post":{"summary":"Public-safe gateway call for trusted discovery artifacts; protected execution requires PLATPHORM_API_KEY","responses":{"200":{"description":"Public artifact probe result"},"401":{"description":"PLATPHORM_API_KEY required for protected execution"},"503":{"description":"Protected execution degraded/unavailable"}}}},"/api/v1/gateway/proxy-mcp":{"post":{"summary":"Safe MCP proxy for trusted public read-only methods; protected methods require PLATPHORM_API_KEY","responses":{"200":{"description":"Public read-only proxy result"},"401":{"description":"PLATPHORM_API_KEY required for protected methods"},"503":{"description":"Protected proxy degraded/unavailable"}}}},"/api/v1/integrations/status":{"get":{"summary":"Integration matrix status","security":[],"responses":{"200":{"description":"Integration status"}}}},"/api/v1/evals":{"get":{"summary":"Public-safe generated eval manifests; no execution results are claimed","security":[],"responses":{"200":{"description":"Generated eval manifest summary"}}}},"/api/v1/evals/run":{"post":{"summary":"Protected eval execution trigger","responses":{"401":{"description":"PLATPHORM_API_KEY required"},"503":{"description":"Eval execution degraded/unavailable"}}}},"/api/v1/sandbox/tests":{"get":{"summary":"Public-safe generated sandbox test manifests; no execution results are claimed","security":[],"responses":{"200":{"description":"Generated sandbox test manifest summary"}}}},"/api/v1/sandbox/run":{"post":{"summary":"Protected sandbox execution trigger","responses":{"401":{"description":"PLATPHORM_API_KEY required"},"503":{"description":"Sandbox execution degraded/unavailable"}}}},"/api/v1/browserops/tests":{"get":{"summary":"Public-safe generated BrowserOps test manifests; no execution results are claimed","security":[],"responses":{"200":{"description":"Generated BrowserOps test manifest summary"}}}},"/api/v1/browserops/run":{"post":{"summary":"Protected BrowserOps execution trigger","responses":{"401":{"description":"PLATPHORM_API_KEY required"},"503":{"description":"BrowserOps execution degraded/unavailable"}}}},"/api/v1/agent-policy":{"get":{"summary":"Agent policy","security":[],"responses":{"200":{"description":"Agent policy"}}}},"/api/v1/client-profiles":{"get":{"summary":"Secret-safe MCP client connection profiles","security":[],"responses":{"200":{"description":"Client profiles"}}}},"/.well-known/agent-policy.json":{"get":{"summary":"Well-known agent policy","security":[],"responses":{"200":{"description":"Agent policy"}}}},"/.well-known/ai-policy.json":{"get":{"summary":"Well-known AI policy","security":[],"responses":{"200":{"description":"AI policy"}}}},"/.well-known/trust.json":{"get":{"summary":"Trust policy","security":[],"responses":{"200":{"description":"Trust policy"}}}},"/.well-known/web4.json":{"get":{"summary":"Web4 manifest","security":[],"responses":{"200":{"description":"Web4 manifest"}}}},"/.well-known/provenance.json":{"get":{"summary":"Public provenance manifest","security":[],"responses":{"200":{"description":"Provenance manifest"}}}},"/api/web4/status":{"get":{"summary":"Web4 status and route evidence","security":[],"responses":{"200":{"description":"Web4 status"}}}},"/api/web4/manifest":{"get":{"summary":"Web4 manifest API","security":[],"responses":{"200":{"description":"Web4 manifest"}}}},"/api/web4/scorecard":{"get":{"summary":"Web4 readiness scorecard","security":[],"responses":{"200":{"description":"Web4 scorecard"}}}},"/api/web4/fingerprints":{"get":{"summary":"Public-safe capability fingerprints","security":[],"responses":{"200":{"description":"Public fingerprints"}}}},"/api/provenance/lookup":{"get":{"summary":"Public provenance lookup","security":[],"responses":{"200":{"description":"Provenance lookup"}}}},"/api/provenance/verify":{"get":{"summary":"Public provenance verification","security":[],"responses":{"200":{"description":"Provenance verification"}}}},"/api/v1/audit":{"get":{"summary":"Protected audit preview/export boundary","responses":{"200":{"description":"Audit envelope preview"},"401":{"description":"PLATPHORM_API_KEY required"}}},"post":{"summary":"Protected audit export","responses":{"401":{"description":"PLATPHORM_API_KEY required"},"503":{"description":"Durable audit export degraded"}}}},"/asyncapi.yaml":{"get":{"summary":"AsyncAPI event contract","security":[],"responses":{"200":{"description":"AsyncAPI YAML"}}}},"/api/v1/network/discovery-compliance":{"get":{"summary":"Discovery compliance summary","security":[],"responses":{"200":{"description":"Discovery compliance summary"}}}},"/api/v1/model/summarize-capability":{"post":{"summary":"Protected model scaffold: summarize capability","responses":{"401":{"description":"PLATPHORM_API_KEY required"},"503":{"description":"Model provider unavailable"}}}},"/faq":{"get":{"summary":"FAQ page","security":[],"responses":{"200":{"description":"FAQ page"}}}},"/llms-index.json":{"get":{"summary":"Structured LLM/MCP index","security":[],"responses":{"200":{"description":"LLM index"}}}}},"x-mcp":{"protocolVersion":"2024-11-05","counts":{"tools":140,"resources":16,"prompts":23,"categories":16},"phase2Counts":{"tools":140,"resources":16,"prompts":23,"categories":16,"registeredSites":177,"generatedTools":11,"draftTools":11,"protectedTools":39,"publicTools":101,"degradedTools":11,"integrations":11,"policyPlatforms":12,"mcpClientsSupported":13,"evals":11,"sandboxTests":11,"browserOpsTests":11},"canonicalSources":{"registry":"in-process MCP registry from registered handlers","registeredSites":"https://platphormnews.com/api/network/graph","sitemapIndex":"https://base.platphormnews.com/sitemap-index.xml","storage":"Redis/DynamoDB are dependency and cache surfaces, not canonical MCP count sources"},"storage":{"redis":{"status":"connected","latencyMs":58,"canonical":false,"note":"Redis is connected for live/cache state and storage metadata. MCP counts still come from the canonical registry."},"dynamodb":{"status":"degraded","latencyMs":12,"table":"aws-dynamodb-fuchsia-yacht","accessMode":"READ_ONLY","canonical":false,"note":"DynamoDB is unavailable/read-only and is not the canonical registry for live MCP counts."}},"tools":["get_network_info","network_status","get_network_sites","discover_network_sites","list_federated_mcp_tools","resolve_trusted_site","get_network_mcp_servers","resolve_network_domain","fetch_network_sitemap","discover_site_api","get_site_health","list_articles","get_article","create_article","update_article","delete_article","publish_article","list_categories","create_category","update_category","delete_category","list_faqs","create_faq","update_faq","delete_faq","search_articles","get_analytics","list_org_repos","get_repo_details","get_org_info","search_org_code","get_trending_repos","list_sites","get_site","register_site","generate_site_token","register_capability","update_site","resolve_domain","list_site_domains","sync_sitemap","crawl_site_capabilities","validate_site_mcp","list_events","get_audit_trail","emit_event","list_deployments","record_deployment","get_deployment","search_all_sites","aggregate_analytics","get_platform_stats","search_producthunt","get_producthunt_post","trending_producthunt","list_mcp_servers","proxy_mcp_call","track_event","list_recent_events","list_neon_infrastructure","list_render_infrastructure","list_vercel_infrastructure","get_vercel_project_details","search_capability_graph","get_subdomain_orchestration_profile","get_network_health_summary","get_quake_stats","search_platform_jobs","get_fashion_trends","get_claws_intelligence","sync_network_graph","list_network_sites","list_trusted_domains","get_route_compliance","get_discovery_compliance","get_network_capability_matrix","list_capabilities","get_capability","deprecate_capability","validate_capability","reconcile_registry_counts","get_mcp_server","sync_mcp_server","validate_mcp_server","validate_discovery_files","read_llms_file","read_llms_index","validate_openapi","validate_rss","validate_sitemap","validate_well_known_files","validate_no_dead_sitemap_links","create_docs_report","create_sheet_report","create_deck_summary","summarize_capability","recommend_tools","explain_tool_risk","generate_client_config","generate_remediation_summary","get_network_graph","list_registered_sites","list_tools","get_tool","list_resources","get_resource","list_prompts","get_prompt","get_gateway_status","get_integration_status","get_client_config","get_ide_instructions","get_agent_policy","list_agent_platforms","get_agent_platform","evaluate_agent_access","get_robots_policy","get_ai_policy","get_trust_policy","get_discovery_manifest","get_public_access_summary","get_health","get_info","unregister_site","refresh_site_discovery","generate_tools_from_site","validate_generated_tool","publish_generated_tool","run_eval","run_sandbox_test","run_browserops_test","update_agent_policy","refresh_agent_platform_registry","export_agent_audit_report","create_agent_policy_report","dynamo_list_sites","dynamo_get_site","dynamo_list_articles","dynamo_list_events","dynamo_table_info"]}}