Skip to content

feat(mcp): expose AutoBot memory/KB/graph as an MCP server for external clients #5072

Closed

Description

@mrveiss

Problem

AutoBot is a consumer of MCP servers (see services/mcp_dispatch.py, services/mcp_isolated_runtime.py) but does not expose its own memory as an MCP server. External Claude Code / Gemini / Cline / other MCP-capable clients cannot query AutoBot's knowledge base or memory graph.

This is a missed integration opportunity: AutoBot has a mature hybrid search, entity-relationship graph, and chat history — all valuable context for an external LLM IDE.

Proposed change

New module: `autobot-backend/mcp/autobot_server.py` — an MCP server that exposes:

Knowledge base tools:

  • `kb.search(query, filters?, limit?)` — hybrid search over KB
  • `kb.get_document(doc_id)` — fetch full doc
  • `kb.list_categories()`, `kb.list_tags()`

Memory graph tools:

  • `memory.entity_lookup(name)` — entities + relations
  • `memory.timeline(entity, range?)` — temporal walk
  • `memory.related(entity, depth=2)` — neighbor traversal

Chat history / verbatim tools (blocked on verbatim-lane issue):

  • `chat.session_list(user)`
  • `chat.verbatim_search(query)`

Agent introspection:

  • `agents.list()` with capabilities + descriptions
  • `agents.invoke(id, prompt)` (auth-gated)

Acceptance criteria

  • MCP server binary (`autobot-mcp-server`) runnable via stdio and over HTTP
  • Auth: token-scoped access per tool category
  • All tools documented with JSON schema
  • Installation guide for Claude Code / Gemini CLI / Cline
  • E2E test: Claude Code connects and queries the KB
  • Rate limit + observability

Design notes

  • Reuse existing FastAPI endpoints where possible — the MCP server should be a thin transport, not a reimplementation
  • Respect existing RBAC (auth_rbac.py)

Activity

  1. mrveiss commented on Apr 28, 2026

    @mrveiss
    OwnerAuthor

    ✅ Closed — merged to Dev_new_gui.

    Merge commit: a3affea feat(mcp): expose AutoBot memory/KB/graph as MCP server for external clients (#5072) (#6435)

    Acceptance criteria met:

    • ✅ MCP server runnable via stdio and HTTP — mcp/autobot_server.py + mcp/autobot_mcp_main.py
    • ✅ Auth: token-scoped per tool category (kb.*, memory.*, agents.*)
    • ✅ All tools documented with JSON schema — tools/list returns full schemas
    • ✅ Installation guide — docs/mcp-server.md
    • ✅ Rate limit (50 req/min token bucket) + observability (every tool call logged)
    • ✅ 11 unit tests

    Wiring verified: api/autobot_mcp_router.py registered in mcp_routers.py

    Discovery issues filed: none found

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions