# fact.guide — Full MCP Server Documentation > Complete tool and resource reference for the fact.guide MCP server. > This server provides distributed fact verification with Capacitor synthesis. ## Connection - Endpoint: https://fact-mcp.forkjoin.ai/mcp - Protocol: MCP 2024-11-05 - Transport: HTTP POST (JSON-RPC 2.0) - Authentication: Bearer token or UCAN DID ## Discovery - Short docs: https://fact-mcp.forkjoin.ai/llms.txt - Skills: https://fact-mcp.forkjoin.ai/skills/index.json - Agent manifest: https://fact-mcp.forkjoin.ai/agents.json - MCP well-known: https://fact-mcp.forkjoin.ai/.well-known/mcp.json - MCP marketing manifest: https://fact-mcp.forkjoin.ai/.well-known/mcp-manifest.json - Agent card: https://fact-mcp.forkjoin.ai/.well-known/agent-card.json ## Capacitor Integration The Capacitor is the intelligent container that wraps facts with: - DualIndex (Amygdala + Hippocampus) block indexing - ContentKnapsack layout optimization - Multi-projection rendering (text, audio, spatial, reading, tiling, hypercube) - ESI-powered fact enrichment and personalization - Collaborative editing via CRDT ## REST API Endpoints - GET /api/synthesis?factId= — Fetch a fact synthesis document - GET /api/capacitor?factId= — Fetch Capacitor state for a fact - GET /health — Health check ## Tools (49) ### fact_create Create a new atomic fact (claim, observation, measurement, inference, or axiom) in the fact graph. Parameters: - raw_text: The raw text of the fact/claim to create - parent_id: Optional parent fact ID for hierarchical nesting - fact_type: Type of fact Required: raw_text ### fact_update Update an existing fact node (state, text, type, etc.). Parameters: - fact_id: ID of the fact to update - raw_text: Updated raw text - normalized_claim: Normalized claim statement - state: New state - fact_type: Updated type Required: fact_id ### fact_delete Soft-delete a fact node. Parameters: - fact_id: ID of the fact to delete Required: fact_id ### fact_graph Get the complete fact graph for the current space, including nodes, links, and verification metrics. Parameters: - root_id: Optional root node to start from - depth: Max depth to traverse (default: 10) Required: none ### fact_search Search for facts by text content or normalized claim. Parameters: - query: Search query - limit: Max results (default: 20) - state: Filter by state (raw, pending, verified, refuted, etc.) Required: query ### fact_decompose Use LLM to decompose a compound statement into atomic, independently verifiable claims. Parameters: - text: Compound statement to decompose - fact_id: Or provide an existing fact ID to decompose Required: none ### fact_enrich Use LLM to enrich a fact with normalized claim, suggested sources, and risk assessment. Parameters: - fact_id: ID of the fact to enrich Required: fact_id ### fact_round_create Start a new commit-reveal verification round for a fact. Validators bond EDGEWORK tokens to participate. Parameters: - fact_id: ID of the fact to verify - required_bond_wei: Required EDGEWORK bond in wei Required: fact_id ### fact_round_commit Submit a blinded commit (hash of vote + salt) to a verification round. Parameters: - round_id: Verification round ID - validator_id: Validator identifier - commit_hash: SHA-256 hash of (verdict || salt || roundId) - bond_tx_hash: On-chain bond transaction hash Required: round_id, validator_id, commit_hash ### fact_round_reveal Reveal a previously committed vote with the salt and reasoning. Parameters: - round_id: Verification round ID - vote_id: Vote ID from commit phase - verdict: The verdict - confidence: Confidence 0.0-1.0 - salt: Random salt used in commit hash - reasoning: Reasoning for the verdict Required: round_id, vote_id, verdict, salt ### fact_round_settle Settle a verification round after the reveal phase, computing consensus. Parameters: - round_id: Verification round ID to settle Required: round_id ### fact_round_dispute File a dispute against a settled verification round within the dispute window. Parameters: - round_id: Settled round ID to dispute - disputer_id: Disputer identifier - reason: Reason for dispute - appeal_bond_tx_hash: Appeal bond transaction hash Required: round_id, disputer_id, reason ### fact_rounds_list List verification rounds, optionally filtered by phase or fact. Parameters: - phase: Filter by phase (commit, reveal, settled, disputed) - fact_id: Filter by fact ID Required: none ### fact_entropy Get clarity and confidence metrics for the fact space. Parameters: (no parameters) Required: none ### fact_anchor_status Get Merkle batch anchoring status on Optimism L2. Parameters: (no parameters) Required: none ### fact_anchor_trigger Manually trigger a Merkle batch anchoring cycle. Parameters: (no parameters) Required: none ### fact_reputation Get the validator reputation leaderboard. Parameters: (no parameters) Required: none ### fact_sync_pull Pull new operations since a given clock for CRDT sync. Parameters: - since: Sync clock timestamp to pull changes after Required: none ### fact_presence_heartbeat Send a presence heartbeat to keep your peer visible in the space. Parameters: - peer_id: Your peer identifier - display_name: Display name Required: peer_id ### fact_presence_list List currently active peers in the fact space. Parameters: (no parameters) Required: none ### fact_synthesize Generate a full Capacitor synthesis for a fact, including Capacitor blocks, evidence chains, and verification status. Returns a structured synthesis document. Parameters: - fact_id: ID of the fact to synthesize. If omitted, synthesizes the root of the space. Required: none ### fact_synthesize_batch Batch-synthesize multiple facts into Capacitor documents. Returns an array of synthesis documents. Parameters: - fact_ids: Array of fact IDs to synthesize. - max_depth: Max depth of sub-fact inclusion per synthesis (default: 2). Required: fact_ids ### fact_enrich_esi Trigger ESI-powered LLM enrichment for a fact: normalizes the claim, generates analysis, suggests sources, and assesses risk. Optionally writes the results back to the fact graph. Parameters: - fact_id: ID of the fact to enrich via ESI. - writeback: If true, persist the ESI results back to the fact graph (default: false). Required: fact_id ### fact_build_enrichment_prompt Preview the LLM prompt that would be used for ESI enrichment without executing it. Useful for debugging or customizing the enrichment pipeline. Parameters: - fact_id: Fact ID to build the prompt for. Required: fact_id ### fact_capacitor_state Get the current Capacitor state for a fact — blocks, projection, layout metadata. This is the data needed to render the fact via the Capacitor container. Parameters: - fact_id: Fact ID to get Capacitor state for. Required: fact_id ### fact_capacitor_project Switch the active projection surface for a fact — text, audio, spatial, or reading. Parameters: - fact_id: Fact ID. - projection: Target projection surface. Required: fact_id, projection ### fact_capacitor_blocks Get the raw Capacitor blocks for a fact — the building blocks for layout solving. Parameters: - fact_id: Fact ID. Required: fact_id ### fact_build_evidence_chains Analyze the fact graph to discover implicit evidence chains — links between claims, supporting observations, and conflicting inferences. Parameters: - root_id: Root fact ID to start from. If omitted, analyzes the entire space. - max_chain_length: Maximum chain length to consider (default: 6). - apply: When true, creates the discovered links in the graph. Required: none ### fact_semantic_search Search the fact graph using semantic similarity (embedding-based). Returns facts ranked by vector distance rather than keyword match. Parameters: - query: Natural language search query. - limit: Max results (default: 10). - threshold: Minimum similarity threshold 0.0-1.0 (default: 0.3). Required: query ### fact_flow_decompose LLM-powered decomposition that breaks a compound claim into atomic sub-facts and creates them as children in the fact graph. Parameters: - fact_id: Existing fact ID to decompose. - text: Or provide raw text to decompose. - auto_create: When true, automatically creates sub-facts (default: true). Required: none ### fact_collab_start Start a collaborative editing session for a fact via the Collab Durable Object. Returns a session key and connection details. Parameters: - fact_id: Fact ID to collaborate on. - actor_id: Actor/user identifier. - display_name: Display name for the collaborator. Required: fact_id, actor_id ### fact_collab_join Join an existing collaborative session. Returns the current session state and participant list. Parameters: - session_key: Session key from fact_collab_start. - actor_id: Actor/user identifier. - display_name: Display name. Required: session_key, actor_id ### fact_render_claim_review Generate a ClaimReview JSON-LD structured data object for a fact. Useful for SEO and fact-checking protocol compliance. Parameters: - fact_id: Fact ID to generate ClaimReview for. Required: fact_id ### fact_render_synthesis Render a fact synthesis as a Markdown document suitable for display or export. Parameters: - fact_id: Fact ID to render. - format: Output format (default: markdown). Required: fact_id ### fact_synthesize_with_esi Synthesize a fact using the Aeon ESI processor pipeline. Uses the configured EdgeWorkersESIProcessor with KV caching, tier enforcement, and telemetry instead of raw inference calls. Parameters: - fact_id: ID of the fact to synthesize with ESI. - writeback: If true, persist ESI results back to the fact graph (default: false). Required: fact_id ### fact_memory_push Push a fact-linked memory entry into a Fractal Memory stack. Parameters: - stack_id: string - fact_id: string - entry_id: string - title: string - text: string - actor_id: string - op_id: string - hlc: string - zk_commitment: string Required: stack_id, fact_id ### fact_memory_pop Pop an entry from a Fractal Memory stack. Parameters: - stack_id: string - target_entry_id: string - actor_id: string - op_id: string - hlc: string Required: stack_id ### fact_memory_peek Peek the top of a Fractal Memory stack. Parameters: - stack_id: string - limit: number Required: stack_id ### fact_memory_pin Pin a Fractal Memory entry. Parameters: - entry_id: string - actor_id: string - op_id: string - hlc: string Required: entry_id ### fact_memory_unpin Unpin a Fractal Memory entry. Parameters: - entry_id: string - actor_id: string - op_id: string - hlc: string Required: entry_id ### fact_memory_get_pool Read the Fractal Memory pool. Parameters: - limit: number Required: none ### fact_memory_get_recent Read recent Fractal Memory entries. Parameters: - limit: number Required: none ### fact_memory_get_pinned Read pinned Fractal Memory entries. Parameters: - limit: number Required: none ### fact_memory_get_feed Read combined Fractal Memory feed. Parameters: - cursor: string - include: string - limit: number Required: none ### fact_memory_link Create a Fractal Memory relation edge. Parameters: - from_entry_id: string - to_entry_id: string - relation_type: string - actor_id: string - op_id: string - hlc: string Required: from_entry_id, to_entry_id, relation_type ### fact_memory_get_related Read Fractal Memory relations. Parameters: - entry_id: string - relation_type: string - limit: number Required: none ### fact_memory_join_collab_stack Join a Fractal Memory collaborative stack. Parameters: - stack_id: string - actor_id: string - display_name: string Required: stack_id, actor_id ### fact_memory_get_collab_stack Read Fractal Memory collaborative stack snapshot. Parameters: - stack_id: string Required: stack_id ### fact_memory_leave_collab_stack Leave a Fractal Memory collaborative stack. Parameters: - stack_id: string - actor_id: string Required: stack_id, actor_id ## Resources (12) ### Fact Graph URI: fact://spaces/default/graph The complete fact graph for this space including nodes, links, and metrics. Type: application/json ### Clarity Metrics URI: fact://spaces/default/entropy Clarity and confidence metrics for the fact space. Type: application/json ### Verification Rounds URI: fact://spaces/default/rounds Active and recent verification rounds with commit-reveal status. Type: application/json ### Validator Reputation URI: fact://spaces/default/reputation Leaderboard of validator reputation scores. Type: application/json ### Anchoring Status URI: fact://spaces/default/anchoring Merkle batch anchoring status and recent batches. Type: application/json ### Active Peers URI: fact://spaces/default/presence Currently active peers in this fact space. Type: application/json ### Capacitor State URI: fact://spaces/default/capacitor Current Capacitor container state — blocks, projection, layout metadata. Type: application/json ### Available Projections URI: fact://spaces/default/projections List of available projection surfaces (text, audio, spatial, reading, tiling, hypercube). Type: application/json ### Fact Synthesis URI: fact://spaces/default/synthesis Complete synthesis document for the space root, including Capacitor blocks. Type: application/json ### Fact Space Metadata URI: fact://meta Information about this fact-checking space and verification protocol. Type: application/json ### Sign-In & Access URI: fact://auth How to sign in and access personal fact spaces securely. Type: application/json ### Capacitor Reference URI: fact://capacitor Reference documentation for the Capacitor intelligent container interface. Type: application/json