Token导航 LogoToken导航TokenDH.com
MCP Weather Vercel logo
地图位置未说明官方级别未说明来源级核验

MCP Weather Vercel

MCP Server

提供基于Open-Meteo API的天气查询功能,支持地名搜索和7天天气预报,适用于ChatGPT开发者模式。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
位置天气地理编码TypeScript天气预报API集成

安装说明

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

作者 / 组织

hajimeno-ipoo

提供方

hajimeno-ipoo

最后核验

2026/5/17 20:21

快速接入

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

详细介绍

MCP天气(Vercel)

ChatGPT 的,之Developer mode 连接MCP(Model Context Protocol)服务器。Open-Meteo 免费的API 中所述修改相应参数的值。

Vercel 的明细栏样式中定义的设置HTTPS 的 /api/mcp 来定义自定义外观。

机能

使用方法(步骤)

步骤1:在聊天中输入地名并发送(例如:东京)\ 步骤2:用卡显示候选地址\ 步骤3:选择候选地卡后,会显示地图\ 步骤4:按下地图上的“在这个地方出天气”,就会显示一周(7天)的天气预报(目标:3回合以内)

工具

  • 地理位置:输入地名后,返回多个候选位置(经纬度)

- 参数: place (必须)、count (可选,默认值:20/最大值:20)

  • 获取预测:从经纬度获取天气预报数据

- ※是互换用的非推荐工具。小部件通常会在候选卡选择中直接获取 - 参数: latitude (必须)、longitude (必须)、label (可选) - 补充:总是在7天内返回

用户界面

ChatGPT 中显示动态部件:

  • “候选位置搜索结果”按钮
  • 地図(OpenStreetMap)
  • 天气予报一覧(周间/时间别)
补充:小部件ChatGPT 的显示区域内移动,所以外部URL不能自由地打。\ 因此,小部件直接通信 开放 天气OpenStreetMap(地图的iframe) 只做。

CSP(通信目的地许可列表)

manifest.json 的,之 widgets.weather-widget.csp 是正的(根据此设置实施)。

  • connect-src:

- https://geocoding-api.open-meteo.com(候补地検索) - https://api.open-meteo.com(天气予报)

  • frame-src:

- https://www.openstreetmap.org(嵌入地图)

安装,安装

前提条件

  • Node.js 18.0 以上
  • npm 9.0 大于或等于yarn、pnpm)

本地开发

# 1. リポジトリをクローン
git clone 
cd mcp-weather-vercel

# 2. 依存パッケージをインストール
npm install

# 3. 環境変数を設定(オプション)
cp .env.example .env.local
# .env.local を編集してカスタマイズ(デフォルト値で動作します)

# 4. 開発サーバーを起動
npm run dev

# 5. ブラウザでアクセス
# http://localhost:3000
# MCPエンドポイント: http://localhost:3000/api/mcp

生产构建

npm run build
npm start

Vercel 部署到

自动部署(推荐)

  1. GitHub 推送存储库
  2. Vercel仪表板 访问
  3. 新项目 来修改标记元素的显示属性
  4. GitHub 选择存储库
  5. 部署 来修改标记元素的显示属性
  6. 部署完成后MCP URL 确认

手动部署

# Vercel CLI をインストール
npm install -g vercel

# デプロイ
vercel

ChatGPT 连接到

设定手顺

  1. ChatGPT 的双曲正切值Developer mode 启用
  2. 设置应用设置连接器
  3. 创建 来修改标记元素的显示属性
  4. MCP Server URL 输入:

- 本地: http://localhost:3000/api/mcp - 本番: https://your-vercel-url.vercel.app/api/mcp

  1. 连接 来修改标记元素的显示属性

ChatGPT 使用方法

ユーザー: "Tokyo の天気を教えてください"

ChatGPT:
1. geocode_place を使用して Tokyo の候補地を検索
2. 候補地を表示(UI ウィジェット内)
3. ユーザーが候補を選択 → 地図が表示される
4. ユーザーが「この場所で天気を出す」を押す(会話が進む)
5. 週間(7日)の予報を表示

评估(10个测试提示)

即使不取得胜率OK是。首先只确认“3周以内会有周预报”。

  1. 东京的天气
  2. 涩谷的天气预报(7日)
  3. 大阪的一周天气
  4. 札幌下周的天气
  5. 那霸的天气(旅行用的笼统)
  6. Kyoto 天气(英语输入)
  7. 冬季天气(平假名)
  8. 中央区天气(假设同名较多)
  9. 成田空港の天气(施设名/地名混在)
  10. 不存在的地名XYZ的天气(失败・诱导确认)

API 引用

MCP 端点

统一资源定位符: /api/mcp\ 方法: POST\ 内容类型: application/json

geocode_place 工具

查找候选位置。

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "geocode_place",
	    "arguments": {
	      "place": "Tokyo",
	      "count": 20
	    }
  }
}

