add-taskLABSCO SUMMARY
A second, local model doing the structured thinking.
The point is not to replace your assistant but to give it a place to offload decomposition and evaluation onto a model running on your own hardware — no per-token cost and nothing leaving the machine. It checks at startup whether the configured model exists and warns if not, which saves the confusing failure where every call errors for a reason nobody surfaces.
What it is
An MCP server that sits in front of a local Ollama instance and uses it for structured work rather than chat. The design pairs each tool with a prompt schema: the prompt shapes how the model thinks, the tool carries out the action, so decomposition and evaluation come back structured instead of as prose.
What you get
add-task— create a task fromnameanddescription, with optionalpriority,deadlineandtags, returning its identifierdecompose-task— break a task into subtasks at agranularityof high, medium or low, capped bymax_subtasks, returning dependencies and estimated complexityevaluate-result— score a result against acriteriaobject, withdetailedfor the long form, returning a score and suggested improvementsrun-model— run any Ollama model directly with aprompt,temperatureandmax_tokens- Matching prompts,
decompose-taskandevaluate-result, that give the model the structure each tool expects - Resources under three URI schemes —
task://for individual tasks,result://for evaluations,model://for the models available - Connection pooling and an LRU cache, both sized in
config.py, so repeated similar requests do not hit Ollama again - Errors that name what went wrong, including the list of available models when the one you asked for is missing
Requirements
A running Ollama with at least one model pulled — ollama pull llama3 is the documented starting point. OLLAMA_HOST defaults to http://localhost:11434, and APP_LOG_LEVEL controls verbosity. The model is chosen in order of precedence: the model parameter on the call, then a model entry in the mcp_config.json inside the clone, then OLLAMA_DEFAULT_MODEL, then the default, llama3. That file ships set to deepseek-r1:14b, and your client starts the server inside the clone, so pull that model, change the entry, or pass model on each call. Run it from a clone: uv sync, then your client starts it with uv --directory pointing at the clone and run ollama-mcp-server. The package is not on PyPI, so there is nothing to pip install.
Setup effort
Build from source — git clone https://github.com/NewAITees/ollama-MCP-server.git
USE CASES
Turning a vague piece of work into a plan
Decompose it at the granularity you want and get subtasks back with dependencies and complexity, not a flat list.
Checking work against stated criteria
Evaluate the result against the criteria object and read the score with the suggested improvements.
Sending a prompt to a local model directly
Run any pulled Ollama model with your own temperature and token limit, without a second client.
Keeping the work off a paid API
Point it at your own Ollama host so decomposition and scoring run locally.
4 tools
Listed in project docs. Your client may show a different list.
decompose-taskevaluate-resultrun-modelBEFORE YOU INSTALL
What to know first
Tools you get
4 tools named in the project's documentation.
Requires
- uv on PATH
- Python 3.13 or later
- A running Ollama with at least one model pulled (the README starts with ollama pull llama3)
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
git clone https://github.com/NewAITees/ollama-MCP-server.git
cd ollama-MCP-server
uv syncMCP Clients
Claude Desktop — local dev
{
"mcpServers": {
"ollama-MCP-server": {
"command": "uv",
"args": [
"--directory",
"<YOUR_PATH_TO_OLLAMA_MCP_SERVER>",
"run",
"ollama-mcp-server"
]
}
}
}