Click on "Install 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., "@ML Research MCPGenerate a publication-quality heatmap from the correlation matrix in results.csv"
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.
ML Research MCP
A comprehensive Model Context Protocol (MCP) server providing research productivity tools for machine learning researchers and developers.
Overview
ML Research MCP is an extensible platform that provides AI assistants with powerful tools for scientific research workflows. Built on the Model Context Protocol, it enables seamless integration with AI applications like Claude Desktop to automate and enhance various research tasks.
Current Status: Phase 1 - Data Visualization Roadmap: Image generation, presentation tools, literature management, and more
Vision & Roadmap
This project aims to be a comprehensive research assistant covering the entire ML research lifecycle:
β Phase 1: Data Visualization (Current)
Scientific plotting with publication-quality output
Statistical analysis visualizations
2D data representations (heatmaps, contours)
Multiple export formats (PNG, PDF, SVG)
π§ Phase 2: Image & Figure Generation (Planned)
AI-powered figure generation using diffusion models
Diagram creation for architecture illustrations
Chart enhancement with intelligent styling
Multi-panel figure composition
π§ Phase 3: Presentation Tools (Planned)
Slide generation from research content
Poster creation for conferences
Automated layout optimization
Template management for institutional branding
π§ Phase 4: Research Management (Future)
Literature search and summarization
Citation management and formatting
Experiment tracking and versioning
Collaboration tools for team projects
Current Features (Phase 1)
Data Visualization Tools
Basic Plots
plot_line- Time series and continuous data visualizationplot_scatter- Multi-dimensional scatter plots with size/color mappingplot_bar- Categorical comparisons (vertical/horizontal)
Statistical Visualizations
plot_histogram- Distribution analysis with density estimationplot_box- Statistical summaries and outlier detectionplot_violin- Detailed distribution shapes with KDE
2D Representations
plot_heatmap- Matrix visualization with annotationsplot_contour- 3D data in 2D with contour linesplot_pcolormesh- Fast pseudocolor plots for large datasets
Technical Highlights
Publication-quality output via UltraPlot
High-performance data handling with Polars
Flexible input from CSV, JSON files or direct data
Vector & raster formats (PDF, SVG, PNG)
Type-safe with comprehensive validation
Well-tested with 48 passing tests
Requirements
Python 3.12+
uv package manager
MCP-compatible client (Claude Desktop, VSCode, etc.)
Installation
Quick Start with Claude Code
Add the server to Claude Code with a single command:
Verify installation:
Manual Installation for MCP Clients
Add to your MCP client configuration (e.g., ~/Library/Application Support/Claude/claude_desktop_config.json):
Direct Execution with uvx
Run the server directly without installation:
For Developers
Clone and set up development environment:
Quick Start
Using with Claude Desktop
After installation, you can ask Claude:
"Create a line plot showing temperature over time from experiment.csv"
"Generate a heatmap of the correlation matrix and save as PDF"
"Plot a scatter chart with x=[1,2,3,4], y=[2,4,6,8], sized by [10,20,30,40]"
Using as a Library
Example Gallery
Real examples generated with ML Research MCP:
Query | Result |
Line Plot "Create a line plot showing temperature over time with x=[1,2,3,4,5,6] and y=[2,4,3,5,6,7]" | |
Scatter Plot "Make a scatter plot with color and size mapping using plasma colormap" | |
Bar Chart "Generate a bar chart comparing performance across categories A through E" | |
Histogram "Create a histogram with density normalization for distribution analysis" | |
Violin Plot "Make a violin plot comparing Control vs Treatment groups" | |
Heatmap "Generate an annotated correlation matrix heatmap using RdBu colormap" |
All plots generated with publication-quality settings (150 DPI, customizable dimensions).
Documentation
Visualization Tools (Phase 1)
plot_line
Parameters:
x,y: Column names (if using file) or data arraysdata_input:{"file_path": "data.csv"}or{"data": {...}}style:{"title": "...", "xlabel": "...", "ylabel": "...", "grid": true}output:{"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300}
plot_scatter
Additional parameters:
size: Point sizes (column name, array, or constant)color: Point colors (column name or array)
plot_bar
Additional parameters:
orientation:"vertical"or"horizontal"
plot_histogram
plot_box
plot_violin
Similar to plot_box with kernel density estimation.
plot_heatmap
plot_contour
plot_pcolormesh
Fast alternative to contour plots with shading options.
Future Tools (Planned)
Documentation will be added as features are implemented.
Development
Project Structure
Running the Server
Testing
Code Quality
Adding Dependencies
Architecture
Current Design (Phase 1)
Future Architecture
The platform is designed to be modular, with each research tool category as a separate module:
Data Module: Unified data loading (Polars-based)
Visualization Module: Current plotting tools
Generation Module: AI-powered content creation
Presentation Module: Slide and poster generation
Research Module: Literature and experiment management
Each module exposes MCP tools that can be independently used or composed together.
Technology Stack
Current (Phase 1)
FastMCP - MCP server framework
UltraPlot - Publication-quality plotting
Polars - High-performance dataframes
Pillow - Image processing
Pydantic - Data validation
Planned
Diffusion models (Stable Diffusion, DALL-E) for image generation
LaTeX/Typst for presentation rendering
Vector database for literature search
More to be determined based on research needs
Contributing
We welcome contributions across all phases of the project!
Current Priorities
β Phase 1 visualization tools (complete)
π¨ Additional plot types (3D, network graphs, etc.)
π§ Phase 2 planning and design
How to Contribute
Fork the repository
Create a feature branch
Implement with tests (maintain 100% pass rate)
Ensure quality checks pass:
uv run ruff format . uv run ruff check . uv run ty check uv run pytestSubmit a pull request
See CONTRIBUTING.md (coming soon) for detailed guidelines.
Project Goals
Comprehensive: Cover the full research lifecycle from data analysis to publication
High-quality: Publication-ready outputs with professional standards
Efficient: Fast execution leveraging modern Python tools
Extensible: Easy to add new tools and integrations
AI-friendly: Designed for seamless AI assistant integration via MCP
Testing & Quality
48 tests covering all Phase 1 functionality
100% pass rate with comprehensive coverage
Type-safe with full type annotations
Linted with Ruff (zero errors)
Documented with detailed docstrings
License
MIT License - see LICENSE file for details.
Acknowledgments
Current Phase
FastMCP by Jeff Lowin
UltraPlot - ProPlot successor
Polars - Rust-powered dataframes
uv - Fast Python packaging
Inspiration
Model Context Protocol by Anthropic
Modern scientific Python ecosystem
Resources
Status: Phase 1 (Visualization) complete β | Phase 2 (Image Generation) in planning π§
For feature requests or questions, please open an issue on GitHub.