mcpField
R
R-Server MCP

R-Server MCP

本地服务
github.com/gdbelvin数据与分析1882 周前更新

关于 R-Server MCP

R-Server MCP 让 AI 模型无需直接访问 R 环境,即可生成 ggplot2 图表并执行 R 脚本,适用于通过 MCP 客户端获取统计可视化或文本结果的分析流程。

主要功能

  1. 01生成 ggplot2 可视化
  2. 02运行 R 脚本并返回文本
  3. 03导出 PNG、JPEG、PDF 或 SVG
  4. 04设置图像尺寸和分辨率
  5. 05在隔离的 Docker 容器中执行

适用场景

  1. 01根据 R 代码生成统计图表
  2. 02运行脚本并查看文本输出

MCP 相关

向 MCP 客户端提供 `render_ggplot` 和 `execute_r_script` 工具。通过 stdio 通信,也可在 Docker 中运行。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

R-Server MCP

一个专用的模型上下文协议(MCP)服务,可让 AI 模型使用 R 的 ggplot2 库生成数据可视化并执行 R 脚本。

概述

此 MCP 服务提供了一个精简的接口,用于创建统计可视化并执行 R 脚本,而无需直接访问 R 环境。它提供了两个 MCP 工具:

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

功能

  • ggplot2 渲染:执行包含 ggplot2 命令的 R 代码,并返回生成的可视化
  • R 脚本执行:执行任意 R 脚本并返回文本输出
  • 格式选项:支持 PNG、JPEG、PDF 和 SVG 输出格式
  • 自定义:控制图像尺寸和分辨率
  • 错误处理:针对无效 R 代码或渲染失败提供清晰的错误消息
  • 符合 MCP 协议:完整实现模型上下文协议
  • Docker 集成:在隔离容器中安全执行 R 代码

要求

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

构建

# Build the Docker image
task docker:build

# Run the server in Docker
task docker:run
使用 Docker 和 stdin/stdout

服务器可以在 Docker 中运行,同时保留 stdin/stdout 通信,这对 MCP 至关重要:

# Build and run using docker-compose
./start_server.sh --docker

或者设置环境变量:

USE_DOCKER=true ./start_server.sh

这种方式可确保主机与容器之间正确连接 stdin 和 stdout,从而实现无缝的 MCP 通信。

用法

MCP 集成

要将此服务与 MCP 客户端搭配使用,请在 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": []
    }
  }
}

MCP 客户端会自动通过 stdio 传输与服务通信,这是稳定可靠的推荐方式。Docker 化版本在提供隔离和依赖管理的同时,也保留了这种通信模式。

许可证

知识共享署名-非商业性使用 4.0 国际版(CC-BY-NC 4.0)

本作品采用知识共享署名-非商业性使用 4.0 国际版许可协议授权。

详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。