live demo — all harnesses are erased every 7 days · next reset 2026-08-03
penso-harness

documentation, served to agents

Your repos' documentation, one MCP endpoint away.

penso-harness syncs the markdown docs from your GitHub and Bitbucket repositories and serves them to AI agents through per-project MCP endpoints with hybrid full-text + semantic search. No checkouts, no copy-paste.

Try the live demo Get an on-premise license

search_docs("how do we configure retries?")
platform/api-docs / http-client.md › Client › Retries

Set retry.max to 3 and enable exponential backoff before the circuit breaker opens. Idempotent requests only — see the safety notes below.

bm25 #1 knn #2 rrf 0.0325
A real answer, straight from your repos — served over MCP to Claude Code or any MCP client, without checking out a single project.

sync without cloning

Reads GitHub and Bitbucket through their APIs with your own OAuth credentials. Branch auto-detection (main → master → develop), manual or scheduled sync, incremental re-indexing of changed files only.

hybrid search, fully local

FTS5/BM25 full-text plus semantic vectors, fused with Reciprocal Rank Fusion. Embeddings are computed in-process with a local model — your documentation never leaves the box.

agent-ready endpoints

Each harness is a spec-compliant MCP server behind OAuth 2.1 with per-harness scoped tokens: search, browse, outline and read documents cross-project from Claude Code or any MCP client.

run it on your own infrastructure

penso-harness ships as a single self-contained service — one process, one SQLite file, local embeddings, no external AI APIs. Your code and docs stay inside your network.

This public instance is a live demo: all harnesses are erased every 7 days (next reset 2026-08-03). For an on-premise license and support, write to contact@penso-harness.example.