Ollama Handoff
FreeNot checkedOffloads cheap work from cloud LLM agents to a local Ollama model, reducing costs and keeping frontier models focused on complex tasks.
About
Offloads cheap work from cloud LLM agents to a local Ollama model, reducing costs and keeping frontier models focused on complex tasks.
README
ollama-handoff
An MCP server that offloads cheap work from your cloud LLM agent to a local Ollama model.
CI PyPI Python MCP License: MIT
Your frontier model (Claude, GPT, etc.) is brilliant and metered. A lot of the work it gets handed — summarizing a log, drafting a commit message, pulling every URL out of a file, a quick first-pass code review — doesn't need frontier reasoning at all. ollama-handoff exposes your local Ollama instance as a handful of purpose-built MCP tools, so your agent can route that work to a model on your own GPU — at zero cloud cost — and spend its (paid) reasoning budget on the things that actually need it.
This isn't a generic "wrap the Ollama API" server. Each tool ships with a baked-in system prompt and a description written for the calling agent, so the agent knows when to hand off and gets a tuned result back without re-stating instructions every call.
Why you'd want this
- 💸 Spend less. Routine offloads run locally and bill nothing.
- ⚡ Keep the big model focused. Summaries, extractions, and drafts don't eat its context or your budget.
- 🧠 Tuned, not raw.
summarize_local,code_review_local,draft_commit_message_local, andextract_localcome with reviewer/summarizer/extractor system prompts already dialed in. - 🔌 Drop-in. One MCP registration; works with Claude Code, Claude Desktop, Cursor, and any MCP client.
- 🪶 Tiny & auditable. Two dependencies (
mcp,httpx), fully typed, unit-tested, no telemetry.
Requirements
- Ollama running locally (
ollama serve) with at least one model pulled, e.g.ollama pull qwen2.5-coder:14b. - Python 3.11+ (or just
uvx, which manages it for you).
Install
The fastest path is uv — no manual venv needed:
uvx ollama-handoff # run directly
# or
pip install ollama-handoff # then run: ollama-handoff
Claude Code
claude mcp add ollama-handoff -- uvx ollama-handoff
Claude Desktop / Cursor (mcp config block)
{
"mcpServers": {
"ollama-handoff": {
"command": "uvx",
"args": ["ollama-handoff"],
"env": {
"OLLAMA_DEFAULT_MODEL": "qwen2.5-coder:14b"
}
}
}
}
Run with Docker
A Dockerfile is included. The server speaks MCP over stdio, so run it
interactively (-i) and point it at your Ollama instance:
docker build -t ollama-handoff .
docker run --rm -i -e OLLAMA_URL=http://host.docker.internal:11434 ollama-handoff
On native Linux (no Docker Desktop), use --network=host with
OLLAMA_URL=http://localhost:11434.
Tools
| Tool | What it does | When the agent should reach for it |
|---|---|---|
ask_local |
One-shot prompt to the local model | Any handoff that doesn't need frontier reasoning |
chat_local |
Multi-turn local chat | Handoffs needing more than one turn of context |
summarize_local |
Structured summary (headline + bullets) | Long files, logs, transcripts, docs |
code_review_local |
Quick first-pass review of a diff/code | Cheap pre-filter before a deep review |
draft_commit_message_local |
Conventional commit message from a diff | Routine commits |
extract_local |
Pull structured items from unstructured text | URLs, function names, error codes, TODOs |
list_models |
List locally available Ollama models | Discovery / choosing a model |
server_info |
Report the effective configuration | Debugging setup |
Configuration
All configuration is via environment variables set in your MCP registration:
| Variable | Default | Description |
|---|---|---|
OLLAMA_URL |
http://localhost:11434 |
Base URL of the Ollama server |
OLLAMA_DEFAULT_MODEL |
qwen2.5-coder:14b |
Default model for handoffs |
OLLAMA_NUM_CTX |
32768 |
Context window in tokens |
OLLAMA_KEEP_ALIVE |
30m |
How long to keep the model resident in VRAM |
OLLAMA_TIMEOUT_S |
600 |
Per-request timeout, seconds |
Example
Once registered, you don't call the tools yourself — your agent does. A typical exchange:
You: Summarize the errors in
build.logand draft a commit for the staged fix.Agent: (calls
summarize_local(build.log, focus="errors and stack traces")anddraft_commit_message_local(git diff --staged)— both run on your GPU, nothing billed) → returns the summary + commit message.
Development
git clone https://github.com/Michael-WhiteCapData/ollama-handoff
cd ollama-handoff
uv pip install -e ".[dev]"
ruff check .
pytest # tests use httpx.MockTransport — no running Ollama required
See CONTRIBUTING.md. Contributions welcome — especially new specialized handoff tools.
License
MIT © Michael Tierney
Install Ollama Handoff in Claude Desktop, Claude Code & Cursor
unyly install ollama-handoffInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add ollama-handoff -- uvx ollama-handoffFAQ
Is Ollama Handoff MCP free?
Yes, Ollama Handoff MCP is free — one-click install via Unyly at no cost.
Does Ollama Handoff need an API key?
No, Ollama Handoff runs without API keys or environment variables.
Is Ollama Handoff hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Ollama Handoff in Claude Desktop, Claude Code or Cursor?
Open Ollama Handoff on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Ollama Handoff with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
