Token导航 LogoToken导航

MCP Server · 运维云端

Chatgpt App Azure Function MCP

一个基于ChatGPT的天气查询应用,提供实时天气信息和交互式小部件,适用于需要快速获取天气数据的用户。

stdio官方级别未说明来源级核验工具 1
BicepPython位置天气

快速开始

作者 / 组织
Azure-Samples
提供方
Azure-Samples
运行时
Python

工具数量

1

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

2

仓库热度

收录来源

1 个

MCP World

选型结论

Chatgpt App Azure Function MCP 属于运维云端类 MCP Server,公开资料标注 1 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前要先准备 会话凭据。

分类

运维云端

传输方式

stdio

认证方式

会话凭据

部署方式

公开资料未说明

安装与配置

安装命令

uv run func start

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 1 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

ChatGPT天气应用程序

一个ChatGPT应用程序,通过交互式小部件提供当前天气信息,该小部件使用 OpenAI应用软件开发工具包 并部署到Azure Functions。

概述

此应用程序演示了如何使用模型上下文协议(MCP)和FastMCP Python框架构建ChatGPT应用程序。它从 开放气象API 并将其直接显示在ChatGPT对话中的交互式HTML小部件中。

特性

  • 自然语言界面:向ChatGPT询问任何地点的天气(例如,“西雅图的天气怎么样?”)
  • 交互式小部件:查看设计精美的卡片中的天气数据,其中包含:

- 当前温度与天气表情符号 - 天气状况描述 - 风速与风向 - 位置坐标 - 上次更新时间戳

  • 实时数据:从Open-Meteo API获取当前天气
  • Azure上的自托管:作为Azure Functions上的远程MCP服务器部署

建筑

该应用程序由两个主要组件组成:

1.MCP服务器(main.py)

  • 内置于 FastMCP Python框架
  • 暴露a get_current_weather ChatGPT可以调用的工具
  • 从Open-Meteo API返回结构化天气数据
  • 配置为无状态HTTP传输

2.交互式小部件(current_weather_widget.html)

  • 在ChatGPT中呈现的HTML/CSS/JavaScript组件
  • 使用OpenAI Apps SDK(window.openai)用于集成
  • 显示带有WMO天气代码解释的天气数据
  • 针对ChatGPT界面优化的响应式设计

先决条件

本地开发

1.安装依赖项

# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install dependencies and create virtual environment
uv sync

2.本地运行

# Start the MCP server with uv
uv run func start

服务器将于启动 http://localhost:7071 默认情况下。

3.使用MCP检验员进行测试

您可以使用 MCP检查员 要在本地测试服务器,请执行以下操作:

npx @modelcontextprotocol/inspector@latest http://localhost:7071/mcp

4.暴露于公共互联网(用于ChatGPT测试)

在开发过程中,使用 dev隧道 要公开您的本地服务器,请执行以下操作:

# Install devtunnel CLI if you haven't already
# See: https://learn.microsoft.com/en-us/azure/developer/dev-tunnels/get-started

# Login to dev tunnels (required on first use)
devtunnel user login

# Create a tunnel and host on port 8000
devtunnel host -p 7071 --allow-anonymous

