Ingest official documentation into a local vector database and expose it via MCP for AI coding agents
Project description
openground
tldr: openground lets you give controlled access to documentation to AI agents. Everything happens on-device.
openground is an on-device RAG system that extracts documentation from git repos and sitemaps, embeds it for semantic search, and exposes it to AI agents via MCP. It uses a local embedding model, and local lancedb for storing embeddings and for hybrid vector similarity and BM25 full-text search.
Architecture
┌─────────────────────────────────────────────────────────────────────┐
│ OPENGROUND │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ SOURCE PROCESS STORAGE/CLIENT │
│ │
│ ┌──────────┐ ┌───────────┐ ┌──────────┐ ┌──────────┐ │
│ │ git repo ├─────>│ Extract ├──>│ Chunk ├──>│ LanceDB │ │
│ | -or- | │ (raw_data)│ │ Text │ │ (vector │ │
│ │ sitemap │ └───────────┘ └──────────┘ │ +BM25) │ │
│ └──────────┘ │ └────┬─────┘ │
│ ▼ │ │
│ ┌───────────┐ │ │
│ │ Local |<────────┘ │
│ │ Embedding │ │ │
│ │ Model │ ▼ │
│ └───────────┘ ┌─────────────┐ │
│ │ CLI / MCP │ │
│ │ (hybrid │ │
| | search) | |
│ └─────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
Quick Start
Installation
Recommended to install with uv:
uv tool install openground
or
pip install openground
Add Documentation
Openground can source documentation from git repos or sitemaps.
To add documentation from a git repo to openground, run:
openground add library-name \
--source https://github.com/example/example.git \
--docs-path docs/ \
-y
To add documentation from a sitemap to openground, run:
openground add library-name \
--source https://docs.example.com/sitemap.xml \
--filter-keyword docs/ \
--filter-keyword blog/ \
-y
This will download the docs, embed them, and store them into lancedb. All locally.
Use with AI Agents
To install the MCP server:
# For Cursor
openground install-mcp --cursor
# For Claude Code
openground install-mcp --claude-code
# For OpenCode
openground install-mcp --opencode
# For any other agent
openground install-mcp
Now your AI assistant can search your stored documentation automatically!
Example Workflow
Here's how to add the fastembed documentation and make it available to Claude Code:
# 1. Install openground
uv tool install openground
# 2. Add fastembed to openground
openground add fastembed --source https://github.com/qdrant/fastembed.git --docs-path docs/ -y
# 3. Configure Claude Code to use openground MCP
openground install-mcp --claude-code
# 4. Restart Claude Code
# Now you can ask: "What models are available in fastembed?"
# Claude will search the fastembed docs automatically!
Development
To contribute or work on openground locally:
git clone https://github.com/poweroutlet2/openground.git
cd openground
uv sync .
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openground-0.5.1.tar.gz.
File metadata
- Download URL: openground-0.5.1.tar.gz
- Upload date:
- Size: 25.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0bb1acf04dab8a7959d1fc368820303a3ee7e9b42745b52d49e75184e72dd392
|
|
| MD5 |
e1a578ad5053b1778bfdb5b768d56585
|
|
| BLAKE2b-256 |
d369c3e080dced7ede83ffbaa457dc2de9c2a9cee2bae1e5427b64495aa15e9d
|
File details
Details for the file openground-0.5.1-py3-none-any.whl.
File metadata
- Download URL: openground-0.5.1-py3-none-any.whl
- Upload date:
- Size: 29.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5545b1d2a03ade0b1895bdb9b6bac4656398d3e88e869f906a70dba61da6998e
|
|
| MD5 |
84c74284684650a5c75da7314c48ac71
|
|
| BLAKE2b-256 |
888b55ac4934abcc8d586a5a05f4a6070d9352093cda92b65cba7dacd93545fb
|