Ollama MCP Server
Ollama MCP サーバー
Ollama のローカル LLM モデルと Claude Desktop などの MCP 互換アプリケーションとのシームレスな統合を可能にする、Ollama 用の MCP (モデル コンテキスト プロトコル) サーバー。
特徴
利用可能なOllamaモデルの一覧
Ollamaから新しいモデルを取得する
Ollama のチャット API を使用してモデルとチャットする
詳細なモデル情報を取得する
自動ポート管理
環境変数の設定
Related MCP server: Ollama MCP Server
前提条件
Node.js (v16 以上)
npm
Ollama をローカルにインストールして実行
インストール
手動インストール
npm 経由でグローバルにインストールします。
npm install -g @rawveg/ollama-mcp他のMCPアプリケーションへのインストール
Ollama MCP サーバーを他の MCP 互換アプリケーション (Cline や Claude Desktop など) にインストールするには、アプリケーションの MCP 設定ファイルに次の構成を追加します。
{
"mcpServers": {
"@rawveg/ollama-mcp": {
"command": "npx",
"args": [
"-y",
"@rawveg/ollama-mcp"
]
}
}
}設定ファイルの場所はアプリケーションによって異なります。
Claude デスクトップ: Claude アプリ データ ディレクトリ内の
claude_desktop_config.jsonCline: VS Code グローバル ストレージ内の
cline_mcp_settings.json
使用法
サーバーの起動
単に実行します:
ollama-mcpサーバーはデフォルトでポート3456で起動します。PORT環境変数を使用して別のポートを指定することもできます。
PORT=3457 ollama-mcp環境変数
PORT: サーバーポート(デフォルト: 3456)。直接実行時に使用できます。# When running directly PORT=3457 ollama-mcpOLLAMA_API: Ollama APIエンドポイント(デフォルト: http://localhost:11434 )
APIエンドポイント
GET /models- 利用可能なモデルを一覧表示するPOST /models/pull- 新しいモデルをプルするPOST /chat- モデルとチャットするGET /models/:name- モデルの詳細を取得する
発達
リポジトリをクローンします。
git clone https://github.com/rawveg/ollama-mcp.git
cd ollama-mcp依存関係をインストールします:
npm installプロジェクトをビルドします。
npm run buildサーバーを起動します。
npm start貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
ただし、これは事前の協議と合意なしに、このプロジェクトをサードパーティのサービスや商用プラットフォームに組み込むことを許可するものではありません。以前は、 Smitheryなどのサービスとの統合をサポートするための貢献(Dockerfileや関連するREADMEの更新など)を受け入れていましたが、同様のサービスであるGlamaの最近の行動により、このポリシーの見直しが必要になりました。
Glamaは、事前の通知や同意なしにオープンソースのMCPプロジェクトを商用サービスに含めることを決定し、その後、メンテナーに対し、自社プラットフォームとの互換性を確保するための無償作業を求めるIssueリクエストを作成しました。対話や報酬なしにコミュニティの労働力を利益のために利用するというこの行為は、配慮に欠けるだけでなく、倫理的にも問題があります。
その結果、本プロジェクトとその貢献者の完全性を守るため、ライセンスはGNU Affero General Public License v3.0 (AGPL-3.0)に更新されました。この変更により、特に商用またはサービスベースのプラットフォームにおけるソフトウェアの使用は、AGPLの条項に完全に準拠し**、別途商用ライセンスを取得する必要があることが保証されます。プロジェクトが積極的に収益化され**ている場合、元のソースへのリンクを貼るだけでは不十分です。本プロジェクトを商用提供に含めたい場合は、事前にご連絡いただき、ライセンス条件についてご相談ください。
ライセンス
AGPL v3.0
関連している
このプロジェクトは以前はMITライセンスでした。2025年4月20日以降、無許可の商用利用を防ぐため、AGPL-3.0ライセンスに変更されました。この変更以前にこのプロジェクトをご利用の場合は、該当するライセンスについては、関連するGitタグまたはコミットを参照してください。
Available Tools
13 toolsollama_chatA
Chat with a model using conversation messages. Supports system messages, multi-turn conversations, tool calling, and generation options.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name of the model to use | |
| messages | Yes | Array of chat messages | |
| tools | No | Tools that the model can call (optional). Provide as JSON array of tool objects. | |
| options | No | Generation options (optional). Provide as JSON object with settings like temperature, top_p, etc. | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description should disclose behavioral traits. It states capabilities but does not mention side effects, authentication, rate limits, or whether the tool is read-only (it is not, as it creates chat history). Basic transparency but insufficient depth.
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?
A single sentence listing key features. It is concise and includes the main action. However, it could be front-loaded with a clearer verb (e.g., 'Send a chat message to a model') and structured with bullet points for readability.
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's complexity (5 params, 2 required) and no output schema, the description mentions supported features but does not detail response format or how to interpret results. It provides enough context for basic use but lacks completeness for advanced scenarios.
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 coverage is 80% (high), so the description does not need to add much. It mentions features that map to parameters (e.g., 'system messages' relates to role enum) but does not explain parameter details beyond the schema. Baseline score appropriate.
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 chats with a model using conversation messages, and lists supported features (system messages, multi-turn, tool calling, options). This differentiates it from sibling tools like ollama_generate, which is likely for single-turn generation.
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 mentions features but does not provide explicit guidance on when to use this tool vs siblings like ollama_generate. It implies usage for conversational scenarios but lacks exclusion criteria or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_copyC
Copy a model. Creates a duplicate of an existing model with a new name.
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | Name of the source model | |
| destination | Yes | Name for the copied model | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the action without explaining side effects (e.g., disk usage, permissions required, whether the original is affected) or any constraints.
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?
Very concise at one sentence, front-loading the action. However, it could include a brief note on output or usage without becoming verbose.
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?
No output schema exists, so the description should explain return values (e.g., success confirmation). It also lacks behavioral details to help an agent decide between sibling tools, given the simple task.
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 coverage is 67% (source and destination have basic descriptions, format lacks description). The tool description adds no additional meaning beyond the schema, and the format parameter is not explained despite having enum options.
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 action: 'Copy a model' and specifies the resource (model) and result ('duplicate with new name'). This distinguishes it from siblings like ollama_create or ollama_delete.
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 guidance on when to use this tool versus alternatives like ollama_create or ollama_pull. The description does not mention scenarios, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_createB
Create a new model with structured parameters. Allows customization of model behavior, system prompts, and templates.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name for the new model | |
| from | Yes | Base model to derive from (e.g., llama2, llama3) | |
| system | No | System prompt for the model | |
| template | No | Prompt template to use | |
| license | No | License for the model | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations; description does not disclose side effects (e.g., overwrites existing model, requires pulling base model, or modifies local storage).
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?
Two sentences, no redundancy, efficient. Could add a bit more context without losing conciseness.
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?
No output schema, no annotations; description omits important context like conflict behavior, required permissions, or outcome (e.g., local file creation). Incomplete for a tool with 6 parameters.
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 83%; description adds 'structured parameters' but not much beyond what schema already provides. Baseline 3 applicable.
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?
Clearly states 'Create a new model with structured parameters' and distinguishes from sibling tools like ollama_copy, ollama_delete, etc.
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?
Implies usage for creating a new model, but no explicit guidance on when to use vs alternatives or prerequisites (e.g., base model must exist).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_deleteB
Delete a model from local storage. Removes the model and frees up disk space.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name of the model to delete | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states the destructive action and disk space effect, which is adequate but lacks details like irreversibility or any side effects.
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?
Two concise sentences with no fluff. Every word adds value.
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 low complexity (2 params, no output schema), the description is fairly complete but could mention that deletion is permanent or explain the format parameter's purpose.
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 50% (only 'model' has a description). The description does not add meaning for the 'format' parameter (enum with defaults) beyond the schema.
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 ('Delete a model from local storage') and the effect ('removes the model and frees up disk space'). This distinguishes it from siblings like ollama_chat or ollama_list.
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 guidance on when to use this tool versus alternatives (e.g., when to delete vs push/pull). No prerequisites or warnings about the model being in use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_embedA
Generate embeddings for text input. Returns numerical vector representations.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name of the model to use | |
| input | Yes | Text input. For batch processing, provide a JSON-encoded array of strings, e.g., ["text1", "text2"] | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description should disclose behaviors. It states the output type but lacks details on side effects (none expected), permissions, or rate limits. Adequate for a simple read-like operation.
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?
Two sentences, concise and front-loaded with purpose. Every word is necessary.
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?
No output schema; description could mention vector dimensions, normalization, or use cases. Lacks detail on return format but is minimally sufficient.
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 coverage is 67%, description adds no extra meaning beyond what schema already provides for model and input. Format parameter has enum and default in schema. Baseline 3 since description is not incorrect but adds minimal value.
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?
Description clearly states the action (generate), resource (embeddings), and output (numerical vector representations). It distinguishes from siblings like ollama_chat and ollama_generate which produce text.
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 guidance on when to use embeddings vs other tools like chat or generation. No mention of use cases such as semantic search or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_generateA
Generate completion from a prompt. Simpler than chat, useful for single-turn completions.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name of the model to use | |
| prompt | Yes | The prompt to generate from | |
| options | No | Generation options (optional). Provide as JSON object with settings like temperature, top_p, etc. | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states 'generate completion' without disclosing behavioral traits like whether it is read-only, destructive, or any side effects. Lacks information on synchronous vs streaming behavior.
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?
Two short, front-loaded sentences with no superfluous information. Every word adds value.
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?
No output schema and no description of return values. Lacks behavioral context that would help agent understand outcomes. For a single-turn generation tool, details like response format or streaming are missing.
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 coverage is 75% (context signal), but description adds no additional meaning beyond what input schema already provides. Does not elaborate on parameters or how 'options' or 'format' affect generation.
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?
Clearly states the verb 'generate' and resource 'completion from a prompt'. Distinguishes from sibling 'ollama_chat' by noting it's simpler and for single-turn completions.
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?
Explicitly mentions when to use this tool: for single-turn completions. Contrasts with 'chat' (sibling ollama_chat) which implies multi-turn, providing clear guidance on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_listA
List all available Ollama models installed locally. Returns model names, sizes, and modification dates.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | Output format (default: json) | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It states the return fields (names, sizes, dates) but lacks detail on read-only nature, authentication needs, or edge cases like empty results. For a simple listing tool, this is adequate but not thorough.
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, front-loaded sentence that conveys all essential information. No unnecessary words, making it highly efficient for an AI agent to parse.
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's low complexity, one optional parameter, and no output schema required, the description fully covers what the agent needs: the action, the result contents, and the optional format. No gaps are evident.
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 input schema has one parameter ('format') with complete description in the schema itself (enum and default). The tool description adds no extra semantic value beyond what the schema already provides, so baseline 3 is appropriate.
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'), the resource ('all available Ollama models installed locally'), and the returned information ('model names, sizes, and modification dates'). It effectively distinguishes from sibling tools like ollama_show or ollama_ps by focusing on listing local models.
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 implies the usage context (listing installed models) but does not provide explicit guidance on when to use this tool versus alternatives like ollama_show for details or ollama_ps for running models. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_psB
List running models. Shows which models are currently loaded in memory.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description accurately states behavior but does not disclose additional traits like authorization or side effects. Since no annotations, agent must infer safety.
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?
Single sentence, front-loaded with key action and resource, no extraneous words.
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?
Adequate for a simple list tool with one optional parameter and no output schema. Could mention that the output is in JSON or markdown as per the format parameter.
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% and the tool description does not mention the format parameter or its allowed values (json, markdown). Thus adds no meaning beyond schema.
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?
Clearly states the tool lists running models currently in memory. Distinguishes from sibling ollama_list which likely lists all models.
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 guidance on when to use this tool vs alternatives like ollama_list or ollama_show.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_pullB
Pull a model from the Ollama registry. Downloads the model to make it available locally.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name of the model to pull | |
| insecure | No | Allow insecure connections | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It states the tool downloads a model, implying network usage and local storage. However, it does not mention whether it overwrites existing models, handles authentication, or any rate limits. The description is basic but not misleading.
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 extremely concise: two sentences that directly convey the action and effect. Every word serves a purpose, and the primary verb appears first. There is no unnecessary elaboration.
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 simplicity of the tool (pull a model), the description covers the main intent. However, it lacks details on return format, progress indication, error handling, or prerequisites (e.g., Ollama server running). With no output schema, the agent may not know what to expect from the call.
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 input schema has moderate description coverage (67% per context signals). The description does not add any parameter-level information beyond the schema. Since schema descriptions are fairly clear for 'model' and 'insecure', and 'format' has an enum, the lack of extra context in the tool description is acceptable but not improved.
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: pulling a model from the Ollama registry and making it available locally. The verb 'pull' matches the tool name, and the resource 'model' is explicit. However, it does not explicitly distinguish from siblings like 'ollama_push' or 'ollama_copy', though the action is sufficiently different.
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 does not mention prerequisites, exclusions, or compare to sibling tools such as 'ollama_create' or 'ollama_download' (if existed). The agent is left to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_pushB
Push a model to the Ollama registry. Uploads a local model to make it available remotely.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name of the model to push | |
| insecure | No | Allow insecure connections | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must fully disclose behavior. Describes upload action but omits details about overwrite behavior, authentication, rate limits, or the effect of the 'insecure' parameter. Significant gaps.
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?
Two concise sentences with no redundant information. Could be slightly improved by front-loading key info, but overall 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 3 parameters, no output schema, and no annotations, the description is insufficient. Missing error cases, return format, prerequisites, and detailed usage steps.
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 coverage is 67% (2 of 3 params described). Description adds no extra meaning beyond the schema—repeats 'push' and 'local to remote' but doesn't explain model naming, insecure usage, or format output.
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 uses a specific verb ('push') and resource ('model to the Ollama registry'), clearly indicating the action. It distinguishes from sibling tools like ollama_pull (download) and ollama_list.
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?
Implies usage: uploading a local model for remote availability. However, lacks explicit when-to-use vs alternatives, prerequisite (model must exist locally), or context about when to choose this over ollama_copy.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_showA
Show detailed information about a specific model including modelfile, parameters, and architecture details.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Name of the model to show | |
| format | No | Output format (default: json) | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. The verb 'show' strongly implies a read-only operation with no side effects, and the listed details indicate the scope. However, it does not explicitly confirm non-destructiveness or mention any required permissions or rate limits.
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, clear 15-word sentence. It front-loads the action and resource, and every word contributes meaning. No unnecessary details.
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?
For a simple information-retrieval tool with two parameters and no output schema, the description covers the essential purpose and scope. It could specify that the output format is configurable and mention the response style, but the format parameter and sibling context make it adequate.
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 100%, so baseline is 3. The description adds no extra meaning beyond the schema for the two parameters ('model' and 'format'). It mentions 'modelfile, parameters, and architecture' but does not tie these to parameters.
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 ('Show detailed information') and the resource ('specific model'), and lists included details (modelfile, parameters, architecture). This distinguishes it from sibling tools like ollama_list (lists models) or ollama_chat (conversation).
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 implies usage for retrieving model details, but does not explicitly state when to use this tool over alternatives (e.g., ollama_list for brief info, ollama_pull for downloading). No when-not or sibling comparisons are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_web_fetchA
Fetch a web page by URL using Ollama's web fetch API. Returns the page title, content, and links. Requires OLLAMA_API_KEY environment variable.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL to fetch | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description covers basic behavioral traits: it fetches a web page, returns specific fields, and requires an API key. However, it omits details like rate limits, error handling, or authentication specifics beyond the key.
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?
Two concise sentences that front-load the purpose. Every sentence adds value; no redundancy.
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 only 2 parameters and no output schema, the description covers the basic return fields but lacks details on output structure variations per format, pagination, or size limits.
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 coverage is 50% (only 'url' has a description). The description adds no extra meaning beyond the schema, such as explaining when to use json vs markdown for the 'format' parameter.
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 ('fetch'), the resource ('web page by URL'), and the return values ('page title, content, and links'). This distinguishes it from sibling tools like ollama_web_search.
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?
It mentions the prerequisite 'Requires OLLAMA_API_KEY environment variable' but does not specify when to use this tool versus alternatives (e.g., ollama_web_search) or provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ollama_web_searchA
Perform a web search using Ollama's web search API. Augments models with latest information to reduce hallucinations. Requires OLLAMA_API_KEY environment variable.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The search query string | |
| max_results | No | Maximum number of results to return (1-10, default 5) | |
| format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool accesses an external API and requires a key, but does not discuss potential side effects, rate limits, or data persistence. For a read-only search tool, this is adequate but not comprehensive.
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 two sentences, front-loaded with the primary action, and includes a key requirement. No unnecessary words or repetition.
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?
The description lacks information about the output format (e.g., what fields are returned in JSON or markdown). Without an output schema, the agent may not know how to parse results. For a tool with a simple interface, it is marginally complete.
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 input schema already describes all three parameters (query, max_results, format) with high coverage. The description adds no new semantic detail beyond the schema, earning a baseline score of 3.
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 function: performing a web search using Ollama's API. It explicitly distinguishes from sibling tools like ollama_chat and ollama_web_fetch by specifying it searches the web, not chat or single-page fetch.
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?
It mentions the prerequisite (OLLAMA_API_KEY) and the benefit (reducing hallucinations), implying use when current information is needed. However, it doesn't explicitly state when not to use it or provide direct comparisons to alternatives like ollama_web_fetch.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
13 tool updates
- First observed
ollama_chat - First observed
ollama_copy - First observed
ollama_create - First observed
ollama_delete - First observed
ollama_embed - First observed
ollama_generate - First observed
ollama_list - First observed
ollama_ps - First observed
ollama_pull - First observed
ollama_push - First observed
ollama_show - First observed
ollama_web_fetch - First observed
ollama_web_search
TDQS
Scored across 13 tools
Each tool has a clearly distinct purpose: chat vs generate, list vs ps, copy/create/delete/pull/push for model management, embed for embeddings, show for details, web_fetch and web_search for web operations. No overlapping functionality.
All tools use the 'ollama_' prefix and generally follow a verb_noun pattern (chat, copy, create, etc.). Minor deviations: 'ps' is an abbreviation but standard, and 'web_fetch'/'web_search' place the noun first, but overall consistent.
13 tools is well-scoped for an Ollama server. Covers model management, text generation/chat, embeddings, and web augmentation without being excessive or sparse.
The tool set provides comprehensive CRUD for models, plus chat/generate, embeddings, and web search/fetch. No obvious gaps for the intended functionality.
Maintenance
Related MCP Connectors
MCP-Native LLM Orchestration Agent
MCP server for OpenAI API (chat completions, image generation, embeddings) via AceDataCloud
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
MCP server for AI dialogue using various LLM models via AceDataCloud
Related MCP Servers
- AlicenseBqualityFmaintenanceA bridge that enables seamless integration of Ollama's local LLM capabilities into MCP-powered applications, allowing users to manage and run AI models locally with full API coverage.10772 npm74AGPL 3.0
- AlicenseCqualityDmaintenanceA bridge that integrates Ollama's local LLM capabilities into MCP-powered applications, enabling users to run, manage, and interact with AI models locally with full control and privacy.9359 npm5MIT
- AlicenseBqualityFmaintenanceEnables 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