OpenClaude MCP Server
A high-performance control plane for Ollama-based local LLM sessions with background memory consolidation, hybrid cloud planning, and real-time fleet monitoring.
README
OpenClaude MCP Server
<p align="center"> <a href="https://github.com/casey/just"><img src="https://img.shields.io/badge/just-ready_to_go-7c5cfc?style=flat-square&logo=just&logoColor=white" alt="Just"></a> <a href="https://github.com/astral-sh/ruff"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json" alt="Ruff"></a> <a href="https://python.org"><img src="https://img.shields.io/badge/Python-3.13+-3776AB?style=flat-square&logo=python&logoColor=white" alt="Python"></a> <a href="https://biomejs.dev"><img src="https://img.shields.io/badge/Linted_with-Biome-60a5fa?style=flat-square&logo=biome&logoColor=white" alt="Biome"></a> <a href="https://github.com/PrefectHQ/fastmcp"><img src="https://img.shields.io/badge/FastMCP-3.2-7c5cfc?style=flat-square" alt="FastMCP"></a> </p>
📖 Installation Guide — quick start, manual setup, and troubleshooting
A high-performance control plane for Ollama-based local LLM sessions, with background memory consolidation (KAIROS), hybrid cloud planning (ULTRAPLAN), and real-time fleet monitoring. Optimized for RTX 4090 environments.
Features
- Background Memory (KAIROS): Auto-consolidates session data into
MEMORY.mdusing asynchronous background cycles. Configurable poll interval and consolidation budget. State persists across restarts. - Session Management: Launch, prompt, monitor, and stop multiple OpenClaude subprocesses concurrently. Persistent across restarts with usage analytics (prompts, output chars, estimated tokens).
- Multimodal Input: Send images (png, jpeg, webp, gif) alongside text instructions via the
send_multimodaltool. Works with any vision-capable Ollama model. - Ollama Control Plane: Model management with VRAM/speed/context metadata, health checks, default persistence.
- Hybrid Planning (ULTRAPLAN): Optional cloud Opus/Sonnet handoff for complex reasoning, local execution. Token cost tracking included.
- Fleet Observability: React dashboard with real-time SSE push, xterm.js terminal, system log viewer, KAIROS status, interactive API playground.
- Interactive Examples: Live "Run" buttons on every example — calls the real backend, shows response JSON with timing.
- API Reference: Searchable documentation with parameter tables, return schemas, env vars, error codes for all 15 tools.
- Safety Guardrails: Kid-safe mode with content filters, proactive privacy reminders, caregiver alerts (file + webhook).
- Dual Transport: MCP SSE (Claude Desktop) + REST bridge (webapp/curl) on the same port.
Quick Start
git clone https://github.com/sandraschi/openclaude-mcp
cd openclaude-mcp
just
This opens an interactive dashboard showing all available commands. Run just bootstrap to install dependencies, then just serve or just dev to start.
Manual Setup
If you don't have just installed:
.\setup.ps1
.\start.ps1
- SSE Endpoint:
http://localhost:10932/sse - Fleet Dashboard:
http://localhost:10933 - API Events:
http://localhost:10932/api/events(SSE push) - Health API:
http://localhost:10932/api/healthOr with Docker: docker compose up
Available Tools (15)
| Tool | Action |
|---|---|
start_session |
Initialize a new Ollama session |
send_prompt |
Execute a prompt in an active session |
send_multimodal |
Send text + images to a session (png, jpeg, webp, gif) |
session_status |
Get output/status/usage/elapsed of a session |
list_sessions |
List all active sessions |
stop_session |
Stop and clean up a session |
kairos_enable |
Activate background memory consolidation |
kairos_disable |
Halt background memory consolidation |
kairos_log |
Retrieve KAIROS consolidation log |
list_models |
Inventory of available Ollama models |
set_default_model |
Set default model for new sessions |
model_status |
Check VRAM and load status |
ultraplan |
Hybrid cloud/local planning cycle |
fleet_dashboard |
Prefab UI fleet status overview |
fleet_status |
Raw fleet status JSON |
caregiver_alert |
[KID-SAFE] Notify caregivers of high-risk interaction |
Architecture
┌─────────────────┐
│ Claude Desktop │── SSE ──────┐
│ Cursor / VSCode │ │
└─────────────────┘ │
▼
┌──────────────┐ REST ┌────────────────────────────┐ stdio (NDJSON) ┌──────────────────┐
│ React Webapp│───────►│ server.py (FastMCP 3.2) │◄────────────────│ OpenClaude CLI │
│ (SSE push) │◄───────│ + SessionStore │ subprocess │ (Node.js/Bun) │
└──────────────┘ │ + ModelRouter │◄───────────────►│ + Ollama :11434 │
│ + KairosController │ └──────────────────┘
│ + SessionPersistence │
│ + SSE Event Bus │
└────────────────────────────┘
Configuration (env vars)
| Variable | Default | Description |
|---|---|---|
OPENCLAUDE_MCP_PORT |
10932 |
Backend port |
OPENCLAUDE_MCP_TOKEN |
— | REST auth token (disable if unset) |
OPENCLAUDE_DIR |
D:\Dev\repos\external\openclaude |
OpenClaude source path |
OPENCLAUDE_ULTRAPLAN_MODEL |
claude-sonnet-4-6 |
Anthropic model for ULTRAPLAN |
OPENCLAUDE_CONFIG_DIR |
~/.config/openclaude |
Persistence directory |
KAIROS_POLL_SECONDS |
30 |
KAIROS daemon poll interval |
KAIROS_MAX_CONSOLIDATIONS |
100 |
Max consolidations per session |
CAREGIVER_WEBHOOK_URL |
— | Webhook for caregiver alerts |
Prerequisites
- Ollama (running locally)
- Node.js (v20+)
- Python 3.13+ with
uv - Local model pulled (e.g.,
gemma4:26b,qwen3.5:35b-a3b)
Test Suite
uv run pytest # 79 tests (unit + smoke + integration + e2e)
uv run pytest tests/unit/ # fast, no external deps
uv run pytest tests/e2e/ # Anthropic API mocked via respx
License
MIT
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.