返回市场
MCP服务器本地版

MCP服务器本地版

作者:Dreamboat-Rachel13 星标更新:2025-04-09

项目介绍

MCP本地服务器

一个基于MCP(多组件平台)的本地代理服务器和客户端实现,提供多种AI工具调用能力。

功能特点

核心功能

  • 天气查询:实时获取全球任意位置的天气信息,支持温度、湿度、风速等详细数据。
  • 谷歌搜索:智能检索互联网信息,支持多语言和高级搜索语法。
  • 摄像头控制:支持拍照、视频流和微表情分析,可用于情绪识别。
  • 图片生成:集成ComfyUI,支持文本到图像的AI生成。
  • 智能对话:基于DashScope的AI对话能力,支持上下文理解和多轮对话。

技术特性

  • 跨平台支持(Windows和Linux)
  • 模块化设计,易于扩展新功能
  • 完整的日志系统,便于调试和监控
  • 支持自定义工具和API集成
  • 高性能并发处理能力

环境配置

系统要求

  • Python 3.8+
  • Node.js(可选,用于运行JavaScript服务器)
  • Chrome浏览器(用于谷歌搜索功能)
  • 摄像头(用于拍照功能)
  • 至少4GB内存
  • 支持CUDA的显卡(可选,用于加速AI计算)

安装步骤

  1. 克隆仓库:
git clone https://github.com/yourusername/mcp-server-for-local.git
cd mcp-server-for-local
  1. 创建并激活虚拟环境:
# Windows
python -m venv .venv
.venv\Scripts\activate

# Linux
python3 -m venv .venv
source .venv/bin/activate
  1. 安装依赖:
# 使用uv安装依赖
uv pip install -r requirements.txt

# 如果遇到网络问题,可以使用国内镜像
uv pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  1. 配置环境变量:
# 复制环境变量模板
cp .env.example .env

# 编辑.env文件,设置你的配置

环境变量配置

编辑.env文件,设置以下配置:

  • DASHSCOPE_API_KEY: DashScope API密钥(必填)
  • MODEL: 使用的模型名称(默认:qwen-max)
  • CONFIG_FILE: 服务器配置文件路径
  • GAODE_API_KEY: 高德地图API密钥(用于天气查询)
  • CHROME_PATH: Chrome浏览器路径
  • CHROMEDRIVER_PATH: ChromeDriver路径
  • BASE_URL: ComfyUI服务器地址
  • SERVERS_DIR: 服务器脚本目录
  • LOG_LEVEL: 日志级别(可选:DEBUG, INFO, WARNING, ERROR)

使用方法

基本使用

  1. 进入项目目录:
cd src/mcp
  1. 运行客户端:
uv run .\client\m.mcp_client.py .\proxy\proxy_server.py
  1. 在客户端中输入命令,例如:
  • "北京的天气怎么样?"
  • "在谷歌上搜索Python教程"
  • "拍照"
  • "生成一张猫的图片"

高级功能

  1. 自定义工具

    • src/mcp/tools目录下添加新的工具类
    • 实现必要的接口方法
    • 在配置文件中注册新工具
  2. API扩展

    • 支持添加新的API服务
    • 可配置API密钥和端点
    • 支持自定义请求和响应处理
  3. 日志管理

    • 支持多级别日志记录
    • 可配置日志输出位置
    • 支持日志轮转和归档

常见问题

安装问题

  1. 依赖安装失败:
# 尝试清理缓存后重新安装
uv pip cache purge
uv pip install -r requirements.txt
  1. 虚拟环境问题:
# 如果激活失败,尝试重新创建虚拟环境
rm -rf .venv
python -m venv .venv

运行问题

  1. 权限问题:
# Linux
chmod +x src/mcp/proxy/proxy_server.py
chmod +x src/mcp/client/mcp_client.py
  1. Chrome相关问题:
  • 确保Chrome和ChromeDriver版本匹配
  • 检查Chrome路径是否正确
  • 确保有足够的权限运行Chrome
  • 如果遇到驱动问题,可以手动下载对应版本的ChromeDriver
  1. API密钥问题:
  • 检查.env文件中的API密钥是否正确
  • 确保API密钥有足够的配额
  • 检查网络连接是否正常

开发指南

项目结构

src/mcp/
├── client/          # 客户端代码
├── proxy/           # 代理服务器代码
├── tools/           # 工具实现
├── utils/           # 工具函数
└── config/          # 配置文件

添加新功能

  1. tools目录下创建新的工具类
  2. 实现必要的接口方法
  3. 在配置文件中注册新工具
  4. 编写测试用例
  5. 更新文档

贡献指南

欢迎提交Issue和Pull Request!在提交之前,请确保:

  1. 代码符合项目规范
  2. 添加了必要的测试
  3. 更新了相关文档
  4. 通过了所有测试

许可证

MIT License