使用说明
MCP天气与文件AI服务器
基于模型上下文协议 (MCP) 的高级服务器,为支持 MCP 的客户提供实时气象数据集成、本地文件系统访问和智能数据分析。
视觉演示
该界面允许您模拟工具调用,实时查看日志,并可视化验证与外部 API 的连接。
功能
- 气象数据通过OpenWeatherMap.org实时信息。
- 档案管理安全读取本地文件和导航目录。
- 地理信息通过RestCountries API获得有关国家和地区的详细数据。
- 人工智能分析与 OpenAI(主要提供商)和 Anthropic(自动备份)集成。
- 异步 架构使用asyncio和httpx实现高性能。
可用工具
1. get_weather
恢复特定城市的当前气候条件。
city(string) 城市名称。country_code(string, optional): 国家 ISO 代码。
2. read_file
安全地读取本地文本文件。
file_path(string) 文件的绝对或相对路径。
3. list_directory
列出包含文件元数据的本地目录内容 。
directory_path(string) 目标目录的路径。
4. get_location_facts
提供一个国家的人口和地理数据。
country(string):国家的通用或官方名称。
5. analyze_with_ai
执行复杂的分析,并通过LLM生成建议。
prompt(string) 要分析的任务或查询。context(string, optional):用于分析的额外数据。- 战略默认情况下使用 GPT-4o-mini,在发生故障时可将其转换为 Claude 3.5 Sonnet。
技术要求
- Python 3.10或更高级
- MCP-SDK
- httpx
- 异步
- 派丹蒂克
安装
# Clonar o repositório
git clone https://github.com/gabriellsanabria/mcp-weather-server.git
cd mcp-weather-server
# Configurar ambiente virtual
python -m venv venv
# Ativação Windows: .\venv\Scripts\activate
# Ativação Linux/Mac: source venv/bin/activate
# Instalar dependências
pip install -r requirements.txt
配置
- 获取API密钥 OpenWeatherMap.org.
- 在文件中配置环境变量
.env(基于.env.example):WEATHER_API_KEY="sua_chave_aqui" OPENAI_API_KEY="sua_chave_aqui" ANTHROPIC_API_KEY="sua_chave_aqui"
与 Claude Desktop 集成
将以下设置添加到您的文件 claude_desktop_config.json:
{
"mcpServers": {
"weather-files-ai": {
"command": "python",
"args": ["C:/caminho/para/server.py"],
"env": {
"WEATHER_API_KEY": "sua_chave",
"OPENAI_API_KEY": "sua_chave",
"ANTHROPIC_API_KEY": "sua_chave"
}
}
}
}
仪表板Web
该项目包括一个现代化的管理界面,用于测试工具并通过浏览器查看服务器状态。
如何执行:
- 插入API do仪表板:
python api.py - 在浏览器中登录 : 👉 http://localhost:8000
视觉演示
该界面允许您模拟工具调用,实时查看日志,并可视化验证与外部 API 的连接。
安全
- 校验路径以防止横向目录攻击。
- 只读文件操作(read-only)
- 严格定义的工具方案。
许可证
麻省理工学院
作者
加布里埃尔·萨纳布里亚
