项目简介
此项目是一个基于Model Context Protocol (MCP) 的AI跑步教练服务器。它旨在将用户的Strava跑步数据、实时天气信息和智能路线规划功能集成到AI助手中。通过标准化接口,该服务器能够响应LLM(大型语言模型)客户端的请求,提供个性化的跑步建议、训练分析和路线推荐,从而帮助用户优化跑步体验。
主要功能点
- Strava数据访问与分析: 获取用户的Strava运动统计、最新跑步活动详情,包括距离、配速、心率、速度等,支持AI进行训练表现分析。
- 智能路线规划: 根据用户指定的起点和期望的跑步距离,自动生成环形跑步路线,并提供Google Maps导航链接。
- 天气预测集成: 提供指定地点的未来天气预报,包括温度、体感温度、湿度、风速、降雨概率等,帮助用户根据天气条件规划跑步。
- 心率与速度数据: 提取跑步活动的心率和速度数据,为深入分析提供原始数据。
- 标准化MCP接口: 通过JSON-RPC协议与LLM客户端通信,确保数据和功能的可靠交互。
安装步骤
- 克隆仓库:
git clone https://github.com/colinfrisch/chathletique-mcp cd chathletique-mcp - 安装Python依赖:
pip install -e . - 获取API密钥:
- Strava API Token: 访问Strava API Settings,创建一个应用,并获取访问令牌。
- OpenWeatherMap API Key: 注册OpenWeatherMap,订阅免费的5天/3小时预报API,获取API密钥。
- OpenRouteService API Key: 注册OpenRouteService,从控制台获取免费API密钥。
- 配置环境变量:
在项目根目录创建 '.env' 文件,并填入您的API密钥:
STRAVA_ACCESS_TOKEN=您的Strava访问令牌 WEATHER_API_KEY=您的OpenWeatherMap API密钥 ORS_KEY=您的OpenRouteService API密钥 - 运行服务器:
服务器将在默认端口 '3000' 启动,并监听来自MCP客户端的请求。python -m src.chathletique_mcp.main
服务器配置 (Server Configuration for MCP Client)
MCP客户端需要以下配置信息来连接和使用此服务器:
{ "name": "Strava AI跑步教练", "command": "python", "args": ["-m", "src.chathletique_mcp.main"], "env": { "STRAVA_ACCESS_TOKEN": "<!-- 请替换为您的Strava访问令牌 -->", "WEATHER_API_KEY": "<!-- 请替换为您的OpenWeatherMap API密钥 -->", "ORS_KEY": "<!-- 请替换为您的OpenRouteService API密钥 -->" }, "transport": "streamable-http" }
- name: 服务器在客户端中显示的名称。
- command: 启动MCP服务器的主命令。
- args: 传递给命令的参数,用于指定服务器的启动模块。
- env: 服务器运行所需的环境变量,特别是API密钥。
- transport: 服务器使用的通信协议,此处为 'streamable-http'。
基本使用方法
一旦服务器运行,任何兼容MCP协议的LLM客户端都可以连接并调用服务器提供的工具。例如,LLM可以调用 'get_user_stats' 工具获取用户的Strava统计数据,调用 'get_weather_prediction' 工具查询跑步地点天气,或者调用 'create_itinerary' 工具生成跑步路线。AI助手将利用这些工具提供的上下文信息,为用户提供智能、个性化的跑步指导。
信息
分类
网页与API