多协议模型集成桌面应用

一个基于Python的桌面应用程序,通过集成多种MCP服务器提供问候、文件计数、位置检测、网络搜索、天气更新和时间检索等功能。

  • by bassemalyyy
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 bassemalyyy/claude-mcp-tools

使用说明

克劳德MCP

该项目使用Claude建立了一个桌面应用程序,与多个MCP(模型上下文协议)服务器集成,提供各种功能,如问候、文件计数、位置检测、网络搜索、天气更新和时间检索。下面是设置和运行该项目的全面指南。

视频演示

https://github.com/user-attachments/assets/a4cc82ea-aad5-4815-a799-5f0c8dca9685

项目概述

需求

安装说明

  • 步骤1:安装Python和虚拟环境
  • 步骤2:安装Claude桌面应用程序
  • 步骤3:设置项目目录
  • 步骤4:安装依赖项
  • 步骤5:配置MCP服务器
  • 步骤6:运行Claude桌面应用程序
  • MCP服务器详细信息
  • 故障排除

项目概述

Claude MCP是一个基于Python的项目,它与Claude桌面应用程序集成,提供了一套可通过单个界面访问的工具。这些工具被实现为MCP服务器,每个服务器处理一个特定的任务:

工具 功能
问候者 用个性化信息回应问候。
FileCounter 统计用户桌面上的文件。
位置 根据用户的公共IP检索用户的位置。
Serper 使用Serper.dev API执行web搜索。
Weather 使用OpenWeatherMap API获取指定位置的天气数据。
Time 返回埃及的当前日期和时间。

这些工具通过配置文件(Claude_desktop_config.json)连接到Claude。 需求 要设置和运行此项目,您需要以下内容:

  • Python 3.8或更高版本:该项目使用Python构建。
  • Claude桌面应用程序:需要与MCP服务器交互。
  • 虚拟环境(推荐):管理Python依赖关系。
  • API密钥:

OpenWeatherMap API key for the weather.py tool.

Serper.dev API key for the serper.py tool.

Python库:

  • fastmcp(用于MCP服务器功能)
  • 请求(针对API调用)
  • 地理编码器(用于位置检测)
  • langchain_community(用于搜索功能)
  • pytz(用于时区处理)

操作系统:Windows(基于脚本中的默认文件路径),但可通过路径调整适应macOS/Linux。

安装说明

步骤1:安装Python和虚拟环境

1.下载并安装Python: 访问python.org并下载python 3.8或更高版本。 安装Python,确保选中将Python添加到系统PATH的选项。

2-设置虚拟环境: 打开终端或命令提示符。 创建虚拟环境:

python -m venv myenv

3-激活虚拟环境:

在Windows上:

myenv\Scripts\activate

在macOS/Linux上:

source myenv/bin/activate

步骤2:安装Claude桌面应用程序

下载克劳德: 前往官方 Claude 网站 下载它。

按照特定于您的操作系统的安装说明进行操作。 确保Claude已配置为支持MCP服务器集成(有关MCP设置,请参阅Claude的文档)。

步骤3:设置项目目录

1-创建项目文件夹:

为项目创建一个目录。, mcp试验 放置所有提供的Python脚本(greeter.py, filecounter.py, 位置.py, serper.py, 天气.py, time.py)在这个文件夹中。

2-创建配置文件:

打开Claude Desktop的安装位置,找到 claude_desktop_config json 然后,更新此文件中的文件路径,以匹配系统的Python可执行文件和脚本位置。例子:

configuration:{
    "mcpServers": {
        "greeter": {
            "command": "path/to/myenv/Scripts/python.exe",
            "args": ["path/to/mcp-test/greeter.py"]
        },
        "filecounter": {
            "command": "path/to/myenv/Scripts/python.exe",
            "args": ["path/to/mcp-test/filecounter.py"]
        },
        "location": {
            "command": "path/to/myenv/Scripts/python.exe",
            "args": ["path/to/mcp-test/location.py"]
        },
        "serper": {
            "command": "path/to/myenv/Scripts/python.exe",
            "args": ["path/to/mcp-test/serper.py"]
        },
        "weather": {
            "command": "path/to/myenv/Scripts/python.exe",
            "args": ["path/to/mcp-test/weather.py"]
        },
        "time": {
            "command": "path/to/myenv/Scripts/python.exe",
            "args": ["path/to/mcp-test/time.py"]
        }
    }
}

步骤4:安装依赖项

1-激活虚拟环境(如果尚未激活)。

2-安装所需库: 在终端中运行以下命令:

pip install fastmcp requests geocoder langchain-community pytz

3-设置API密钥:

  • OpenWeatherMap API密钥: 在openweathermap.org上注册以获取API密钥。 将weather.py中的OPENWEATHERMAP_API_KEY替换为密钥,或将其设置为环境变量:
export OPENWEATHERMAP_API_KEY="your_api_key"  # macOS/Linux
set OPENWEATHERMAP_API_KEY=your_api_key       # Windows
  • Serper.dev API密钥: 在serper.dev上注册以获取API密钥。 将SERPER.py中的SERPER_API_KEY替换为密钥,或将其设置为环境变量:
export SERPER_API_KEY="your_api_key"  # macOS/Linux
set SERPER_API_KEY=your_api_key       # Windows

步骤5:配置MCP服务器

验证MCP服务器脚本:

确保所有Python脚本(greeter.py, filecounter.py, 位置.py, serper.py, 天气.py, time.py)位于项目目录中。

确认fastmcp库已正确安装且可访问。

  • 测试单个MCP服务器(可选): 单独运行每个脚本以确保其正常工作:
python path/to/mcp-test/greeter.py

对其他脚本重复此操作以验证功能。

步骤6:运行Claude桌面应用程序

  • 启动克劳德:

打开Claude桌面应用程序。

在claude中加载claude_desktop_config.json文件以注册MCP服务器。

  • 与克劳德互动:

使用Claude的接口向MCP服务器发送命令。

命令示例:

  • 嗨,嘿,或者你好,触发迎宾器。

  • count_desktop_files()用于统计桌面上的文件。

  • location()获取当前位置。

  • 搜索(“查询”)以执行网络搜索。

  • get_weather(“city”)获取天气更新。

  • Time()获取埃及的当前时间。

MCP服务器详细信息

  • greeter.py:用欢迎信息回复hi、hey或hello。

  • filecounter.py:统计桌面上的文件(默认路径:C:/Users/YourUsername/Desk)。

  • location.py:使用地理编码库根据用户的公共IP获取用户的位置。

  • serper.py:使用serper.dev API执行web搜索(需要API密钥)。

  • weather.py:使用OpenWeatherMap API获取天气数据(需要API密钥)。

  • time.py:返回埃及的当前日期和时间(非洲/开罗时区)。

故障排除

MCP服务器未响应:

  • 确保Python脚本位于正确的项目目录中。
  • 验证虚拟环境是否已激活以及依赖项是否已安装。

API密钥错误:

  • 双击以确保OPENWEATHERMAP_API_KEY和SERPER_API_KEY在脚本中或作为环境变量正确设置。

克劳德未连接:

  • 确认claude_desktop_config.json文件路径与系统设置匹配。
  • 查看Claude的文档,了解MCP服务器集成问题。

文件路径问题:

  • 如果您的桌面位于其他位置,请在filecounter.py中调整桌面路径。
  • 如果需要,更新macOS/Linux的claude_desktop_config.json路径。