MCP服务器工具

这是一个最小化的MCP服务器,提供天气查询和简单游戏工具,供ChatGPT调用。

  • by Hornzolen
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Hornzolen/mcp-weatther

使用说明

快速开始

这个项目是一个最小的MCP(模型上下文协议)服务器,它向ChatGPT公开了自定义工具(天气查询+一个简单的游戏)。

运行此服务器后,ChatGPT可以通过MCP将本地Python代码作为工具调用。

0.先决条件

确保已安装以下内容:

  • Python 3.10+

  • 点

  • 吸烟 (用于将本地服务器暴露给ChatGPT)

检查版本:

python --version
pip --version

1.克隆存储库

git clone <your-repo-url>
cd mcp-weather

项目结构:

mcp-weather/
├── server/
│   └── weather_server.py

2.创建并激活虚拟环境

Windows(PowerShell)

python -m venv venv
.\venv\Scripts\activate

您应该看到:

(venv)

3.安装依赖项

pip install "mcp[cli]" httpx

4.启动MCP服务器

cd server
python weather_server.py

如果成功,该过程将继续运行,您应该看到指示MCP服务器处于活动状态的日志。

请勿关闭此终端。

5.使用ngrok暴露服务器

打开一个新的终端窗口并运行:

ngrok http 8000

您将获得一个公共HTTPS URL,如下所示:

https://abcd-1234.ngrok-free.app

您的MCP终点是:

https://abcd-1234.ngrok-free.app/mcp

6.将MCP服务器连接到ChatGPT

1打开ChatGPT

2转到设置→ 开发者

3单击添加MCP服务器

4填写:

  • 名字: mcp-weather (或任何你喜欢的名字)

  • MCP服务器URL:

        https://abcd-1234.ngrok-free.app/mcp
    
  • 认证:无

5保存

6添加MCP服务器后开始新的聊天。

7.测试连接

在新的ChatGPT对话中,启用MCP工具并尝试:

Check the weather in Tokyo.

或

I want to play 南邮之谜.

ChatGPT将自动调用您的MCP工具并返回结果。

可用工具

get_weather(city: str)

查询支持城市的当前天气。

nanyou_mystery

A simple number guessing game (南邮之谜).

备注

  • MCP服务器在本地运行;ChatGPT需要ngrok才能访问它。

  • 重新启动ngrok会生成一个新的URL——如果需要,在ChatGPT中更新MCP服务器URL。

  • 服务器必须正在运行,ChatGPT才能调用这些工具。

故障排除

ModuleNotFoundError

确保:

  • 虚拟环境已激活

  • 依赖项安装在同一环境中

ChatGPT无法调用该工具

  • 确认ngrok正在运行

  • 确认 /mcp 包含在URL中

  • 开始a 新聊天 添加MCP服务器后