PlotMCP Server
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., "@PlotMCP Servercreate a bar chart showing our monthly revenue: Jan $5k, Feb $8k, Mar $12k"
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.
PlotMCP Server
PlotMCP is a powerful Model Context Protocol (MCP) server designed to enable LLMs to generate high-quality SVG charts from structured data. It leverages fastmcp for the server infrastructure and matplotlib for consistent, precise chart rendering.
Key Features
Pure SVG Rendering: Generates static SVG format with no external JavaScript dependencies. Safe, portable, and easy to embed.
Multiple Plot Types: Supports Line, Scatter, Bar, Area, Histogram, Box, Heatmap, Contour, and Pie charts.
Flexible Configuration: Full control over titles, dimensions, margins, and axis properties (linear, log, and symlog scales).
Output Management: When
--output-diris configured, automatically saves generated charts and returns a specially formatted response that clients can parse to display the image:```local_image /path/to/chart.svg ```This format allows clients to easily detect and render the generated images.
Deterministic Output: Ensures identical inputs produce bit-identical SVG outputs.
Related MCP server: mcp-plots
Installation
Requires Python >= 3.11 and uv installed.
Local Installation (Development)
git clone <repository-url>
cd plot-mcp
uv syncInstall as a Global Tool
uv tool install .Running the Server
Running from Source
uv run plot-mcp --output-dir ./plotsRunning Remotely via GitHub (using uvx)
You can run the server directly from the GitHub repository without manual cloning:
uvx --from git+https://github.com/Nexo-Agent/plot-mcp plot-mcp --output-dir ./plotsNote: Replace the URL with the actual repository location.
CLI Configuration
The server supports the following command-line options:
--output-dir PATH: Directory where generated SVG files will be saved. When set, tools return the file path instead of the raw SVG content.--transport [stdio|sse|streamable-http]: The communication protocol (default:stdio).--port INTEGER: The port for SSE or HTTP transport (default: 8000).
Output Format
The server supports two output modes depending on whether --output-dir is configured:
Without --output-dir (Default)
Tools return a PlotOutput object containing the raw SVG content:
{
"svg": "<svg>...</svg>",
"width": 800,
"height": 400,
"viewBox": "0 0 800 400"
}With --output-dir (Recommended)
Tools save the SVG to a file and return a specially formatted string:
```local_image
/absolute/path/to/chart.svg
```This format is designed to be easily parsed by clients. When your client receives a response containing this pattern, it should:
Detect the
```local_imagemarkerExtract the file path
Load and display the image from that path
This approach keeps the response lightweight and allows clients to handle image rendering efficiently.
See examples/local_image_format.py for a complete demonstration of how this format works.
Available Tools
The LLM can invoke the following tools:
plot_line: Render continuous 2D lines.plot_scatter: Render discrete 2D points.plot_bar: Render categorical bar charts.plot_area: Render filled area under a curve.plot_histogram: Render 1D histograms.plot_box: Render box plots from raw values.plot_heatmap: Render 2D matrix as a color grid.plot_contour: Render 2D contour lines.plot_pie: Render circular pie and donut charts.
Chart Configuration
All tools accept a shared config object to customize the visual output:
{
"title": "My Chart",
"width": 800,
"height": 400,
"margin": { "top": 40, "right": 20, "bottom": 40, "left": 50 },
"x_axis": { "label": "X Axis", "scale": "linear" },
"y_axis": { "label": "Y Axis", "scale": "log" }
}License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceAn MCP (Model Context Protocol) server that enables LLMs to generate ECharts visualizations by accepting chart type, data and parameters and returning cloud image URLs of the generated charts.Last updated2077Apache 2.0
- AlicenseAqualityDmaintenanceA MCP server for data visualization. It exposes tools to render charts (line, bar, pie, scatter, heatmap, etc.) from data and returns plots as either image/text/mermaid diagram.Last updated24MIT
- 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.Last updated16
- AlicenseAqualityDmaintenanceAn MCP server that enables AI assistants to create, update, and publish Datawrapper charts through natural language. It provides tools for data synchronization, visual configuration, and retrieving chart images or editor links.Last updated8MIT
Related MCP Connectors
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Educational MCP server with 17 math/stats tools, visualizations, and persistent workspace
MCP server for AI dialogue using various LLM models via AceDataCloud
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Nexo-Agent/plot-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server