MCPR
Expose R functions through the Model Context Protocol (MCP) for seamless integration with AI assistants.
mcpr
mcpr exposes R functions through the Model Context Protocol (MCP), enabling seamless integration with AI assistants like Claude Desktop.
Installation
# install.packages("devtools")
devtools::install_github("chi2labs/mcpr")
Quick Start
Basic Server
library(mcpr)
# Create and configure server
server <- mcp_http("My R Analysis Server", "1.0.0", port = 8080)
# Add tools
server$mcp_tool(
name = "calculate_mean",
fn = function(numbers) mean(numbers),
description = "Calculate the mean of a numeric vector"
)
# Run server
server$mcp_run()
Using Decorators
Create a file with decorated functions:
# analysis-tools.R
#* @mcp_tool
#* @description Calculate summary statistics for a numeric vector
#* @param x numeric vector to analyze
#* @param na.rm logical whether to remove NA values (default: TRUE)
calculate_stats <- function(x, na.rm = TRUE) {
list(
mean = mean(x, na.rm = na.rm),
median = median(x, na.rm = na.rm),
sd = sd(x, na.rm = na.rm),
min = min(x, na.rm = na.rm),
max = max(x, na.rm = na.rm)
)
}
Load and run:
server <- mcp("Analysis Server", "1.0.0")
server$mcp_source("analysis-tools.R")
server$mcp_run(transport = "http", port = 8080)
Configure Claude Desktop
Add to Claude Desktop's configuration:
{
"mcpServers": {
"r-analysis": {
"url": "http://localhost:8080/mcp"
}
}
}
Advanced Usage
Register Existing Functions
server <- mcp_http("Stats Server", "1.0.0")
server$mcp_tool(
name = "t_test",
fn = t.test,
description = "Perform t-test"
)
server$mcp_tool(
name = "cor_test",
fn = cor.test,
description = "Correlation test"
)
Production Deployment
server <- mcp_http(
name = "Production Server",
version = "1.0.0",
host = "0.0.0.0", # Listen on all interfaces
port = 8080,
log_file = "mcp-server.log",
log_level = "info"
)
Docker Deployment
FROM rocker/r-ver:4.3.0
RUN install.packages(c("mcpr", "plumber", "jsonlite"))
COPY server.R /app/
WORKDIR /app
EXPOSE 8080
CMD ["Rscript", "server.R"]
Examples
Complete examples in inst/examples/:
basic-server.R- Simple server with basic toolsstats-server.R- Statistical analysis toolsdata-server.R- Data manipulation and visualization
License
MIT + file LICENSE
Servidores relacionados
Scout Monitoring MCP
patrocinadorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
patrocinadorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Codebase MCP Server
An intelligent codebase search engine that transforms local codebases into a natural language queryable knowledge base.
Composer Package README MCP Server
Fetches Composer package README and usage information from Packagist.
ChemMCP
A collection of 19 professional tools for chemical molecular processing based on the Model Context Protocol (MCP).
Floyd
Scheduling and booking engine for AI agents. Check availability, hold slots, and confirm appointments with two-phase booking and conflict-free resource management.
iOS MCP Server
An iOS mobile automation server using Appium and WebDriverAgent, built with clean architecture and SOLID principles.
Figma to React Native MCP
Convert Figma designs into React Native components.
Vibetest Use
A browser-agent QA swarm with an MCP interface for testing AI-generated websites.
XcodeMCP
An MCP server to control Xcode on macOS using JavaScript for Automation (JXA).
Mezmo MCP
Mezmo's remote MCP server connects AI assistants to Mezmo's Observability platform so you can run advanced root-cause analysis, discover pipelines, and export logs without hosting anything yourself.
Perf MCP
Fact-check and fix AI outputs — hallucination detection, schema validation, and auto-repair.