Skip to content

Add a deployable MCP endpoint for Genie Code #3

Description

@philtief

Use case

WikiBricks 0.11 exposes a local stdio MCP server. Genie Code accepts workspace-managed MCP sources and stateless HTTPS MCP servers, but it cannot launch a command on a user's laptop.

Users need a supported way to search their WikiBricks memory from Genie Code. The optional Lakebase archive already provides the remote storage boundary, but WikiBricks does not expose it as an MCP service.

Proposed API

Add an optional Databricks App that serves a stateless MCP endpoint at /mcp and reads from the Lakebase archive and search index.

databricks bundle deploy -t personal \
  --var enable_genie_code_mcp=true \
  --var lakebase_project=wikibricks

The first release exposes these read-only tools:

  • wiki_search
  • wiki_read_full
  • wiki_index

Keep the tool names and schemas aligned with the local MCP server. The setup guide shows the Genie Code path: Settings > MCP Servers > Add Server > Custom MCP server.

Acceptance criteria

  • The app exposes a stateless Streamable HTTP MCP server at https://<app-url>/mcp.
  • The service uses Databricks authentication and prevents access across users or archive replicas.
  • Read tools query the remote archive and report the latest committed sync time.
  • The app returns a clear status when remote memory is absent or out of date.
  • Write tools remain disabled until WikiBricks has a conflict-safe local synchronization contract.
  • The deployment can scale to zero or remain stopped when unused.
  • An integration test connects Genie Code to the app and reads a known page.
  • Documentation covers deployment, permissions, Genie Code setup, cost controls, and teardown.

Alternatives considered

The local stdio server works for desktop harnesses but is not reachable from Genie Code. An external MCP host adds another service and authentication boundary. A return to Unity Catalog functions duplicates the local-first storage contract.

Additional context

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions