Strava活动分析工具

一个基于Gradio的Web界面,通过Mistral API和自定义MCP服务器,使用大型语言模型(LLM)与Strava活动进行交互。

  • by ICW1
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 icw1/strava_mcp_test

使用说明

Strava MCP测试

该项目提供了一个基于Gradio的web界面,通过Mistral API和自定义MCP(模型控制协议)服务器,使用大型语言模型(LLM)与Strava活动进行交互。

特性

  • 询问有关Strava活动的问题 自然语言。
  • 快速示例查询 开始吧。
  • 由Mistral LLMs提供技术支持 以及定制的Strava MCP服务器。

需求

  • Python 3.12+
  • Mistral API访问.
    对于Mistral API密钥,请访问:https://console.mistral.ai/home
  • Strava API证书。
    对于Strava API密钥,请访问:https://developers.strava.com/docs/getting-started/ & https://www.strava.com/settings/api

设置

  1. 克隆存储库

    git clone https://github.com/yourusername/strava_mcp_test.git
    cd strava_mcp_test
    
  2. 创建并激活虚拟环境

    python3 -m venv strava_mcp_demo_env
    source strava_mcp_demo_env/bin/activate
    
  3. 安装依赖项

    pip install -r requirements.txt
    
  4. 配置环境变量

    复制 .env.example 向 .env 并填写您的凭据:

    cp .env.example .env
    

    编辑 .env:

    MISTRAL_API_KEY=your_mistral_api_key
    STRAVA_CLIENT_ID=your_strava_client_id
    STRAVA_CLIENT_SECRET=your_strava_client_secret
    STRAVA_ACCESS_TOKEN=your_strava_access_token
    STRAVA_REFRESH_TOKEN=your_strava_refresh_token
    
  5. 确保Strava MCP服务器可用

    按照README中的说明进行操作:https://github.com/ctvidic/strava-mcp-server

    /path/to/strava_server.py
    

    更新中的路径 llm_module.py 如果你的服务器在别处。

用法

启动Gradio web应用程序:

python gradio_all.py
  • 该应用程序将在您的浏览器中启动 http://localhost:7860.
  • 输入您的问题或使用快速示例与Strava数据进行交互。

文件概述

  • gradio_all.py:用于查询Strava活动的Gradio UI。
  • llm_module.py:处理与Mistral LLM和MCP服务器的通信。
  • .env.example:环境变量配置示例。
  • requirements.txt:Python依赖关系。

许可证

MIT许可证


注: 该项目需要Mistral和Strava的有效API密钥和访问令牌。