- Home
- MCP servers
- Plotting
Plotting
- python
7
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"stackloklabs-plotting-mcp": {
"command": "uvx",
"args": [
"--from",
"/path/to/plotting-mcp",
"plotting-mcp",
"--transport=stdio"
]
}
}
}Plotting MCP Server turns CSV data into ready-to-use visuals. It supports multiple chart types, geospatial maps, and chat-friendly PNG outputs, making it easy to integrate data visualizations into AI-assisted workflows and chat interfaces.
How to use
You interact with the Plotting MCP Server through an MCP-enabled client. Start by running the server locally or in your deployment, then send it CSV data along with a requested plot type and optional configuration. The server will return a base64-encoded PNG image that you can display directly in chats or UI panels.
Typical workflows include transforming a CSV snippet into: line charts, bar graphs, pie charts, or a world map. You can customize the visuals using a JSON-based set of plotting parameters to control mapping, colors, sizes, transparency, and markers. For geographic plots, the server automatically detects coordinates and plots them on a world map, with options to tweak style and appearance.
The output is designed for chat-friendly interfaces, delivering a high-quality PNG image that can be embedded or displayed inline in conversations and dashboards.
How to install
Prerequisites you need before installing: Python 3.13 or newer, npm/uvx tooling if you plan to run MCP commands through your preferred runtime, and container tooling if you choose Docker-based deployment.
Option 1: Local installation using common MCP tooling
make install
uv sync
Option 2: Run the server directly with the MCP runtime
uv run plotting-mcp
The server will be available by default on port 9090.
## Additional notes and deployment options
Docker-based deployment is supported. Build a Docker image for the plotting MCP server and run it in any container-enabled environment.
ToolHive provides deployment options for UI, CLI, and Kubernetes modes. You can deploy locally via ToolHive or export to Kubernetes and expose the MCP server as needed. If you are deploying on Kubernetes, ensure a writable filesystem is available for the plotting libraries to cache data.
For local testing, you can generate a plot by sending your CSV data and specifying the plot type and any customization parameters. The returned image is a base64-encoded PNG suitable for embedding in chats or dashboards.
## Examples and troubleshooting
Common plot types you can request include: line, bar, pie, and worldmap. For line and bar charts, map your CSV columns to x, y, and optionally hue. For world maps, coordinates are detected from latitude/longitude fields.
If you encounter issues starting the server, verify you are using Python 3.13+, ensure all plotting libraries (Seaborn, Matplotlib, Cartopy) are installed, and confirm that the port 9090 is not in use by another process.
## Available tools
### generate\_plot
Transforms CSV data into visualizations by plotting data according to the specified type (line, bar, pie, worldmap) and customization options. Returns a base64-encoded PNG image.