{
  "$schema": "https://modelcontextprotocol.io/schemas/draft/server-card.json",
  "serverInfo": {
    "name": "truth-foundry",
    "title": "TruthFoundry - Verified News Intelligence API",
    "version": "1.55.1",
    "description": "A signed, dated record of world events for humans and AI agents, frozen day by day, with structured fields per article (entities, signals, events, facts) and Ed25519 provenance throughout. 678 publishers in 17 languages in the last 24 hours; 4,835 publishers and 19 languages on the record.",
    "websiteUrl": "https://truthfoundry.ai"
  },
  "capabilities": {
    "tools": {}
  },
  "transport": {
    "type": "http",
    "endpoint": "https://truthfoundry.ai/mcp",
    "note": "Stateless Streamable HTTP MCP server (JSON-RPC over POST /mcp). 13 tools: search_news, list_articles, get_article, get_article_provenance, get_signals, get_trending_topics, search_entities, get_events, search_facts, check_claim, get_digests, list_query_templates, run_query. Ready-to-paste client config at /mcp.json."
  },
  "authentication": {
    "type": "apiKey",
    "header": "X-Newsboy-Key",
    "registration": "https://truthfoundry.ai/pricing",
    "documentation": "https://truthfoundry.ai/llms.txt",
    "note": "Most /v1/* calls (and MCP tools, which dispatch through the same handlers) need a key (Authorization: Bearer <key> also accepted) or an x402 payment (a keyless call answers 402 with the terms). Two free doors need neither: the web record, and GET /v1/factcheck?instruments=1 (the deterministic record readout - the agent contract). Live prices and quotas: https://truthfoundry.ai/pricing.json."
  },
  "documentation": {
    "openapi": "https://truthfoundry.ai/openapi.json",
    "llmsTxt": "https://truthfoundry.ai/llms.txt",
    "apiCatalog": "https://truthfoundry.ai/.well-known/api-catalog",
    "mcp": "https://truthfoundry.ai/mcp",
    "mcpConfig": "https://truthfoundry.ai/mcp.json"
  }
}