engram-mcp

engram-mcp

MCP plugin that connects Cursor, Claude, and other hosts to an Engram workspace for searching and citing indexed GitHub and Notion content.

Category
Visit Server

README

engram-mcp

PyPI License: MIT

MCP plugin that connects Cursor, Claude Code, Claude Desktop, and any other MCP-speaking host to your Engram workspace — the indexed knowledge of your GitHub repos and Notion pages.

The plugin is a thin client: no local database, no embedding model, no vector store. It forwards tool calls to the Engram backend over HTTPS and renders the results for your LLM.

Install

pip install engram-mcp
# or
uv tool install engram-mcp

Configure your MCP client

You need two things:

  1. Your Engram backend URL — https://your-engram.example.com in production, or http://localhost:8000 for local development.
  2. An Engram MCP token — mint one from your Engram web app under Settings → MCP Tokens. Tokens are scoped to your user and expire after 90 days.

Claude Desktop / Claude Code

Add to claude_desktop_config.json (or the equivalent Claude Code config):

{
  "mcpServers": {
    "engram": {
      "command": "engram-mcp",
      "env": {
        "ENGRAM_BASE_URL": "https://your-engram.example.com",
        "ENGRAM_TOKEN": "eng_mcp_..."
      }
    }
  }
}

Cursor

In Cursor settings → MCP → Add new server:

{
  "engram": {
    "command": "engram-mcp",
    "env": {
      "ENGRAM_BASE_URL": "https://your-engram.example.com",
      "ENGRAM_TOKEN": "eng_mcp_..."
    }
  }
}

Codex CLI

# ~/.codex/config.toml
[mcp_servers.engram]
command = "engram-mcp"
env = { ENGRAM_BASE_URL = "https://your-engram.example.com", ENGRAM_TOKEN = "eng_mcp_..." }

Tools exposed

Tool What it does
search_knowledge Ranked search across your indexed GitHub + Notion content. Supports source filter and intent shaping (explain / generate / question).
cite Locators only (source, path, line range, URL) for an answer the LLM has already drafted — cheap on context.
fetch_document Full document fetch by id, optionally with surrounding context lines. Use after search_knowledge surfaces something interesting.

How it works

┌───────────────────┐  stdio MCP   ┌───────────────────┐  HTTPS   ┌──────────────────┐
│ Cursor / Claude   │ ───────────► │ engram-mcp        │ ───────► │ Engram backend   │
│ Code / Desktop    │              │ (this package)    │  bearer  │ (indexing, RAG,  │
└───────────────────┘              └───────────────────┘   token  │  cross-val)      │
                                                                  └──────────────────┘

The plugin holds no state. Your token authenticates each request to the Engram backend, which resolves it to your user + workspace, runs retrieval against the indexed corpus, and returns ranked chunks. The plugin formats those chunks as markdown for the host LLM.

Auth

v0.x uses paste tokens — generate one in the Engram web app, paste into the env var. Tokens are stored hashed server-side and you can revoke them from the same settings page.

v1.x will add OAuth 2.1 (device flow + Dynamic Client Registration) so you can add Engram as a claude.ai connector with zero copy-paste. Paste tokens will keep working.

Development

git clone https://github.com/hidden-ones-dev/engram-mcp
cd engram-mcp
pip install -e ".[dev]"
pytest

Point at a local Engram backend:

export ENGRAM_BASE_URL=http://localhost:8000
export ENGRAM_TOKEN=eng_mcp_...
python -m engram_mcp   # speaks stdio MCP; pipe from a host or test harness

License

MIT — see LICENSE.

Related

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
Qdrant Server

Qdrant Server

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

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