bee-ai-auth-mcp

bee-ai-auth-mcp

Self-host-first, OAuth-secured MCP server that brings Bee AI pendant conversations to any MCP client (Claude, Cursor, etc.) with encrypted per-user token custody and read-only access by default.

Category
Visit Server

README

bee-ai-auth-mcp

Self-host-first, OAuth-secured MCP server that brings your Bee AI pendant's conversations to any MCP client — Claude, Cursor, and other agents, on every surface. Encrypted per-user token custody, read-only by default. MIT.

Status: PHASE 1 — DEPLOYED (self-host, Model A). The auth-core spine is built and live on Cloudflare Workers: GitHub identity gate, the whoami tool, a static site, and CI/CD. The Bee-client call is gated on the private-CA reachability check (docs/phase-1-execution-handoff.md §4). Read-only conversation retrieval (Phase 2) and hosted multi-tenant Tier 2 (Phase 3) are later. RESUME.md is the fresh-context entry point; PRD.md (v0.2) is the spec.

Start here

  1. RESUME.md — fresh-context entry point. Read it first; it bootstraps the operating contract and states the current gate.
  2. PRD.md — the authoritative requirements (lane-root).
  3. docs/implementation-handoff.md — how Phase 1 ports the proven sibling klappy/git-repo-auth-mcp.
  4. odd/ledger/ — the DOLCHEO encoding journal.
  5. planning/ — the exploration corpus behind the decisions.

What it will be

A thin Cloudflare Worker: @cloudflare/workers-oauth-provider handles the user↔relay OAuth leg; the user's Bee credential is held in encrypted per-grant props (self-host) and used read-only against Bee's /v1/* API; @modelcontextprotocol/sdk + agents expose retrieval tools that reach any MCP client (Claude, Cursor, other agents) on every surface. Ships in two postures — Tier 1 (self-host, no central custody) and Tier 2 (hosted, hardened). Built to the security and validation bar of its sibling, git-repo-auth.

License

MIT. See LICENSE.

Working name during planning was bee-mcp; renamed to bee-ai-auth-mcp. Some internal docs may still reference the old name — same project.


Build & deploy — Phase 1 (Model A, self-host)

Status: Phase-1 spine (auth core + whoami). The Bee-client call is gated on the private-CA reachability check — see docs/phase-1-execution-handoff.md §4.

Two-leg auth. You ↔ relay is OAuth (GitHub, identity only — gates who may use your instance). Relay ↔ Bee is your own Bee token, held as a Worker secret — Model A. This instance custodies no one else's credential. Per-user custody is Tier 2 (not in Phase 1).

Setup

  1. npm install
  2. Create the grant store: wrangler kv namespace create OAUTH_KV → paste the id into wrangler.jsonc.
  3. Create a GitHub OAuth App (not a GitHub App): callback https://<your-worker>/callback. Then:
    • wrangler secret put GITHUB_CLIENT_ID
    • wrangler secret put GITHUB_CLIENT_SECRET
  4. wrangler secret put BEE_API_TOKEN — your Bee bearer (from the Bee app).
  5. In wrangler.jsonc set ALLOWED_GITHUB_LOGIN to your GitHub login (the instance denies all logins until set) and BEE_API_BASE to Bee's direct API base.
  6. npm run deploy, then add the Worker URL as a custom connector in your MCP client and run the whoami tool.

Security model (honest). The Bee bearer never appears in logs, URLs, errors, or tool output. Revocation: disconnecting the connector ends the relay's access to you, but does not revoke the Bee token itself — to fully revoke, rotate the token in the Bee app and re-set the secret. Grant props are encrypted per-grant with the token as key material (workers-oauth-provider), so a storage-only leak reveals only metadata.

Reachability caveat. Bee's docs require a private CA for the direct API; standard Workers fetch trusts only public CAs. If whoami fails to reach Bee, the path is Workers VPC (Origin-CA) or mTLS — confirm Bee's real API cert from a non-proxied environment first.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured