Token导航 LogoToken导航TokenDH.com
MCP Python Weather logo
AI代理未说明官方级别未说明来源级核验

MCP Python Weather

MCP Server

一个使用MCP协议和OpenWeatherMap API提供实时天气数据的服务器,适用于AI代理交互。

工具数

1

提示词数

0

GitHub Stars

0

资源数

0
位置天气API集成PythonClaude实时数据Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

EmanManco

提供方

EmanManco

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Python 简易MCP教程

这个项目展示了一个使用(某技术/工具)构建的简单天气服务器 mcp 库。它提供了一个工具,该工具使用OpenWeatherMap API返回给定位置的实时天气数据。

MCP(模型上下文协议)是一种通用标准,使人工智能代理(大型语言模型)能够访问数据、工具和服务。在此情况下,我们将构建一个“服务器”,用于为大型语言模型获取实时天气数据以供其交互使用。

设置

这个项目使用 uv 用于包管理。如需更多信息,请点击此处 关于如何安装UV的说明

uv venv

激活虚拟环境:

source .venv/bin/activate

安装依赖项。

uv sync

API密钥设置

这个项目使用OpenWeatherMap API来获取实时天气数据。您需要:

  1. 在(某网站/平台)注册一个免费账户 OpenWeatherMap(开放天气图)
  2. 从仪表板获取您的API密钥
  3. 设置环境变量:
export OPENWEATHER_API_KEY=your_api_key_here

如何跑步

要测试MCP服务器的天气功能,请执行以下命令:

mcp dev src/mcp_weather.py

然后等待一会儿以加载内容,并点击链接“使用预填充令牌打开检查器”。这将提供一个用户界面,您可以在浏览器中直接使用它来测试MCP服务器。

深入探究

我们的AI代理是如何知道如何使用这个MCP工具的呢?简而言之,它会被序列化成一个JSON模式。

FastMCP 自动将 \get_weather\ 函数注册为工具,从函数签名和文档字符串中提取模式。

{
  "name": "get_weather",
  "description": "Get current weather for a location",
  "inputSchema": {
    "type": "object",
    "properties": {
      "location": { "type": "string" }
    },
    "required": ["location"]
  }
}

然后,我们使用的AI代理(例如Claude Desktop、Cursor或我们自己的实现)将了解这些工具,并知道如何通过提示工程来调用它们。它将被转换成一个类似的提示,如下所示:

You have access to these tools:
- get_weather: Get current weather for a location

To use: {"name": "get_weather", "parameters": {"location": "Tokyo"}}

MCP客户端:与MCP服务器交互

如果你想让你的人工智能代理与MCP服务器进行交互,你需要一个MCP客户端。一些用户界面工具(如Claude Desktop和Cursor)已经为你内置了这一功能。但你也可以通过编写代码来实现这一点。

通常,这归结于在配置文件中声明你的MCP服务器,并提供访问它的指令。在……的情况下 Claude Desktop(可译为“Claude桌面版”),它看起来大概是这样的:

{
  "mcpServers": {
    "weather": {
      "command": "uv",
      "args": ["run", "[...]", "/[PATH_TO_PROJECT]/src/mcp_weather.py"],
      "env": {
        "OPENWEATHER_API_KEY": "your_api_key_here"
      }
    }
  }
}

(此示例已简化——有关更多详细信息,请参阅https://modelcontextprotocol.io/quickstart/user)

并且这将存在于(或“这将被安置在”) claude_desktop_config.json 文件,您可以通过开发者设置访问该文件。但您也可以走捷径,直接运行此命令来安装它(该命令将为您在配置文件中创建相应的条目):

mcp install server.py

您需要重启Claude桌面版,才能在“搜索和工具”部分看到该工具。

关于在代码中实现MCP客户端的选项:

  • https://modelcontextprotocol.io/快速入门/客户端
  • https://github.com/mcp-use/mcp-use 翻译为中文可以是:“https://github.com/mcp-use/mcp-use(GitHub仓库地址,用于存储或分享mcp-use项目)”。不过,通常在中文语境下,我们不会直接翻译网址,而是直接说明其含义或用途,比如“这是一个GitHub上的仓库链接,用于托管mcp-use项目”。如果仅从网址本身翻译,上述翻译已经足够

使用第三方MCP服务器(以Google Sheets为例)

如果你的目标是构建强大且有用的AI代理,那么你可能更倾向于使用现有的MCP服务器,而不是自己创建。这里有一个由官方和第三方开发者提供的大量可用服务器列表:https://github.com/modelcontextprotocol/servers

在Claude Desktop中使用它也非常简单。以这个例子来说,让我们尝试集成Google Sheets的访问功能(不仅仅是读取,还包括创建和修改)。

  • 请遵循 https://github.com/xing5/mcp-google-sheets 上的说明。
  • 设置Google访问权限:

- 创建一个Google Cloud账户和项目。 - 创建一个服务角色,并将JSON保存到磁盘上的某个位置。 - 在Google云端硬盘中创建一个文件夹,并将其权限共享给服务账户的电子邮件。 - 在GCP项目中启用Drive和Sheets API。

然后在Claude桌面端设置MCP服务器(替换环境变量):

{
  "google-sheets": {
    "command": "uvx",
    "args": ["mcp-google-sheets@latest"],
    "env": {
      "SERVICE_ACCOUNT_PATH": "[...]/keys/service-account-xxx.json",
      "DRIVE_FOLDER_ID": "XXX"
    }
  }
}

这将使Google Sheets成为一个可用的工具 uvx 该命令还允许您在无需克隆GitHub项目或安装任何依赖项/环境的情况下运行它。

设置 uv 和 uvx 命令

在MacOS/Linux系统上,Claude桌面版可能会抱怨找不到 uv 或者 uvx 当你尝试启动服务器时,可能只需要创建一个指向该二进制文件的符号链接。

sudo ln -s ~/.local/bin/uv /usr/local/bin/uv
sudo ln -s ~/.local/bin/uvx /usr/local/bin/uvx

目录标签

目录标签

位置天气API集成PythonClaude实时数据天气数据本地部署AI工具MCP协议

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明noneremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP