R-Server MCP

R-Server MCP

site icon
2025.04.17 2
Go数据可视化R 脚本执行开发效率
R-Server MCP 是一个专门用于生成数据可视化和执行 R 脚本的 Model Context Protocol (MCP) 服务器。它通过提供两个主要工具(`render_ggplot` 和 `execute_r_script`),使用户无需直接访问 R 环境即可创建统计可视化并执行 R 脚本。该服务器支持多种输出格式(PNG、JPEG、PDF、SVG),并允许用户自定义图像尺寸和分辨率。此外,它还具备错误处理功能,能够清晰地报告无效的 R 代码或渲染失败的情况。
View on GitHub

Overview

基本能力

产品定位

R-Server MCP 是一个专门用于生成数据可视化和执行 R 脚本的 MCP 服务器,旨在简化 R 环境的使用,特别是在 AI 模型生成数据可视化时。

核心功能

  • ggplot2 渲染:执行包含 ggplot2 命令的 R 代码并返回生成的可视化结果。
  • R 脚本执行:执行任何 R 脚本并返回文本输出。
  • 格式选项:支持 PNG、JPEG、PDF 和 SVG 输出格式。
  • 自定义:控制图像尺寸和分辨率。
  • 错误处理:提供清晰的错误消息,帮助用户识别无效的 R 代码或渲染失败。
  • MCP 协议兼容:完全实现 Model Context Protocol。
  • Docker 集成:在隔离的容器中安全执行 R 代码。

适用场景

  • AI 模型生成数据可视化。
  • 需要执行 R 脚本但不想直接访问 R 环境的场景。
  • 需要生成高质量统计可视化的场景。

工具列表

  • render_ggplot:从包含 ggplot2 命令的 R 代码生成可视化。
  • execute_r_script:执行任何 R 脚本并返回文本输出。

常见问题解答

  • 如何解决 R 代码无效的问题?:服务器会返回清晰的错误消息,帮助用户识别问题。
  • 如何自定义图像尺寸和分辨率?:通过配置参数控制图像尺寸和分辨率。

使用教程

使用依赖

  • Go 1.22 或更高版本。
  • R 4.0 或更高版本,并安装 ggplot2 包。
  • Docker(用于容器化执行)。

安装教程

# 构建 Docker 镜像
task docker:build

# 在 Docker 中运行服务器
task docker:run

使用 Docker 与 stdin/stdout

# 使用 docker-compose 构建和运行
./start_server.sh --docker

# 或设置环境变量
USE_DOCKER=true ./start_server.sh

MCP 集成

本地执行

{
  "mcpServers": {
    "r-server": {
      "command": "/path/to/r-server",
      "disabled": false,
      "autoApprove": []
    }
  }
}

Docker 执行

{
  "mcpServers": {
    "r-server": {
      "command": "/path/to/start_server.sh",
      "args": ["--docker"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

调试方式

  • 确保 Docker 容器正常运行。
  • 检查 R 代码是否正确。
  • 查看服务器返回的错误消息以识别问题。

许可证

该项目遵循 Other 开源许可条款,请参阅 Other 了解完整条款。