项目简介:

这是一个展示如何使用Model Context Protocol (MCP) 构建一个简单的本地服务器的示例项目。该服务器暴露了基本的数学计算功能(加法和乘法)作为MCP工具,并配合一个使用Ollama本地LLM的客户端,演示了LLM如何通过MCP发现并调用这些工具来完成用户请求。

主要功能点:

  • 注册并暴露 'add' 和 'multiply' 两个数学函数作为MCP工具。
  • 通过标准输入/输出 (Stdio) 传输协议与MCP客户端通信。
  • 允许MCP客户端发现服务器提供的工具列表及其描述。
  • 接收MCP客户端发起的工具调用请求,执行对应的函数并返回结果。

安装步骤:

  1. 确保您的系统已安装 Python 3.8 或更高版本。
  2. 安装项目所需的 Python 包:
    pip install "mcp[cli] @ git+https://github.com/awslabs/mcp.git" openai==0.28 httpx
  3. 安装并运行 Ollama (请参考 Ollama 官方文档)。
  4. 使用 Ollama 下载并运行一个支持工具调用的本地大模型,例如 Llama3:
    ollama run llama3
    # 或者其他支持工具调用的模型,如 mistral-nemo, mistral, codellama等

服务器配置:

该MCP服务器名为 'calculator',使用标准输入/输出 (Stdio) 作为传输协议。 MCP客户端需要通过指定服务器的启动命令和参数来连接此服务器。 对于此项目中的 'math_server.py' 文件,其启动命令为 'python',参数为 'math_server.py' 文件的路径。 (例如,如果'math_server.py'在当前目录下,客户端配置中应指定command为'python',args为'["math_server.py"]')

基本使用方法:

  1. 在一个终端窗口中启动MCP服务器:
    python math_server.py
  2. 在另一个终端窗口中启动示例MCP客户端(将 '<path_to_server_script>' 替换为 'math_server.py' 文件的实际路径):
    python ollama_client.py <path_to_server_script>
  3. 客户端启动后,您可以在客户端提示符下输入查询,例如 "What is 5 + 8?" 或 "Multiply 7 and 9",LLM将通过调用服务器上的工具来回答。输入 'quit' 退出客户端。

信息

分类

AI与计算