{
  "name": "io.github.kapella-hub/firekeep",
  "title": "Firekeep",
  "description": "Firekeep is the self-hosted working-knowledge and continuity layer for people, teams, and connected AI agents: durable knowledge, working state, procedures, coordination, Firekeep-mediated replay evidence, trust visibility, and document and code intelligence. It connects through MCP today. Shipped adapters configure Claude Code, Codex, Kiro, OpenCode, and Claude Desktop. For any other MCP client, `firekeep install --runtime generic` prints MCP-server JSON to paste into that client's configuration; it gets the tools and instructions on connect, but not the hook-driven lifecycle (no auto-briefing, pre-edit gate, or automatic presence — as with Codex, presence needs the optional sidecar started by hand).",
  "vendor": { "name": "Omnicron, LLC", "url": "https://firekeep.ai/" },
  "homepage": "https://firekeep.ai/",
  "documentation": "https://firekeep.ai/docs.html",
  "repository": {
    "url": "https://github.com/kapella-hub/FirekeepHQ",
    "source": "github"
  },
  "registry": {
    "name": "io.github.kapella-hub/firekeep",
    "url": "https://registry.modelcontextprotocol.io/v0.1/servers/io.github.kapella-hub%2Ffirekeep/versions/latest"
  },
  "distribution": {
    "package": {
      "registry": "pypi",
      "name": "firekeep-client",
      "url": "https://pypi.org/project/firekeep-client/"
    },
    "releaseManifest": "https://kapella-hub.github.io/firekeep-dist/latest/latest.json",
    "serverReleaseManifest": "https://kapella-hub.github.io/firekeep-dist/server/latest/server.json",
    "signedChecksums": {
      "checksums": "https://github.com/kapella-hub/firekeep-dist/releases/latest/download/SHA256SUMS",
      "signature": "https://github.com/kapella-hub/firekeep-dist/releases/latest/download/SHA256SUMS.minisig"
    }
  },
  "studio": {
    "documentation": "https://firekeep.ai/docs.html#studio",
    "release": "https://firekeep.ai/latest/studio/release",
    "releaseManifest": "https://github.com/kapella-hub/firekeep-dist/releases/download/studio-latest/studio-update.json",
    "releaseManifestSignature": "https://github.com/kapella-hub/firekeep-dist/releases/download/studio-latest/studio-update.json.minisig",
    "source": "https://github.com/kapella-hub/FirekeepHQ/tree/main/studio",
    "installers": {
      "windows_x64": {
        "url": "https://firekeep.ai/latest/studio/windows"
      },
      "macos_universal": {
        "url": "https://firekeep.ai/latest/studio/macos",
        "architectures": ["arm64", "x64"]
      }
    }
  },
  "license": "BUSL-1.1 (self-hosted internal production use is free for individuals and teams during early access; production use outside that grant requires a commercial licence; each version converts to Apache-2.0 four years after release)",
  "transport": {
    "type": "stdio",
    "note": "Firekeep is self-hosted: there is no public MCP endpoint to connect to. Current server images target linux/amd64, so each person or team runs a Keep on an x86-64 Linux host or through Docker Desktop with amd64 support. The `firekeep` gateway runs locally on each connected machine, aggregating the Keep's server-side MCP services plus registered client-local dexes, with per-key authentication to that server."
  },
  "installation": {
    "client_macos_linux": "curl -fsSL https://firekeep.ai/latest/install | sh",
    "client_windows": "irm https://firekeep.ai/latest/install.ps1 | iex",
    "note": "The two commands above are the platform-specific bootstraps for the client and server. Each asks two required questions: an agent identity and where the Firekeep server is — (1) set one up on this machine, (2) I have a join code, (3) it is already running, (4) not yet — then offers a skippable prompt for another MCP client's rules file. Answer 1 provisions the linux/amd64 server stack on an x86-64 Linux host, or through Docker Desktop with amd64 support, and enrolls the machine against it automatically. On Windows setup runs under WSL2 or Git Bash. Answers 2 and 3 join an existing Keep. An invited machine can supply its code up front: curl -fsSL https://firekeep.ai/latest/install | FIREKEEP_JOIN=fk_join_... sh",
    "server": "https://firekeep.ai/docs.html#server"
  },
  "tools": [
    { "name": "memory_recall", "description": "Recall relevant team memories for a task — semantic + graph retrieval, returned as Markdown. Recorded session outcomes and explicit useful or not-useful feedback can nudge ranking; current outcome discrimination is limited." },
    { "name": "memory_learn", "description": "Store a structured action/outcome pair (what was tried, what happened, how it resolved) in long-term team memory." },
    { "name": "memory_feedback", "description": "Report whether recalled knowledge that was acted on actually held — feeds recall ranking." },
    { "name": "ctx_start_session", "description": "Open a durable working session with a goal; plans, decisions and progress persist across context compressions." },
    { "name": "ctx_update", "description": "Record plan, decision, file knowledge, or progress into the active session." },
    { "name": "ctx_get_shadow", "description": "Restore the session's working state after a context compression or restart." },
    { "name": "ctx_complete_session", "description": "Complete a session; its learnings are distilled into team memory and quality metrics are computed from the replay trace." },
    { "name": "action_before", "description": "Declare a consequential action with intent, success criteria, and confidence before taking it — returns allow, rethink, or block." },
    { "name": "action_after", "description": "Reconcile a declared action with what actually happened; stated confidence is scored against reality." },
    { "name": "relay_lease", "description": "Request a renewable fenced lease on a shared resource; preventing conflicts depends on each runtime checking and honoring it." },
    { "name": "relay_task_post", "description": "Post work to the shared multi-agent task queue." },
    { "name": "search_symbols", "description": "Client-side tree-sitter code intelligence: find symbols, callers, and impact without reading whole files." },
    { "name": "decision_board", "description": "Open a browser clarification board for the human, pre-populated with evidence retrieved from team memory." },
    { "name": "skill_create", "description": "Author a reusable team playbook (trigger, symptoms, steps, gotchas) that surfaces in future sessions." },
    { "name": "vault_store", "description": "Store a secret in the Fernet-encrypted vault — secrets never appear in memory recall." }
  ],
  "capabilities": {
    "categories": [
      "memory (recall, learn, feedback, handoff, health)",
      "sessions (start, update, shadow, resume, complete)",
      "environment (events, health, observations)",
      "coordination (channels, tasks, leases, presence, direct messages)",
      "code-intelligence (symbols, callers, architecture, impact)",
      "document-indexing (chosen folders, member-private by default, surfaced in recall)",
      "email-indexing (IMAP read-only, always member-private, surfaced in recall)",
      "clarification (decision board)",
      "secrets (encrypted vault)",
      "replay (timelines, inspection, root-cause narrowing)",
      "skills (create, recall, review)",
      "governance (predict-then-act gateway, instruction compliance, enforced runbooks, per-agent trust ledger)"
    ]
  },
  "evidence": {
    "instructionComplianceStudy": "https://firekeep.ai/instruction-compliance.html",
    "caseStudy": "https://firekeep.ai/case-study.html"
  },
  "contact": { "sales": "mailto:sales@firekeep.ai", "security": "mailto:security@firekeep.ai" }
}