响应示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "検索: Tokyo\n候補:\n1. Tokyo / Japan (35.6762, 139.6503)\n..."
      }
    ],
    "structuredContent": {
      "kind": "geocode",
      "query": "Tokyo",
      "candidates": [
        {
          "name": "Tokyo",
          "country": "Japan",
          "latitude": 35.6762,
          "longitude": 139.6503,
          "timezone": "Asia/Tokyo"
        }
      ]
    }
  }
}

get_forecast 工具

取得天气预报。

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "get_forecast",
    "arguments": {
      "latitude": 35.6762,
      "longitude": 139.6503,
      "label": "Tokyo / Japan"
    }
  }
}

响应示例:

{
  "jsonrpc": "2.0",
  "id": 2,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "座標: 35.6762, 139.6503 (Asia/Tokyo)\nいま: 12℃ / 風 8\n2026-01-28: 曇り / 10〜15℃ / 降水 最大20%\n..."
      }
    ],
    "structuredContent": {
      "kind": "forecast",
      "location": {
        "latitude": 35.6762,
        "longitude": 139.6503,
        "timezone": "Asia/Tokyo"
      },
      "current": {
        "temperature_c": 12,
        "windspeed": 8
      },
      "daily": [
        {
          "date": "2026-01-28",
          "summary_ja": "曇り",
          "temp_max_c": 15,
          "temp_min_c": 10,
          "precip_prob_max_percent": 20
        }
      ]
    }
  }
}

环境变数

.env.example 复制 .env.local 中所述修改相应参数的值。

|变量名|默认|说明| |--------|-----------|------| | NEXT_PUBLIC_GEOCODING_API_URL | https://geocoding-api.open-meteo.com/v1/search \_地理编码API 的,之URL | | NEXT_PUBLIC_FORECAST_API_URL | https://api.open-meteo.com/v1/forecast 天气预报API 的,之URL | | MCP_REQUEST_TIMEOUT | 30 | API 请求超时(秒) | MCP_RETRY_ATTEMPTS | 3 | API 请求失败时的重试次数 | NEXT_PUBLIC_GEOCODING_DEFAULT_COUNT | 20 |地理编码的默认结果数| | NEXT_PUBLIC_FORECAST_DEFAULT_DAYS | 7 预报的默认天数(始终为7天) | NEXT_PUBLIC_DEFAULT_TIMEZONE | Asia/Tokyo 默认时区

故障排除

详细的故障排除指南 文档/故障排除/ 来修改标记元素的显示属性。

常见问题

构建错误:“类型string‘is not assignable to type‘AnySchema’”

解决方法: Zod 请确认是否使用架构。

// ❌ 間違い
inputSchema: { type: "object", properties: {} }

// ✅ 正しい
inputSchema: z.object({ /* ... */ })

了解更多信息 docs/故障排除/issue-schema-validation-error.md 来修改标记元素的显示属性。

API 超时

解决方法:环境变数 MCP_REQUEST_TIMEOUT 的总和。

MCP_REQUEST_TIMEOUT=60  # 60 秒に設定

关于重试

API 如果请求失败,则自动最大化 MCP_RETRY_ATTEMPTS 重新启动。

MCP_RETRY_ATTEMPTS=5  # 最大 5 回リトライ

性能

高速缓存

当前API 未缓存调用。在生产环境中CDN 请考虑使用缓存。

响应时间

  • geocode_place: 1-3 秒(包括Open-Meteo API延迟)
  • 获取预测:1-2秒

开発

文件配置

.
├── app/
│   ├── api/
│   │   └── mcp/
│   │       └── route.ts          # MCP ハンドラーのメイン実装
│   ├── layout.tsx
│   └── page.tsx
├── docs/
│   └── troubleshooting/           # トラブルシューティングガイド
├── .env.example                   # 環境変数テンプレート
├── next.config.mjs                # Next.js 設定
├── package.json
├── tsconfig.json
└── README.md                      # このファイル

脚本

npm run dev       # 開発サーバー起動
npm run build     # 本番ビルド
npm start         # ビルド済みの本番サーバー起動

测试

# ビルドテスト
npm run build

# 開発サーバーでテスト
npm run dev

故障排除

详细的测试方法是 docs/故障排除/测试指南.md 来修改标记元素的显示属性。

技术栈

  • 运行时:Node.js
  • 框架结构:Next.js 16.1.5
  • 言语:TypeScript 5.6.3
  • 验证:佐德3.25.76
  • 主控程序:mcp处理程序1.0.7
  • 部署:Vercel

许可证

麻省理工学院

支持

在您查看完详细信息后,单击文档/故障排除/ 请确认文件夹。

API 出典

两API 都可以免费使用API 无需按键。

目录标签

目录标签

位置天气地理编码TypeScript天气预报API集成天气查询本地部署ChatGPT插件

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP