MCP Ollama Server
Allows integration with Ollama, enabling use of Ollama models through the MCP interface. Provides capabilities to list models, get model details, and ask questions to Ollama models.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Ollama Serverlist all my available models"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Ollama
A Model Context Protocol (MCP) server for integrating Ollama with Claude Desktop or other MCP clients.
Requirements
Python 3.10 or higher
Ollama installed and running (https://ollama.com/download)
At least one model pulled with Ollama (e.g.,
ollama pull llama2)
Configure Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"ollama": {
"command": "uvx",
"args": [
"mcp-ollama"
]
}
}
}Development
Install in development mode:
git clone https://github.com/yourusername/mcp-ollama.git
cd mcp-ollama
uv syncTest with MCP Inspector:
mcp dev src/mcp_ollama/server.pyRelated MCP server: Ollama MCP Server
Features
The server provides four main tools:
list_models- List all downloaded Ollama modelsshow_model- Get detailed information about a specific modelask_model- Ask a question to a specified model
License
MIT
Available Tools
3 toolsask_modelC
Ask a question to a specific Ollama model
Args:
model: Name of the model to use (e.g., 'llama2')
question: The question to ask the model
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | ||
| question | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the basic action but doesn't cover critical traits like response format, potential latency, error handling, or any limitations (e.g., token limits, model availability). This leaves significant gaps in understanding how the tool behaves beyond its core function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, with the first sentence clearly stating the purpose. The 'Args' section is structured but could be more integrated; overall, it avoids unnecessary verbosity. A point is deducted because the formatting (e.g., bullet-like 'Args:') slightly disrupts flow, but it remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of querying an AI model, no annotations, and no output schema, the description is incomplete. It lacks details on response behavior, error cases, and operational constraints, which are essential for effective tool use. The agent would need to guess or trial-and-error to understand full context, making this inadequate for a tool with such potential variability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds value by explaining the 'model' parameter with an example ('e.g., llama2') and clarifying 'question' as the input to ask, which goes beyond the bare schema. However, it doesn't detail constraints (e.g., model naming conventions, question length limits), resulting in a baseline score that reflects partial compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Ask a question') and the target resource ('to a specific Ollama model'), making the purpose immediately understandable. It distinguishes from siblings like 'list_models' and 'show_model' by focusing on querying rather than listing or displaying model details. However, it doesn't specify the exact nature of the response (e.g., text generation, reasoning), keeping it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus alternatives. While the description implies usage for querying models, it doesn't mention prerequisites (e.g., model must be available), exclusions, or comparisons to other tools. The agent must infer usage from the purpose alone, lacking clear contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_modelsB
List all downloaded Ollama models
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states it's a list operation, implying read-only behavior, but doesn't mention any side effects, permissions needed, rate limits, or what the output format looks like (e.g., list structure, pagination). This leaves significant gaps for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any fluff or unnecessary words. It's appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no annotations, no output schema, and the description lacks behavioral details (e.g., output format, side effects), it's incomplete. For a list operation, the agent needs to know what the return looks like, but this isn't addressed, making it inadequate despite the simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the input schema has 100% description coverage (though empty). The description doesn't need to add parameter details, so it meets the baseline of 4 for tools with no parameters, as there's nothing to compensate for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List all') and resource ('downloaded Ollama models'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'show_model' (which might display details of a specific model), so it doesn't achieve the highest score for sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'ask_model' or 'show_model'. It doesn't mention prerequisites, context for usage, or any exclusions, leaving the agent without direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_modelB
Get detailed information about a specific model
Args:
name: Name of the model to show information about
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves 'detailed information' but doesn't specify what that entails, whether it's read-only, requires permissions, has rate limits, or what the output format is. This leaves significant gaps for a tool with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured with a clear purpose statement followed by parameter details in a concise format. Every sentence adds value without redundancy, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'detailed information' includes, how results are returned, or any behavioral traits like error handling. For a tool with no structured support, this leaves the agent under-informed about its operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaningful context for the single parameter 'name' by explaining it's 'Name of the model to show information about', which clarifies its purpose beyond the schema's basic title. With 0% schema description coverage and only one parameter, this effectively compensates for the lack of schema details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get detailed information') and resource ('about a specific model'), making it immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_models' (which likely lists multiple models) or 'ask_model' (which likely queries a model), missing full sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'list_models' or 'ask_model', nor does it specify prerequisites or contexts for usage, leaving the agent to infer based on tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose with no overlap. 'ask_model' queries a model, 'list_models' enumerates available models, and 'show_model' provides metadata about a specific model. An agent can easily distinguish between these three distinct operations.
All tool names follow a consistent verb_noun pattern using snake_case. 'ask_model', 'list_models', and 'show_model' maintain perfect naming consistency throughout the set, making them predictable and readable.
With only 3 tools, the server feels somewhat thin for interacting with Ollama models. While the tools cover basic operations, additional functionality like model management (e.g., pull, delete) or conversation history would be expected for a more complete surface.
The tools provide good coverage for core Ollama interactions: querying models, listing them, and getting details. However, there are minor gaps in model management operations (e.g., pulling new models, deleting models) that agents might need to work around for full lifecycle coverage.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
The OpenRouter MCP server plugs OpenRouter into the AI tools you already use. Once connected, your assistant can pull live OpenRouter data (models, prices, your credits, rankings, and docs) and send quick test messages, all without leaving your editor.
MCP server for AI dialogue using various LLM models via AceDataCloud
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables seamless integration between Ollama's local LLM models and MCP-compatible applications, supporting model management and chat interactions.131,144170AGPL 3.0
- FlicenseNot gradedqualityDmaintenanceA server that enables seamless integration between local Ollama LLM instances and MCP-compatible applications, providing advanced task decomposition, evaluation, and workflow management capabilities.6
- AlicenseAqualityCmaintenanceEnables consulting with local Ollama models for reasoning from alternative viewpoints. Supports sending prompts to Ollama models and listing available models on your local Ollama instance.51MIT
- AlicenseAqualityDmaintenanceIntegrates Ollama's local AI models with MCP clients, enabling listing models, viewing model details, and asking questions to models.3MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/emgeee/mcp-ollama'
If you have feedback or need assistance with the MCP directory API, please join our Discord server