MCP cover image
See in Github
2025-04-09

R MCP Server

3

Github Watches

2

Github Forks

13

Github Stars

R MCP Server

PyPI version Downloads License: MIT

A Model Context Protocol (MCP) server that provides advanced econometric modeling and data analysis capabilities through R. This server enables AI assistants to perform sophisticated econometric and statistical analyses seamlessly, helping you quickly gain insights from your data.

Features

  • Linear Regression: Run linear models with optional robust standard errors.
  • Panel Data Analysis: Estimate fixed effects, random effects, pooling, between, and first-difference models.
  • Instrumental Variables: Build and estimate IV regression models.
  • Diagnostic Tests: Assess heteroskedasticity, autocorrelation, and model misspecification.
  • Descriptive Statistics: Generate summary statistics for datasets using R’s summary() functionality.
  • Correlation Analysis: Compute Pearson or Spearman correlations between variables.
  • Group-By Aggregations: Group data by specified columns and compute summary statistics using dplyr.
  • Resources: Access reference documentation for various econometric techniques.
  • Prompts: Use pre-defined prompt templates for common econometric analyses.

Installation

Using Docker (Recommended)

  1. Build the Docker image:

    docker build -t r-econometrics-mcp .
    
  2. Run the container:

docker run -it r-econometrics-mcp

Manual Installation

Install the required Python packages:

pip install -r requirements.txt

Install the required R packages (if you run the server outside a container):

install.packages(c("plm", "lmtest", "sandwich", "AER", "jsonlite"), repos="https://cloud.r-project.org/")

Run the server:

python rmcp.py

Usage

The server communicates via standard input/output. When you run:

python rmcp.py

it starts and waits for JSON messages on standard input. To test the server manually, create a file (for example, test_request.json) with a compact (single-line) JSON message.

Example Test

Create test_request.json with the following content (a one-line JSON):

{"tool": "linear_model", "args": {"formula": "y ~ x1", "data": {"x1": [1,2,3,4,5], "y": [1,3,5,7,9]}, "robust": false}}

Then run:

cat test_request.json | python rmcp.py

Output

{"coefficients": {"(Intercept)": -1, "x1": 2}, "std_errors": {"(Intercept)": 2.8408e-16, "x1": 8.5654e-17}, "t_values": {"(Intercept)": -3520120717017444, "x1": 23349839270207356}, "p_values": {"(Intercept)": 5.0559e-47, "x1": 1.7323e-49}, "r_squared": 1, "adj_r_squared": 1, "sigma": 2.7086e-16, "df": [2, 3, 2], "model_call": "lm(formula = formula, data = data)", "robust": false}

Usage with Claude Desktop

  1. Launch Claude Desktop
  2. Open the MCP Servers panel
  3. Add a new server with the following configuration:
    • Name: R Econometrics
    • Transport: stdio
    • Command: path/to/python r_econometrics_mcp.py
    • (Or if using Docker): docker run -i r-econometrics-mcp

Example Queries

Here are some example queries you can use with Claude once the server is connected:

Linear Regression

Can you analyze the relationship between price and mpg in the mtcars dataset using linear regression?

Panel Data Analysis

I have panel data with variables gdp, investment, and trade for 30 countries over 20 years. Can you help me determine if a fixed effects or random effects model is more appropriate?

Instrumental Variables

I'm trying to estimate the causal effect of education on wages, but I'm concerned about endogeneity. Can you help me set up an instrumental variables regression?

Diagnostic Tests

After running my regression model, I'm concerned about heteroskedasticity. Can you run appropriate diagnostic tests and suggest corrections if needed?

Tools Reference

linear_model

Run a linear regression model.

Parameters:

  • formula (string): The regression formula (e.g., 'y ~ x1 + x2')
  • data (object): Dataset as a dictionary/JSON object
  • robust (boolean, optional): Whether to use robust standard errors

panel_model

Run a panel data model.

Parameters:

  • formula (string): The regression formula (e.g., 'y ~ x1 + x2')
  • data (object): Dataset as a dictionary/JSON object
  • index (array): Panel index variables (e.g., ['individual', 'time'])
  • effect (string, optional): Type of effects: 'individual', 'time', or 'twoways'
  • model (string, optional): Model type: 'within', 'random', 'pooling', 'between', or 'fd'

diagnostics

Perform model diagnostics.

Parameters:

  • formula (string): The regression formula (e.g., 'y ~ x1 + x2')
  • data (object): Dataset as a dictionary/JSON object
  • tests (array): Tests to run (e.g., ['bp', 'reset', 'dw'])

iv_regression

Estimate instrumental variables regression.

Parameters:

  • formula (string): The regression formula (e.g., 'y ~ x1 + x2 | z1 + z2')
  • data (object): Dataset as a dictionary/JSON object

Resources

  • econometrics:formulas: Information about common econometric model formulations
  • econometrics:diagnostics: Reference for diagnostic tests
  • econometrics:panel_data: Guide to panel data analysis in R

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT License

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Contraband Interactive
  • Emulating Dr. Jordan B. Peterson's style in providing life advice and insights.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • rustassistant.com
  • Your go-to expert in the Rust ecosystem, specializing in precise code interpretation, up-to-date crate version checking, and in-depth source code analysis. I offer accurate, context-aware insights for all your Rust programming questions.

  • apappascs
  • Découvrez la collection la plus complète et la plus à jour de serveurs MCP sur le marché. Ce référentiel sert de centre centralisé, offrant un vaste catalogue de serveurs MCP open-source et propriétaires, avec des fonctionnalités, des liens de documentation et des contributeurs.

  • ShrimpingIt
  • Manipulation basée sur Micropython I2C de l'exposition GPIO de la série MCP, dérivée d'Adafruit_MCP230XX

  • modelcontextprotocol
  • Serveurs de protocole de contexte modèle

  • Mintplex-Labs
  • L'application tout-en-un desktop et Docker AI avec chiffon intégré, agents AI, constructeur d'agent sans code, compatibilité MCP, etc.

  • huahuayu
  • Une passerelle API unifiée pour intégrer plusieurs API d'explorateur de blockchain de type étherscan avec la prise en charge du protocole de contexte modèle (MCP) pour les assistants d'IA.

    Reviews

    2 (1)
    Avatar
    user_Stqu47Vk
    2025-04-17

    As an avid user of rmcp developed by gojiplus, I must say this tool is incredibly efficient and easy to integrate. The straightforward setup and comprehensive documentation make it a must-have for any developer. Its robust features have significantly streamlined my workflow, and the support from the community is outstanding. Highly recommend checking it out at https://github.com/gojiplus/rmcp!