该命令将输出公共HTTPS URL(例如。, https://.devtunnels.ms).将此URL与 /mcp 连接到ChatGPT时的路径。

5.连接到ChatGPT

  1. 打开ChatGPT设置→ 应用程序和连接器 → 高级设置
  2. 启用 开发者模式
  3. 导航至 设置 → 连接器
  4. 点击 创建 添加新连接器
  5. 输入您的开发隧道URL /mcp 路径: https://.devtunnels.ms/mcp
  6. 命名您的连接器(例如“天气”)
  7. 添加描述:“获取当前天气信息”
  8. 点击 创建

要使用该应用程序:

  1. 在ChatGPT中开始新的聊天
  2. 点击 + 按钮并选择您的天气连接器
  3. 问:“纽约的天气怎么样?”
  4. ChatGPT将调用您的工具并显示交互式天气小部件

部署到Azure

使用Azure Developer CLI(azd)将您的应用部署到Azure:

# Login to Azure
azd auth login

# Provision and deploy (first time)
azd up

# For subsequent deployments (code changes only)
azd deploy

这 azd up 命令将:

  1. 提供Azure资源(功能应用程序、存储等)
  2. 将代码部署到Azure Functions
  3. 输出部署URL(例如。, https://.azurewebsites.net)

部署后,使用Azure URL连接到ChatGPT /mcp 路径: https://.azurewebsites.net/mcp

将已部署的应用程序添加到ChatGPT

按照与中相同的步骤进行操作 本地开发-连接到ChatGPT,但请使用您的Azure部署URL:

  1. 在ChatGPT设置中→ 连接器,单击 创建
  2. 输入您的Azure URL /mcp 路径: https://.azurewebsites.net/mcp
  3. 命名(例如“天气”)并添加描述
  4. 点击 创建

然后通过开始一个新的聊天,添加你的连接器,并询问天气来测试它!

项目结构

.
├── main.py                         # MCP server with FastMCP
├── current_weather_widget.html     # Interactive weather widget UI
├── host.json                       # Azure Functions configuration
├── pyproject.toml                 # Python project metadata and dependencies
├── uv.lock                        # uv lock file for reproducible builds
├── azure.yaml                     # Azure Developer CLI configuration
└── infra/                         # Azure infrastructure (Bicep files)
    ├── main.bicep
    ├── main.parameters.json
    └── app/
        ├── app.bicep
        ├── entra.bicep
        ├── rbac.bicep
        └── vnet.bicep

关键配置文件

host.json

将Azure Functions配置为作为MCP服务器的自定义处理程序运行:

{
  "version": "2.0",
  "configurationProfile": "mcp-custom-handler",
  "customHandler": {
    "description": {
      "defaultExecutablePath": "python",
      "arguments": ["main.py"]
    },
    "port": "8000"
  }
}

main.py

MCP服务器:

  • 集合 fastmcp.settings.stateless_http = True Azure功能兼容性
  • 将天气小部件注册为资源 text/html+skybridge MIME 类型
  • 定义 get_current_weather 带有OpenAI元数据的工具

运作原理

  1. 用户询问ChatGPT“纽约的天气怎么样?”
  2. ChatGPT解释:确定纽约的坐标(40.7128,-74.0060)
  3. 调用您的工具:调用 get_current_weather 带纬度和经度
  4. 服务器获取数据:您的Azure函数调用Open-Meteo API
  5. 返回结构化数据:当前天气的JSON响应
  6. 小部件渲染:ChatGPT显示包含天气信息的HTML小部件

使用的应用程序SDK功能

  • 工具: @mcp.tool() 装饰器为ChatGPT定义可调用函数
  • 资源: @mcp.resource() 将HTML小部件公开为 ui://widget/current-weather.html
  • 元数据:标题、提示和调用消息的工具注释
  • 输出模板:将工具响应链接到小部件进行渲染
  • 结构化内容:返回文本和JSON以实现灵活的显示选项

安全与隐私

  • API密钥:Open-Meteo(免费公共API)无需身份验证
  • 数据收集:仅处理纬度/经度坐标
  • 隐私:不存储或记录用户数据
  • 内置身份验证:可以启用Azure应用服务身份验证以供生产使用

了解更多

贡献

欢迎投稿!请随意:

  • 报告错误或问题
  • 建议新功能或改进
  • 提交拉取请求

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。

致谢

工具与能力

工具数量

1

资源数量

0

提示词数量

0

能力标签

Bicep本地部署天气查询ChatGPT应用交互式小部件实时数据Azure部署

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 1 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备会话凭据,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到会话凭据的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Chatgpt App Azure Function MCP

MCP World · 本页

1stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Chatgpt App Azure Function MCP 怎么安装?

公开资料给出的安装命令是 uv run func start,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Chatgpt App Azure Function MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Chatgpt App Azure Function MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Chatgpt App Azure Function MCP 需要 API Key 吗?

公开资料标注的认证方式是会话凭据,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Chatgpt App Azure Function MCP 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP