返回 MCP 目录
public公开dns本地运行

root-signals-mcp

Root Signals MCP服务器是一个将Root Signals评估工具通过Model Context Protocol(MCP)暴露给AI助手和代理的桥梁项目,支持标准评估和带上下文的RAG评估。

article

README

🚀 模型上下文协议(MCP)项目文档

模型上下文协议(Model Context Protocol,简称MCP)是一款用于评估AI生成内容质量的实用工具。它为用户提供了多样化的使用途径,无论是直接调用服务,还是集成到应用程序中,都能轻松实现对AI生成内容的自动化评估,极大提升了评估效率和准确性。

🚀 快速开始

模型上下文协议(Model Context Protocol,简称MCP)是一个用于评估AI生成内容质量的工具。用户可以通过以下几种方式使用该协议:

  1. 直接调用MCP服务:通过安装并运行提供的MCP服务器,在本地或云端环境中使用。
  2. 集成到应用中:将MCP客户端整合到自己的Python应用程序中,实现自动化评估功能。

✨ 主要特性

  • evaluators列表:提供多种预定义的评估指标,涵盖准确性、清晰度、相关性等多个维度。
  • 评估接口:支持以下四种评估方式:
    • 基于ID的评估:通过指定的评估器ID进行内容评估。
    • 基于名称的评估:通过评估器名称进行内容评估。
    • 基于检索的生成评估:结合外部知识库上下文进行评估。
    • 基于名称的检索生成评估:结合上下文和评估器名称进行评估。

📦 安装指南

克隆仓库

git clone https://github.com/your-repository.git
cd your-repository

安装依赖

pip install -r requirements.txt

启动服务

uv run server .

💻 使用示例

基础用法

安装与运行MCP服务器

# 克隆仓库
git clone https://github.com/your-repository.git
cd your-repository

# 安装依赖
pip install -r requirements.txt

# 启动服务
uv run server .

使用Python客户端进行评估

import os
from root_mcp_server.client import RootSignalsMCPClient

async def main():
    mcp_client = RootSignalsMCPClient()
    
    try:
        await mcp_client.connect()
        
        # 获取所有评估器列表
        evaluators = await mcp_client.list_evaluators()
        print(f"检测到 {len(evaluators)} 个评估器")
        
        # 使用ID进行评估
        result_id = await mcp_client.run_evaluation(
            evaluator_id="eval-123456789",
            request="请问法国的首都是哪里?",
            response="巴黎是法国的首都。"
        )
        print(f"基于ID的评估分数: {result_id['score']}")
        
        # 使用名称进行评估
        result_name = await mcp_client.run_evaluation_by_name(
            evaluator_name="清晰度",
            request="请问法国的首都是哪里?",
            response="巴黎是法国的首都。"
        )
        print(f"基于名称的评估分数: {result_name['score']}")
        
    finally:
        await mcp_client.disconnect()

if __name__ == "__main__":
    import asyncio
    asyncio.run(main())

高级用法

评估提示模板

用户可以在Cursor中直接输入以下指令来评估生成式AI的提示模板:

评估总结器提示在清晰度和精确度方面。使用RootSignals。

🤝 贡献指南

参与方式

我们欢迎任何有助于提升用户体验的贡献,具体步骤如下:

  1. 同步代码库:使用uv sync --extra dev命令获取最新代码和依赖项。
  2. 安装预 - commit钩子:通过pre-commit install确保每次提交前自动格式化代码。
  3. 添加功能或修复问题:将新代码和测试用例添加到src/root_mcp_server/tests/目录中。
  4. 构建并测试:运行docker compose up --build启动服务,并通过设置环境变量ROOT_SIGNALS_API_KEY=<密钥>执行单元测试,确保所有测试通过。
  5. 格式化代码:使用ruff format . && ruff check .命令保持代码风格统一。

注意事项

⚠️ 重要提示

请为新增的功能或修复的问题单独创建一个分支,并在提交前添加详细的commit信息。

💡 使用建议

如果发现任何问题,请及时提交issue或pull request。

⚠️ 已知限制

功能限制

  • 评估范围:当前版本仅支持文本生成内容的评估,不支持图像、音频等其他形式的内容。
  • 上下文大小:基于检索的生成评估功能目前只支持较小规模的知识库。

性能限制

  • 处理延迟:大规模数据或多轮对话场景可能会导致评估时间增加。

📧 问题反馈

如在使用过程中遇到任何问题,请通过以下方式反馈:

⚠️ 重要提示

本文档内容可能随时更新,建议定期查阅以获取最新信息。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端