Token导航 LogoToken导航TokenDH.com
MCP weather scraper logo
搜索检索stdio官方级别未说明来源级核验

MCP weather scraper

MCP Server

A lightweight prototype demonstrating how to integrate an LLM (via OpenAI) with a Model Context Protocol (MCP) server to extract real-time weather data by scraping and processing open web content using HTML parsing and caching.

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
位置天气结构化数据FastAPI浏览器自动化OpenAI

安装说明

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

作者 / 组织

EXPESRaza

提供方

EXPESRaza

最后核验

2026/5/18 03:28

运行时

Python

快速接入

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

命令预览

python -m venv .venv

详细介绍

🌦️ MCP天气刮刀

该项目是 模型上下文协议(MCP) 通过\*\*OpenAI\*\*和FastAPI使用轻量级LLM从开放网络源获取和构建实时天气信息。目标是探索LLM如何与工具交互,并作为智能代理检索和推理非结构化网络数据。

______________________________________________________________________

![Python](https://www.python.org/) ![License](LICENSE) ![Issues](https://github.com/EXPESRaza/mcp_weather_scraper/issues)

______________________________________________________________________

🚀 特性

  • ✅ 符合MCP标准的服务器,通过浏览器搜索进行天气抓取
  • ✅ 与OpenAI LLM集成(例如gpt-3.5-turbo)
  • ✅ FastAPI服务器提供天气信息作为可调用的MCP工具
  • ✅ 使用自动HTML解析 selectolax 为了表现
  • ✅ LLM将非结构化web内容提取为结构化模式
  • ✅ Streamlit应用程序前端,用于用户交互
  • ✅ 使用响应缓存 functools.lru_cache

______________________________________________________________________

🧠 潜水前先刷新一下

本次回购的五大概念

🧩 概念🔍 它是什么⚙️ 为什么重要
模型上下文协议(MCP)LLM中工具调用的新协议支持结构化AI代理通信
乌维科恩用于Python web应用程序的快速ASGI服务器托管基于FastAPI的MCP服务器
Selectolax高速HTML解析器高效抓取和提取天气数据
functools.lru_cache内置Python装饰器来缓存函数调用通过避免重复获取来提高性能
令牌使用指标(OpenAI)关于LLM调用中使用了多少令牌的信息帮助跟踪成本并优化提示设计
💡 即使你熟悉Python和API,这些工具也代表 尖端的AI堆栈工程 值得一看!

______________________________________________________________________

📊 令牌使用和性能指标

Streamlit UI现在包括:

  • ⏱️ 响应时间\

获取和处理天气信息所花费的时间

  • 🧠 提示令牌\

LLM提示中使用的令牌

  • 💬 完成令牌\

LLM响应中生成的令牌

  • 🔢 代币总数\

每个请求的令牌总数,可用于成本跟踪

这些结果以清晰的视觉布局显示在每张结果卡下。

______________________________________________________________________

🖥️ Streamlit应用程序预览

______________________________________________________________________

需求

  • Python 3.9或更高版本
  • 中列出的依赖关系 requirements.txt

______________________________________________________________________

🛠️ 设置

  1. 克隆仓库
   git clone https://github.com/your-username/mcp_weather_scraper.git
   cd mcp_weather_scraper
  1. 创建并激活虚拟环境
   python -m venv .venv
   .venv\Scripts\activate  # On Windows
  1. 安装依赖项
   pip install -r requirements.txt
  1. 设置环境变量

在根目录中创建.env文件并添加您的OpenAI API密钥

   OPENAI_API_KEY=your_openai_api_key
  1. 运行服务器
   uvicorn server:app --reload

服务器将在以下时间可用http://localhost:8000. 您可以访问API文档: - Swagger用户界面:http://localhost:8000/docs - ReDoc :http://localhost:8000/redoc

  1. 提出请求
   python client.py

   curl -X POST http://localhost:8000/weather -H "Content-Type: application/json" -d '{"location": "Seattle"}'

该脚本发送一个POST请求,其中包含以下有效载荷:

   {
     "location": "Seattle"
   }

服务器将以JSON格式的天气数据进行响应,例如:

   {
     "location": "Seattle",
     "temperature": "15°C",
     "humidity": "80%",
     "air_quality": "Good",
     "condition": "Cloudy"
   }

📦 文件夹结构

.
📁 mcp_weather_scraper/
│
├── assets/
│   └── streamlit_screenshot.png
├── server.py          # MCP-compatible tool server
├── client.py          # MCP client that interacts with model + tools
├── data_models.py     # Pydantic schemas for request/response
├── utils.py           # HTML cleaning, scraping, etc.
├── requirements.txt
└── .env

📄 许可证

This project is licensed under the MIT License.

目录标签

目录标签

位置天气结构化数据FastAPI浏览器自动化OpenAIresearch-and-datallmmcppydanticselectolax天气数据Python本地部署网页抓取LLM集成

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP