An MCP server for any LynxPrompt instance. LLMs use it to browse, search and manage AI configuration blueprints.
It works with lynxprompt.geiser.cloud or your own self-hosted LynxPrompt, over HTTP or stdio.
update_blueprint takes the content_checksum from get_blueprint as expected_checksum, so it never silently overwrites an edit made elsewhere.LYNXPROMPT_READ_ONLY=true registers only the read tools.lynxprompt://blueprints, lynxprompt://blueprint/{id}, lynxprompt://hierarchies, lynxprompt://hierarchy/{id}, lynxprompt://user.initialize handshake) and 2026-07-28 clients both work./mcp with Origin checks, a body limit and bearer auth when exposed.npx lynxprompt-mcp), a Docker image and multi-arch Go binaries.| Tool | What it does | Changes data |
|---|---|---|
search_blueprints | Search the public marketplace (query, configs/commands, category, tags, sort, page) | no |
list_blueprints | Your blueprints, paged, filter by visibility | no |
get_blueprint | Any blueprint you can see (yours, your team's, public) with content and content_checksum | no |
list_hierarchies | Your hierarchies (monorepo groupings), paged | no |
get_hierarchy | One hierarchy with its blueprints, flat and as a tree | no |
create_blueprint | New blueprint; visibility: PUBLIC publishes it | yes |
update_blueprint | Change fields; pass expected_checksum | yes, overwrites |
delete_blueprint | Permanent delete | yes, destructive |
create_hierarchy | New hierarchy; returns the existing one for the same repository_root | yes |
delete_hierarchy | Delete a hierarchy; its blueprints are kept, unlinked | yes, destructive |
Create an API token on your LynxPrompt instance under Settings, API tokens. For a self-hosted instance also set LYNXPROMPT_URL. Add LYNXPROMPT_READ_ONLY=true to hide the write tools.
Claude Code
claude mcp add lynxprompt --scope user --env LYNXPROMPT_TOKEN=lp_... -- npx -y lynxprompt-mcp
Claude Desktop (claude_desktop_config.json) and Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"lynxprompt": {
"command": "npx",
"args": ["-y", "lynxprompt-mcp"],
"env": { "LYNXPROMPT_TOKEN": "lp_..." }
}
}
}
VS Code (.vscode/mcp.json, asks for the token once and stores it encrypted)
{
"inputs": [
{ "type": "promptString", "id": "lynxprompt-token", "description": "LynxPrompt API token", "password": true }
],
"servers": {
"lynxprompt": {
"type": "stdio",
"command": "npx",
"args": ["-y", "lynxprompt-mcp"],
"env": { "LYNXPROMPT_TOKEN": "${input:lynxprompt-token}" }
}
}
}
Codex (~/.codex/config.toml)
[mcp_servers.lynxprompt]
command = "npx"
args = ["-y", "lynxprompt-mcp"]
env = { LYNXPROMPT_TOKEN = "lp_..." }
Docker (stdio, any client): command docker, args ["run", "-i", "--rm", "-e", "TRANSPORT=stdio", "-e", "LYNXPROMPT_TOKEN", "drumsergio/lynxprompt-mcp:v0.2.0"].
The npm package downloads the release binary on first run and checks its sha256 against the checksums shipped inside the package. The HTTP server, Docker Compose and local builds are in Getting started.
LynxPrompt, the self-hosted platform this server talks to.
Content type
Image
Digest
sha256:5f5ea94e9…
Size
7.5 MB
Last updated
4 days ago
docker pull drumsergio/lynxprompt-mcp