R2r Mcp

R2r Mcp

🚀 R2R MCP 服务器

R2R MCP 服务器是一款功能强大的工具,可与大语言模型(LLM)进行交互。它借助 MCP 协议集成多种模型,并提供丰富的功能模块,极大提升了与 LLM 交互的效率和体验。

🚀 快速开始

R2R MCP 服务器是一个强大的工具,用于与各种大语言模型(LLM)进行交互。以下是使用该服务器的快速指南:

from r2r_mcp_server import MCPClient

client = MCPClient("http://localhost:8000")
response = client.chat_completion(
messages=[{"role": "user", "content": "你好,我是测试用户。"}]
)
print(response)

✨ 主要特性

模型交互

  • 支持通过 MCP 协议与各种 LLM 进行对话。
  • 提供上下文管理功能,可保持对话历史,使对话更连贯。
  • 支持文件附件上传和下载,方便数据交互。

功能模块

  • 文档解析:支持对 PDF、Word 等格式文档进行自动解析。
  • 代码解释:能够理解并解释多种编程语言代码。
  • 数据处理:支持对 CSV、JSON 等数据格式进行处理与分析。
  • 图像识别:集成 OCR 技术,可识别图像内容。

性能优化

  • 支持异步请求处理,提升系统响应速度。
  • 提供结果缓存机制,减少重复计算。
  • 经过严格的性能测试,保证系统稳定性。

📦 安装指南

安装依赖

pip install mcp r2r loguru pytest pytest-asyncio pytest-cov black isort mypy ruff httpx

初始化项目

mcp init --name "R2R MCP Server" --description "A powerful LLM interaction server"

📚 详细文档

配置说明

环境变量

  • R2R_API_KEY:R2R 服务的访问密钥。
  • MCP_SERVER_ADDRESS:MCP 服务器地址。
  • LOG_LEVEL:日志级别(DEBUG, INFO, WARNING, ERROR)。

日志配置

import logging

logging.basicConfig(
level=logging.INFO,
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
)

开发指南

功能扩展

  1. 新增模型支持:实现 ModelAdapter 接口,针对具体模型进行适配。
  2. 扩展功能模块:在 extensions 目录下添加新的功能插件。
  3. 定制命令行工具:通过 cli.py 实现自定义命令。

贡献指南

  1. Fork 仓库。
  2. 创建功能分支:git checkout -b feature/amazing-feature
  3. 提交代码并合并到主分支。

性能优化

  • 使用异步处理提升系统响应速度。
  • 集成缓存机制减少重复计算。
  • 定期清理无效上下文以释放资源。

集成其他 MCP 兼容模型

R2R MCP Server 支持与多种 MCP 兼容模型集成,包括:

  • Claude(通过 Claude.app 或 API)。
  • 其他 LLM 模型。
  • 自定义 MCP 客户端。

依赖管理

属性 详情
模型类型 支持多种 MCP 兼容模型,如 Claude 等
训练数据 未提及
包名 mcp、r2r、loguru、pytest、httpx 等
版本 mcp(>=1.0)、r2r(>=0.5)、loguru(>=0.1)、pytest(>=6.0)、httpx(>=0.23)
状态 可用
描述 MCP 协议实现、R2R 服务接口、日志记录库、测试框架、HTTP 客户端库等

项目结构

r2r-mcp-server/
├── server.py          # 主服务程序
├── extensions/       # 功能扩展模块
│   ├── document_parsing.py    # 文档解析模块
│   └── code_interpreter.py     # 代码解释器模块
├── cli.py            # 命令行工具
└── tests/           # 测试用例
└── test_server.py      # 服务测试用例

💻 使用示例

基础用法

from r2r_mcp_server import MCPClient

client = MCPClient("http://localhost:8000")
response = client.chat_completion(
messages=[{"role": "user", "content": "你好,我是测试用户。"}]
)
print(response)

📄 许可证

本项目采用 MIT License。

项目维护者

  • 张三(peter.zhang@example.com)
  • 李四(jack lee@example.com)
  • 0 关注
  • 0 收藏,29 浏览
  • system 提出于 2025-09-19 17:21

相似服务问题

相关AI产品