mcpField
M
MCP + Ollama Local Tool Calling Example

MCP + Ollama Local Tool Calling Example

本地服务
github.com/rajeevchandraAI 与智能体878 周前更新

关于 MCP + Ollama Local Tool Calling Example

这是一个用 Python 演示本地 Agent 如何借助 Ollama 的 LLM,通过 MCP 调用函数的示例项目。它包含一个提供加法和乘法工具的 MCP 服务,以及与 Ollama 交互的客户端。

主要功能

  1. 01使用 Ollama 运行本地 LLM
  2. 02通过 MCP 客户端连接服务
  3. 03提供加法和乘法工具
  4. 04由模型根据请求选择工具

适用场景

  1. 01让本地模型计算加法
  2. 02让本地模型计算乘法

MCP 相关

项目包含一个 MCP 服务,向客户端提供 `add` 和 `multiply` 工具;Python 客户端将工具及用户请求发送给 Ollama,并调用模型选择的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP + Ollama 本地工具调用示例

本项目演示了本地 AI Agent 如何使用以下技术来理解用户查询并自动调用 Python 函数:

  • 模型上下文协议(MCP)
  • 使用 Ollama 运行本地大模型(例如,Llama3)
  • Python MCP 客户端和服务端

🔗 时序图

sequenceDiagram
    participant User
    participant MCP_Client
    participant Ollama_LLM
    participant MCP_Server

    User->>MCP_Client: 1) User types: "What is 5 + 8?"
    MCP_Client->>Ollama_LLM: 2) Send available tools + user query
    Ollama_LLM->>Ollama_LLM: 3) Understand query & tool descriptions
    Ollama_LLM->>Ollama_LLM: 4) Select tool: add(a=5, b=8)
    Ollama_LLM->>MCP_Client: 5) Return tool_call
    MCP_Client->>MCP_Server: 6) Execute add(a=5, b=8)
    MCP_Server-->>MCP_Client: 7) Return result: 13
    MCP_Client-->>User: 8) Show final answer: 13

📚 项目结构

.
├── math_server.py      # MCP Server exposing add() and multiply() tools
├── ollama_client.py    # MCP Client interacting with Ollama
├── README.md           # Project documentation

🛠️ 设置说明

1. 安装依赖
pip install "mcp[cli] @ git+https://github.com/awslabs/mcp.git" openai==0.28 httpx

请确保已安装并运行 Ollama。

2. 拉取或运行大模型
ollama run llama3

(请确保运行的模型支持工具调用。)

3. 运行 MCP 服务
python math_server.py

该服务提供两个简单的工具:

  • add(a: int, b: int) -> int
  • multiply(a: int, b: int) -> int
4. 运行 MCP 客户端
python ollama_client.py math_server.py
5. 开始交互!

示例查询:

Query: What is 5 + 8?
Response: 13

Query: Multiply 7 and 9
Response: 63

MCP 客户端会将查询和可用工具发送给 Ollama。大模型会根据工具描述和用户意图,在内部决定使用哪个工具。


🚀 工作原理

  • MCP 客户端列出可用工具。
  • 将工具和用户查询发送给 Ollama 大模型。
  • 大模型推理并选择最匹配的工具。
  • 大模型生成 tool_call。
  • MCP 客户端通过 MCP 服务调用函数。
  • 返回并显示最终结果。

✅ 无需手动硬编码! ✅ 所有操作都在本地运行! ✅ 完全自主!


📢 这为何重要

这种模式可用于构建智能本地 AI Agent,使其能够:

  • 理解用户意图
  • 动态选择正确的操作
  • 完全离线并在本地运行

它为以下应用开辟了道路:

  • 自主开发者
  • 本地智能助手
  • 安全的 AI 工作流

🏷️ 分享用话题标签

#MCP #ModelContextProtocol #Ollama #LocalLLM #FunctionCalling #Python #AI #DeveloperTools #AIEngineering #AutonomousAgents

🙌 致谢


“更智能的 AI Agent,始于理解它们的思考方式!”


**后续步骤:**添加 Streamlit UI,或将此项目容器化 🚀

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。