RStudio MCP服务器
模型上下文协议(MCP)服务器,为AI助手提供深度RStudio集成功能,包括环境管理、代码执行、项目管理等。
特性
- 环境管理:创建、切换和管理R环境
- 代码执行:在指定环境中执行R代码并捕获结果
- 项目管理:创建和管理RStudio项目
- 包管理:安装、更新和管理R软件包
- 版本控制:RStudio项目的Git集成
- 可视化:捕获和管理R图和可视化
- MCP合规性:完全符合MCP 2025-06-18规范
安装
先决条件
- Python 3.8或更高版本
- R 4.0或更高
- RStudio(可选,但推荐)
从源代码安装
git clone https://github.com/rstudio/rstudio-mcp.git
cd rstudio-mcp
pip install -e .再进行
pip install -r requirements.txt快速开始
1.初始化配置
rstudio-mcp --init-config这将在以下位置创建默认配置文件 ~/.rstudio-mcp/config.yaml.
2.编辑配置(可选)
编辑配置文件以自定义设置:
nano ~/.rstudio-mcp/config.yaml3.运行服务器
# Run with default configuration
rstudio-mcp
# Run with custom configuration
rstudio-mcp --config /path/to/config.yaml
# Run in debug mode
rstudio-mcp --debug配置
服务器使用YAML配置文件。以下是一个配置示例:
# Server settings
name: "rstudio-mcp"
version: "1.0.0"
debug: false
# Logging configuration
logging:
level: "INFO"
file: "~/.rstudio-mcp/logs/server.log"
max_size: "10MB"
backup_count: 5
# RStudio configuration
rstudio:
installation_path: null # Auto-detect
default_r_version: "4.3.0"
# Environment management
environments:
default_location: "~/.rstudio-mcp/environments"
auto_cleanup: true
max_environments: 10
# Security settings
security:
allowed_packages:
- "base"
- "utils"
- "stats"
- "graphics"
blocked_functions:
- "system"
- "shell"
execution_timeout: 300与AI编码助手集成
此MCP服务器旨在与RStudio终端环境中流行的AI编码助手无缝协作。该服务器支持模型上下文协议(MCP)规范,可以与各种AI客户端集成。
支持的AI客户端
基于 MCP客户端兼容性矩阵,以下AI编码助手支持MCP集成:
- 克劳德代码 -支持提示和工具
- VS代码GitHub副本 -通过动态工具发现提供完整的MCP支持
- 继续 -支持工具、提示和资源
- 光标 -通过Composer支持工具
- 克莱恩 -支持工具和资源
- JetBrains人工智能助手 -支持所有JetBrains IDE的工具
AI助手的配置
1.克劳德代码集成
Claude Code可以连接到此MCP服务器以增强R开发工作流程:
{
"mcpServers": {
"rstudio-mcp": {
"command": "rstudio-mcp",
"args": ["--config", "~/.rstudio-mcp/config.yaml"],
"env": {
"RSTUDIO_MCP_DEBUG": "false"
}
}
}
}2.VS代码GitHub副本
在VS代码设置或工作区设置中配置:
{
"github.copilot.chat.mcp.servers": {
"rstudio-mcp": {
"command": "rstudio-mcp",
"args": ["--stdio"],
"env": {
"RSTUDIO_MCP_CONFIG": "~/.rstudio-mcp/config.yaml"
}
}
}
}3.继续扩展
添加到“继续”配置(~/.continue/config.json):
{
"mcpServers": [
{
"name": "rstudio-mcp",
"command": "rstudio-mcp",
"args": ["--stdio"],
"env": {
"RSTUDIO_MCP_CONFIG": "~/.rstudio-mcp/config.yaml"
}
}
]
}4.RStudio终端集成
要直接在RStudio的终端中与AI助手一起使用:
- 在后台启动MCP服务器:
# In RStudio Terminal
rstudio-mcp --daemon --port 3000- 配置您的AI助手以通过SSE连接:
# Server endpoint for SSE connections
http://localhost:3000/sse- RStudio环境中的可用工具:
- create_environment -创建R环境 - execute_r_code -运行R代码并捕获结果 - create_project -创建RStudio项目 - install_package -管理R包 - get_project_info -访问项目元数据
环境变量
设置这些环境变量以实现最佳集成:
# RStudio MCP Configuration
export RSTUDIO_MCP_CONFIG="~/.rstudio-mcp/config.yaml"
export RSTUDIO_MCP_LOG_LEVEL="INFO"
export RSTUDIO_MCP_PORT="3000"
# R Environment
export R_HOME="/usr/local/lib/R"
export R_LIBS_USER="~/.rstudio-mcp/libraries"使用示例
在RStudio终端中使用Claude Code
# Start MCP server
rstudio-mcp --daemon
# Claude Code can now:
# - Create R environments: "Create a new R environment for data analysis"
# - Execute R code: "Run this statistical analysis and show results"
# - Manage projects: "Set up a new RStudio project for machine learning"在VS代码中使用GitHub Copilot
# In VS Code terminal connected to RStudio server
# Copilot can access:
# - R workspace objects via rstudio-workspace:// resources
# - Project files via rstudio-project:// resources
# - Environment info via rstudio-environment:// resources
# - Generated plots via rstudio-plot:// resources故障排除
- 连接问题:
# Check if MCP server is running
rstudio-mcp --status
# Test connection
curl http://localhost:3000/health- 权限问题:
# Ensure proper permissions
chmod +x $(which rstudio-mcp)
chown -R $USER ~/.rstudio-mcp/- R环境问题:
# Verify R installation
rstudio-mcp --check-r
# Reset environments
rstudio-mcp --reset-environmentsMCP工具
服务器提供以下MCP工具:
环境管理
create_environment:创建新的R环境list_environments:列出所有可用环境switch_environment:切换到其他环境delete_environment:删除环境
代码执行
execute_r_code:在指定环境中执行R代码get_execution_history:获取已执行代码的历史记录
项目管理
create_project:创建新的RStudio项目open_project:打开现有项目get_project_info:获取项目信息
包管理
install_package:安装R软件包update_package:更新软件包list_packages:列出已安装的软件包
MCP资源
服务器公开以下资源:
rstudio-project://:访问项目文件和配置rstudio-workspace://:访问工作空间对象和变量rstudio-environment://:获取环境信息rstudio-plot://:访问生成的绘图和可视化
MCP提示
常见R开发任务的预构建提示:
analyze_data:数据分析指南create_visualization:可视化创建帮助debug_r_code:R代码调试协助optimize_performance:性能优化建议
发展
项目结构
rstudio-mcp/
├── src/rstudio_mcp/ # Main package
│ ├── __init__.py
│ ├── server.py # MCP server implementation
│ ├── config.py # Configuration management
│ ├── cli.py # Command-line interface
│ ├── exceptions.py # Exception classes
│ ├── logging_config.py # Logging setup
│ └── config/
│ └── default.yaml # Default configuration
├── tests/ # Test suite
├── docs/ # Documentation
├── pyproject.toml # Project configuration
└── README.md运行测试
# Run all tests
python -m pytest
# Run with coverage
python -m pytest --cov=src/rstudio_mcp
# Run specific test file
python -m pytest tests/test_server.py -v代码质量
# Format code
black src/ tests/
# Sort imports
isort src/ tests/
# Type checking
mypy src/
# Linting
flake8 src/ tests/建筑
RStudio MCP服务器遵循模块化架构:
- MCP服务器核心:处理MCP协议通信
- 刀具管理器:管理可用工具及其执行
- 资源管理器:处理资源访问和URI方案
- 快速经理:管理提示模板
- RStudio API包装:与RStudio和R的接口
- 配置系统:管理服务器配置
- 记录系统:处理日志记录和错误报告
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 添加新功能的测试
- 运行测试套件
- 提交拉取请求
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
支持
- 文档: docs/
- 问题:
- 讨论:
路线图
- \[x\] 基本MCP服务器框架
- \[\]RStudio API集成
- \[\]环境管理工具
- \[\]代码执行能力
- \[\]项目管理特点
- \[\]包管理工具
- \[\]版本控制集成
- \[\]可视化处理
- \[\]高级安全功能
- \[\]性能优化
