Linear Regression MCP
This Linear Regression MCP server enables end-to-end machine learning workflow for training a Linear Regression model using a CSV dataset.
Capabilities include:
Uploading a CSV file for data processing
Retrieving column names from the dataset
Identifying categorical columns within the data
Label encoding categorical columns into numerical values
Training a Linear Regression model with a specified target column
Calculating Root Mean Square Error (RMSE) for model evaluation
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Linear Regression MCP train a model on my sales data CSV to predict revenue"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Linear Regression MCP
Welcome to Linear Regression MCP! This project demonstrates an end-to-end machine learning workflow using Claude and the Model Context Protocol (MCP).
Claude can train a Linear Regression model entirely by itself, simply by uploading a CSV file containing the dataset. The system goes through the entire ML model training lifecycle, handling data preprocessing, training, and evaluation (RMSE calculation).
Setup and Installation
1. Clone the Repository:
First, clone the repository to your local machine:
git clone https://github.com/HeetVekariya/Linear-Regression-MCP
cd Linear-Regression-MCP2. Install uv:
uv is an extremely fast Python package and project manager, written in Rust. It is essential for managing the server and dependencies in this project.
Download and install
uvfrom here.
3. Install Dependencies:
Once uv is installed, run the following command to install all necessary dependencies:
uv sync4. Configure Claude Desktop:
To integrate the server with Claude Desktop, you will need to modify the Claude configuration file. Follow the instructions for your operating system:
For macOS or Linux:
code ~/Library/Application\ Support/Claude/claude_desktop_config.jsonFor Windows:
code $env:AppData\Claude\claude_desktop_config.jsonIn the configuration file, locate the
mcpServerssection, and replace the placeholder paths with the absolute paths to youruvinstallation and the Linear Regression project directory. It should look like this:
{
"mcpServers":
{
"linear-regression":
{
"command": "ABSOLUTE/PATH/TO/.local/bin/uv",
"args":
[
"--directory",
"ABSOLUTE/PATH/TO/YOUR-LINEAR-REGRESSION-REPO",
"run",
"server.py"
]
}
}
}Once the file is saved, restart Claude Desktop to link with the MCP server.
Related MCP server: MCP File Explorer
Available Tools
The following tools are available in this project to help you work with the dataset and train the model:
Tool | Description | Arguments |
| Uploads a CSV file and stores it for processing. |
|
| Retrieves the column names in the uploaded dataset. | No arguments. |
| Checks for any categorical columns in the dataset. | No arguments. |
| Label encodes categorical columns into numerical values. | No arguments. |
| Trains a linear regression model and calculates RMSE. |
|
Open for Contributions
I welcome contributions to this project! Whether it's fixing bugs, adding new features, or improving the documentation, feel free to fork the repository and submit pull requests.
If you have any suggestions or feature requests, open an issue, and I'll be happy to discuss them!
Available Tools
5 toolscheck_category_columnsC
This function check if data has categorical columns.
Returns: String which contains list of categorical columns.
Inputs: no named parameters.
get_columns_infoC
This function gives information about columns.
Returns: String which contains column names.
Inputs: no named parameters.
label_encode_categorical_columnsC
This function label encodes all the categorical columns.
Returns: String which confirms success of encoding process.
Inputs: no named parameters.
train_linear_regression_modelC
This function trains linear regression model.
Args: Takes input for output column name.
Returns: String which contains the RMSE value.
Inputs: output_column (required).
upload_fileC
This function read the csv data and stores it in the class variable.
Args: Absolute path to the .csv file.
Returns: String which shows the shape of the data.
Inputs: path (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Most tools have distinct purposes: checking categorical columns, getting column info, label encoding, training a model, and uploading a file. However, 'check_category_columns' and 'get_columns_info' could be slightly confused as both provide column-related information, but their specific focuses (categorical vs. general) help differentiate them.
The tools use a consistent snake_case format, which is good. However, the naming pattern is mixed: some are verb_noun (e.g., 'upload_file', 'train_linear_regression_model'), while others are noun_verb (e.g., 'check_category_columns', 'get_columns_info', 'label_encode_categorical_columns'). This inconsistency in verb placement reduces predictability.
With 5 tools, the count is reasonable for a linear regression server, covering data upload, inspection, preprocessing, and model training. It's slightly thin as it lacks tools for prediction, model evaluation beyond RMSE, or data splitting, but it's well-scoped for basic workflows.
The toolset covers core steps: data upload, column analysis, encoding, and model training. However, there are notable gaps: no tools for making predictions with the trained model, evaluating model performance beyond RMSE (e.g., R-squared), splitting data into train/test sets, or handling missing values. This limits end-to-end workflow coverage.
Maintenance
Related MCP Connectors
Train AutoML models on CSV files and run predictions from Claude and other MCP clients.
MCP server that lets your AI assistant build and deploy apps, hosting each one at a live URL.
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
MCP server for building and testing AI agents with multi-model experimentation and insights.
Related MCP Servers
- FlicenseBqualityDmaintenanceAn MCP server that provides data visualization and machine learning tools, featuring automated intent-based pipeline routing for data cleaning and model training. It enables LLMs to process CSV or JSON data to generate visual charts, perform regressions, or execute clustering analysis.16-
- AlicenseNot gradedqualityDmaintenanceA beginner MCP server that enables Claude to read local text, CSV, and Markdown files. Built as a learning project to understand how to connect AI to local file systems using the MCP protocol.ISC
- FlicenseAqualityDmaintenanceAn MCP server for dataset exploration and analysis, enabling LLM clients to perform summary, correlation, distribution, missing value analysis, data cleaning, and statistical tests directly on CSV files.3-
- AlicenseNot gradedqualityBmaintenanceAn MCP server wrapping AutoGluon's AutoML capabilities, enabling data loading, model training, prediction, evaluation, and model management.Apache 2.0