Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.5%) to scientific vocabulary
Last synced: 8 months ago · JSON representation ·

Repository

R MCP Server

Basic Info
  • Host: GitHub
  • Owner: finite-sample
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 103 KB
Statistics
  • Stars: 29
  • Watchers: 3
  • Forks: 5
  • Open Issues: 1
  • Releases: 0
Created about 1 year ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

RMCP: R Model Context Protocol Server

PyPI version Downloads License: MIT Python 3.8+

Version 0.3.2 - A comprehensive Model Context Protocol (MCP) server with 33 statistical analysis tools across 8 categories. RMCP enables AI assistants and applications to perform sophisticated statistical modeling, econometric analysis, machine learning, time series analysis, and data science tasks seamlessly through natural conversation.

🎉 Now with 33 statistical tools across 8 categories!

🚀 Quick Start

bash pip install rmcp

```bash

Start the MCP server

rmcp start ```

That's it! RMCP is now ready to handle statistical analysis requests via the Model Context Protocol.

👉 See Working Examples → - Copy-paste ready commands with real datasets!

✨ Features

📊 Comprehensive Statistical Analysis (33 Tools)

Regression & Correlation

  • Linear Regression (linear_model): OLS with robust standard errors, R², p-values
  • Logistic Regression (logistic_regression): Binary classification with odds ratios and accuracy
  • Correlation Analysis (correlation_analysis): Pearson, Spearman, and Kendall correlations

Time Series Analysis

  • ARIMA Modeling (arima_model): Autoregressive integrated moving average with forecasting
  • Time Series Decomposition (decompose_timeseries): Trend, seasonal, remainder components
  • Stationarity Testing (stationarity_test): ADF, KPSS, Phillips-Perron tests

Data Transformation

  • Lag/Lead Variables (lag_lead): Create time-shifted variables for analysis
  • Winsorization (winsorize): Handle outliers by capping extreme values
  • Differencing (difference): Create stationary series for time series analysis
  • Standardization (standardize): Z-score, min-max, robust scaling

Statistical Testing

  • T-Tests (t_test): One-sample, two-sample, paired t-tests
  • ANOVA (anova): Analysis of variance with Types I/II/III
  • Chi-Square Tests (chi_square_test): Independence and goodness-of-fit
  • Normality Tests (normality_test): Shapiro-Wilk, Jarque-Bera, Anderson-Darling

Descriptive Statistics

  • Summary Statistics (summary_stats): Comprehensive descriptives with grouping
  • Outlier Detection (outlier_detection): IQR, Z-score, Modified Z-score methods
  • Frequency Tables (frequency_table): Counts and percentages with sorting

Advanced Econometrics

  • Panel Regression (panel_regression): Fixed/random effects for longitudinal data
  • Instrumental Variables (instrumental_variables): 2SLS with endogeneity testing
  • Vector Autoregression (var_model): Multivariate time series modeling

Machine Learning

  • K-Means Clustering (kmeans_clustering): Unsupervised clustering with validation
  • Decision Trees (decision_tree): Classification and regression trees
  • Random Forest (random_forest): Ensemble methods with variable importance

Data Visualization

  • Scatter Plots (scatter_plot): Correlation plots with trend lines
  • Histograms (histogram): Distribution analysis with density overlay
  • Box Plots (boxplot): Quartile analysis with outlier detection
  • Time Series Plots (time_series_plot): Temporal data visualization
  • Correlation Heatmaps (correlation_heatmap): Matrix visualization
  • Regression Diagnostics (regression_plot): Model validation plots

File Operations

  • CSV Import (read_csv): Flexible data loading with parsing options
  • CSV Export (write_csv): Data export with formatting control
  • Dataset Information (data_info): Comprehensive data structure analysis
  • Data Filtering (filter_data): Complex conditional data selection

Production Ready

  • MCP Protocol: Full JSON-RPC 2.0 compliance
  • Transport Agnostic: stdio, HTTP, WebSocket support
  • Error Handling: Comprehensive error reporting and validation
  • Security: Safe R execution with controlled environment

🎯 Real-World Usage

RMCP works through natural conversation with AI assistants. Here's how users actually interact with it:

Business Analysis

You ask Claude:

"I have sales data and marketing spend. Can you analyze the ROI and tell me how effective our marketing is?"

Claude responds:

"Based on the regression analysis, every $1 spent on marketing generates $4.70 in additional sales. The relationship is highly significant (p < 0.001) and explains 97.9% of sales variation."

Economic Research

You ask Claude:

"I have GDP growth and unemployment data for several countries. Can you test if this supports Okun's Law?"

Claude responds:

"The correlation analysis shows strong support for Okun's Law with r = -0.944. Higher GDP growth is strongly associated with lower unemployment across your dataset."

Data Science

You ask Claude:

"Help me build a customer churn prediction model using tenure and monthly charges."

Claude responds:

"I've built a logistic regression model that achieves 100% accuracy. Longer tenure significantly reduces churn risk (11.3% less likely per month), while higher charges increase churn risk (3% more likely per dollar)."

📊 Validated User Scenarios

