delapan
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@delapansearch the knowledge base for deployment issues"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
delapan
The grounding engine behind context-aware AI tooling. Capture intent, ground every answer in a maintained knowledge base, and fill gaps from the web on demand — ground → grow → answer.
delapan runs fully local (SQLite + sqlite-vec, no cloud, no account) or behind your
own storage via a small Store protocol. It ships as an MCP server, so any MCP client
(Claude Code, etc.) can use it out of the box.
Install as a Claude Code plugin
Requires uv (curl -LsSf https://astral.sh/uv/install.sh | sh).
claude plugin marketplace add anthonysuherli/delapan
claude plugin install delapan@delapanFirst launch materializes the Python environment (via uv) and seeds a bundled
demo KB. With zero keys configured you can immediately run
/delapan:projects and /delapan:resume against the demo (project delapan,
kb demo). To unlock semantic search and web research on your own repos, copy
.env.example to .env in the plugin directory and set AI_GATEWAY_API_KEY
(plus TAVILY_API_KEY for /delapan:explore).
Skills: /delapan:resume, /delapan:search, /delapan:explore,
/delapan:ingest, /delapan:backlog, /delapan:projects, /delapan:model.
Related MCP server: Grounded Code MCP
Quickstart — local, no credentials
pip install "delapan[local]"
# MCP server for Claude Code / any MCP client (resume, search, explore, projects)
python -m delapan.mcp.server
# or a loopback HTTP API on 127.0.0.1 (health, projects, KG read/write,
# findings, synopsis, resume, explore-over-SSE under /api/*)
python -m delapan.api.mainMCP tools: delapan_resume (tap a KB → resume card), delapan_search
(semantic recall over findings), delapan_explore (gap-fill from the web,
needs LLM + Tavily keys), delapan_backlog (ranked gap/sparse queries the KB
was asked and couldn't answer), delapan_projects (cross-repo discovery).
KG co-design seam: delapan_propose_kg_schema → delapan_set_kg_schema
(draft a target ontology from the findings, then validate + persist the approved
version) and delapan_build_graph / delapan_get_kg_schema (build the
graph steered by the intent schema; compare intent vs emergent ontology).
# the engine, on SQLite, with no cloud creds:
from delapan.store import get_store
from delapan.mcp.tenancy import resolve_tenant
ctx = resolve_tenant("my-repo", "main", create=True) # tenant on the local store
store = get_store()
print(store.count_findings(ctx.kb_id))The local tier stores everything in ~/.delapan/delapan.db (override with
DELAPAN_DB_PATH). No Supabase, no API key, loopback-only.
Status: the engine core (grounding, exploration, findings, KB/project persistence), the
Storeseam, the MCP server, and the local HTTP API (/api/*— mirrors the MCP surface plus KG read/write for a control-panel frontend) all run on SQLite today — see Roadmap.
What's inside
Capability | Module |
Coverage-banded grounding — score how well the KB covers a query |
|
Gap-fill exploration — plan → search → crawl → extract → merge |
|
Write-time resolution — ADD/UPDATE/NOOP/SUPERSEDE a candidate finding against its KB before persisting; nothing is ever deleted, only retired (bi-temporal |
|
Knowledge graph — entities + relations over findings |
|
Canvas surface — |
|
Pluggable storage — |
|
MCP server |
|
Plugin launcher — uv-run wrapper; materializes the environment on first run and starts the MCP server |
|
Claude Code skills — seven skills backing the |
|
Bundled demo KB — seeded on first local server start so |
|
First-run onboarding — KB-not-found guidance card + demo-KB seeding |
|
Public |
|
Eval harness — closed-book/production/oracle ablation, HHEM faithfulness, retrieval + verdict-calibration metrics, paired stats, reproducible run artifacts ( |
|
Project tracking
Solo initiative status and prioritized backlog live in docs/tracking/
(markdown source of truth). See the design spec.
Automatic sync
Local:
.git/hooks/post-commit(installed from.githooks/post-commit) runsscripts/tracking_sync.pyafter commits that touchdocs/tracking/.CI: GitHub Action
tracking-syncmirrors on push (needs secretsSUPABASE_URL+SUPABASE_SERVICE_ROLE_KEY).
Manual:
uv run python scripts/tracking_sync.py --dry-run
uv run python scripts/tracking_sync.pyFindings, KBs, and projects are not separate submodules — that persistence lives
inside the Store implementations themselves (store/sqlite.py, store/supabase.py),
behind the one Store protocol below.
Architecture — the storage seam
The engine never imports a storage client directly. It calls get_store(), which
returns a backend selected by DELAPAN_BACKEND (local | cloud, auto-detected from
creds when unset). Ship a new backend by implementing store/base.py::Store.
from delapan.store import get_store
store = get_store() # SQLiteStore on the local tier
findings = store.match_findings(kb_id, embedding, limit=10)Every write to findings goes through core/memory/persist.py::resolve_and_persist,
not straight to insert_findings — a resolver decides per candidate whether it's
genuinely new, refines an existing finding, merely corroborates one, or contradicts
one, and applies that via the Store's update_finding/invalidate_finding/
supersede_finding primitives. Set memory.enabled: false in config.yaml to fall
back to plain append-only ADD. scripts/dedup_backfill.py retires duplicates
already sitting in an existing KB (dry-run by default); scripts/calibrate_bands.py
recalibrates the coverage-band thresholds above for whichever embedding model is
active. Schema changes for this land in migrations/ (cloud tier only — SQLite
migrates itself in-process).
The open-core distribution ships the SQLite backend, at parity with the cloud Supabase/pgvector backend for both retrieval and the write-resolution path above.
Configuration
Copy .env.example and fill the local block (the cloud block is optional
and only needed for a self-hosted multi-tenant deployment):
cp .env.example .envDevelopment
python3.11 -m venv .venv
.venv/bin/pip install -e ".[dev,local]"
pytest && ruff check .Status & roadmap
Working today (verified on SQLite, no cloud deps):
The
Storeseam —get_store()→SQLiteStore; tenancy, project listing, findings, synopsis, KG.The engine core —
agent(preamble/synopsis/resume),exploration,memory(resolver + persist),knowledge_graphmodels.The tenancy gateway —
resolve_tenant()resolves a local tenant through the store.The MCP server —
delapan_resume/delapan_search/delapan_explore/delapan_backlog/delapan_projects/delapan_archive(whole package imports; all 6 tools register and run).python -m delapan.api.main→/healthplus the/api/*surface: projects, per-KB graph read/write (nodes/edges CRUD, stats, schema), findings list/get/delete, synopsis, resume, explore over SSE, and canvas search/keep over SSE. CORS allows control-panel dev origins (:5173);scripts/seed_demo_kb.pyseeds a credential-free demo KB to point a frontend at.Canvas phase 1 —
/canvas/search(streamed candidates + grounded answer) and/canvas/keep(resolver-gated persistence) landed; includes two loud-failure fixes: explore now fails the run on provider quota/error (Tavily HTTP 432, etc.), and synopsis rebuild routes via gateway with status reporting (rebuilt/skipped/failed).Hosted-tier backend auth (build order phase 1 of the public-release design) —
api.auth: none | supabaseconfig fork; local JWT verification againstSUPABASE_JWT_SECRET(delapan/api/auth.py),beta_membersgate, org-scoped tenancy dependencies; slowapi rate limiting keyed by verified subject; an RLS audit script covering all 29 tenant tables; a two-user isolation acceptance test;build_combined_app()(delapan/mcp/cloud_server.py) serves REST/apibeside the MCP server for a single Fly deploy. The local tier is unaffected (auth: nonedefault).Eval pipeline — v1 ablation harness landed (spec: docs/truenorth/specs/2026-07-26-context-eval-pipeline-design.md); phase 2: LongMemEval adapter for externally comparable numbers.
Claude Code plugin shell — shipped in-repo, marketplace-installable (2026-07-26):
scripts/mcp-server.sh(uv-run launcher), seven skills underskills/backing the/delapan:*slash commands, a bundled demo KB (data/demo.db, projectdelapan/kbdemo) seeded on first local start, and first-run onboarding (delapan/mcp/onboarding.py). Zero-key surface is/delapan:projects+/delapan:resumeagainst the demo;AI_GATEWAY_API_KEY(plusTAVILY_API_KEY) unlocks search/explore on real repos.
Next:
Public release phases 2–3: frontend auth screens,
/appguard + waitlist gate, landing/legal pages, GitHub OAuth, custom SMTP, Sentry/uptime/analytics wiring, and the Fly deploy of the combined MCP+REST app — none of this is done yet (see the spec's build order).The capture HTTP route (mirror the remaining MCP-adjacent surface over FastAPI).
Concepts, drift, deepen, bridges, monitoring, user-profile, research reports, and the broader MCP tool surface.
Store-route or gate the remaining cloud-coupled surfaces (
userprofile, genericknowledge_graph/builder) — currently[cloud]-gated at call-time.
LLM-backed features need keys — exploration: TAVILY_API_KEY + AI_GATEWAY_API_KEY
(the gateway covers LLM calls and embeddings; OPENAI_API_KEY is only the embeddings
fallback), synopsis rebuild: ANTHROPIC_API_KEY. Browse/tenant/persistence work without them.
License
AGPL-3.0-or-later. Self-host freely; network-deployed modifications must be shared under the same license. For commercial / non-AGPL licensing, contact the maintainer.
This server cannot be installed
Maintenance
Related MCP Servers
- Alicense-qualityDmaintenanceLocal MCP server for indexing personal knowledge into SQLite with hybrid search, chunk-level citations, memory tools, and agent orchestration.4MIT
- Alicense-qualityBmaintenanceA local MCP server that gives AI coding assistants retrieval access to your personal knowledge base of books, standards, and docs, grounding their answers in sources you trust.MIT
- Alicense-qualityDmaintenanceA local-first MCP server providing persistent, searchable knowledge base via SQLite, enabling AI agents to save and recall facts across sessions without cloud dependencies.MIT
- AlicenseAqualityBmaintenanceMCP server for managing and searching multi-tenant knowledge bases backed by SQLite with FTS5, enabling AI agents to persist and retrieve content via full-text search.131MIT
Related MCP Connectors
Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/anthonysuherli/delapan'
If you have feedback or need assistance with the MCP directory API, please join our Discord server