RMCP has been tested with real-world scenarios achieving 100% success rate:

  • Business Analysts: Sales forecasting with 97.9% R², $4.70 ROI per marketing dollar
  • Economists: Macroeconomic analysis showing Okun's Law (r=-0.944)
  • Data Scientists: Customer churn prediction with 100% accuracy
  • Researchers: Treatment effect analysis with significant results (p<0.001)

🔧 Installation & Setup

Prerequisites

  • Python 3.8+
  • R 4.0+ (automatically configured)

Install via pip

bash pip install rmcp

Development Installation

bash git clone https://github.com/gojiplus/rmcp.git cd rmcp pip install -e ".[dev]"

With Claude Desktop

Add to your Claude Desktop MCP configuration:

json { "mcpServers": { "rmcp": { "command": "rmcp", "args": ["start"], "env": {} } } }

📚 Usage

Command Line Interface

```bash

Start MCP server (stdio transport)

rmcp start

Check version

rmcp --version

Advanced server configuration

rmcp serve --log-level DEBUG --read-only

List available tools and capabilities

rmcp list-capabilities ```

Programmatic Usage

```python

RMCP is primarily designed as a CLI MCP server

For programmatic R analysis, use the MCP protocol:

import json import subprocess

Send analysis request to RMCP server

request = { "tool": "linear_model", "args": { "formula": "y ~ x", "data": {"x": [1, 2, 3], "y": [2, 4, 6]} } }

Start server and send request via stdin

proc = subprocess.Popen(['rmcp', 'start'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) result, _ = proc.communicate(json.dumps(request)) print(result) ```

API Examples

Linear Regression

python { "tool": "linear_model", "args": { "formula": "outcome ~ treatment + age + baseline", "data": { "outcome": [4.2, 6.8, 3.8, 7.1], "treatment": [0, 1, 0, 1], "age": [25, 30, 22, 35], "baseline": [3.8, 4.2, 3.5, 4.8] } } }

Correlation Analysis

python { "tool": "correlation_analysis", "args": { "data": { "x": [1, 2, 3, 4, 5], "y": [2, 4, 6, 8, 10] }, "variables": ["x", "y"], "method": "pearson" } }

Logistic Regression

python { "tool": "logistic_regression", "args": { "formula": "churn ~ tenure_months + monthly_charges", "data": { "churn": [0, 1, 0, 1], "tenure_months": [24, 6, 36, 3], "monthly_charges": [70, 85, 65, 90] }, "family": "binomial", "link": "logit" } }

🧪 Testing & Validation

RMCP includes comprehensive testing with realistic scenarios:

```bash

Run all user scenarios (should show 100% pass rate)

python tests/realistic_scenarios.py

Run development test script

bash src/rmcp/scripts/test.sh ```

Current Test Coverage: - ✅ MCP Interface: 100% success rate (5/5 tests) - Validates actual Claude Desktop integration - ✅ User Scenarios: 100% success rate (4/4 tests) - Validates real-world usage patterns - ✅ Conversational Examples: All documented examples tested and verified working

🏗️ Architecture

RMCP is built with production best practices:

  • Clean Architecture: Modular design with clear separation of concerns
  • MCP Compliance: Full Model Context Protocol specification support
  • Transport Layer: Pluggable transports (stdio, HTTP, WebSocket)
  • R Integration: Safe subprocess execution with JSON serialization
  • Error Handling: Comprehensive error reporting and recovery
  • Security: Controlled R execution environment

src/rmcp/ ├── core/ # MCP server core ├── tools/ # Statistical analysis tools ├── transport/ # Communication layers ├── registries/ # Tool and resource management └── security/ # Safe execution environment

🤝 Contributing

We welcome contributions! Please see our contributing guidelines.

Development Setup

bash git clone https://github.com/gojiplus/rmcp.git cd rmcp pip install -e ".[dev]" pre-commit install

Running Tests

bash python tests/realistic_scenarios.py # User scenarios pytest tests/ # Unit tests (if any)

📄 License

MIT License - see LICENSE file for details.

🙋 Support

🎉 Acknowledgments

RMCP builds on the excellent work of: - Model Context Protocol specification - R Project statistical computing environment - The broader open-source statistical computing community


Ready to analyze data like never before? Install RMCP and start running sophisticated statistical analyses through AI assistants today! 🚀

Owner

  • Name: finite-sample
  • Login: finite-sample
  • Kind: organization

Citation (citation.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "R Econometrics MCP Server"
version: "0.1.0"
date-released: "2025-04-10"
authors:
  - given-names: "Gaurav"
    family-names: "Sood"
abstract: "A Model Context Protocol (MCP) server for R-based econometric analysis that provides tools, resources, and prompts to facilitate advanced econometric modeling with R."
license: "MIT"
repository-code: "https://github.com/gojiplus/rmcp"
url: "https://github.com/gojiplus/rmcp"

GitHub Events

Total
  • Watch event: 4
  • Push event: 7
Last Year
  • Watch event: 4
  • Push event: 7

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 27
  • Total Committers: 1
  • Avg Commits per committer: 27.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 27
  • Committers: 1
  • Avg Commits per committer: 27.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
***** g****7@g****m 27

Issues and Pull Requests

Last synced: 8 months ago


Dependencies

Dockerfile docker
  • python 3.10-slim build
requirements.txt pypi
  • modelcontextprotocol *
  • numpy >=1.24.0
  • pandas >=2.0.0
  • rpy2 *