MCP server for RapidChart - Generate diagrams from code in Cursor
Project description
RapidChart MCP Server
Model Context Protocol (MCP) server for RapidChart - Generate and manage diagrams directly from Cursor IDE.
Features
- 🎨 Generate diagrams from code (Class, ER, Sequence, Architecture, etc.)
- 🔄 Update existing diagrams with new code
- 📁 Organize diagrams in workspaces and folders
- 🤖 Support for multiple AI models (GPT-5, Claude, Gemini)
- 🔐 Secure Bearer token authentication
- 💳 Respects your RapidChart credits and API keys
Installation
pip install rapidchart-mcp
Or install from source:
git clone https://github.com/Samicostox/rapidchart-mcp.git
cd rapidchart-mcp
pip install -e .
Configuration
1. Generate API Token
- Go to RapidChart Settings
- Navigate to "API Tokens"
- Click "Generate New Token"
- Copy the token (starts with
rc_)
2. Configure Cursor
Add to your Cursor MCP settings (~/.cursor/mcp.json or workspace .cursor/mcp.json):
{
"mcpServers": {
"rapidchart": {
"command": "python",
"args": ["-m", "rapidchart_mcp"],
"env": {
"RAPIDCHART_API_TOKEN": "rc_your_token_here",
"RAPIDCHART_API_URL": "https://fastuml-0bb6938ba599.herokuapp.com",
"RAPIDCHART_DEFAULT_TYPE": "general",
"RAPIDCHART_FEW_PROMPTS": "false",
"RAPIDCHART_GUIDELINES": "true"
}
}
}
}
Usage
In Cursor
Once configured, you can use natural language:
User: "Generate a class diagram from src/models.py"
→ Cursor reads the file and calls RapidChart MCP
→ Returns diagram URL
User: "List my available AI models"
→ Shows models with your credit status
User: "Update diagram abc123 with new code from src/models.py"
→ Updates the diagram with context awareness
Available Tools
list_models- Show available AI models and your creditslist_workspaces- List your workspaceslist_folders- List folders in a workspacelist_diagrams- Browse your diagramscreate_diagram- Generate diagram from codeget_diagram- Get specific diagram detailsupdate_diagram- Update diagram with new codedelete_diagram- Delete a diagrammove_diagram- Move diagram to different folder/workspace
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
RAPIDCHART_API_TOKEN |
✅ Yes | - | Your RapidChart API token |
RAPIDCHART_API_URL |
No | Production URL | API base URL |
RAPIDCHART_DEFAULT_TYPE |
No | general |
Default diagram type |
RAPIDCHART_DEFAULT_MODEL |
No | Auto | Default AI model ID |
RAPIDCHART_FEW_PROMPTS |
No | false |
Enable multi-step thinking |
RAPIDCHART_GUIDELINES |
No | true |
Include diagram guidelines |
RAPIDCHART_TIMEOUT |
No | 300 |
Request timeout (seconds) |
Development
# Clone the repo
git clone https://github.com/rapidchart/rapidchart-mcp.git
cd rapidchart-mcp
# Install in development mode
pip install -e .
# Run tests
pytest
# Run the server directly
python -m rapidchart_mcp
Known Issues
503 Timeout on Diagram Creation
Symptom: You get a 503 Service Unavailable error, but the diagram is created successfully.
Cause: Heroku has a 30-second router timeout. Complex diagrams can take 30-60+ seconds to generate.
Solution:
- The diagram IS being created despite the error
- Run
list_diagramsto see your newly created diagram - This is a Heroku limitation, not a bug in RapidChart
Workaround: Use simpler code or smaller diagrams for faster generation.
License
MIT
Support
- 📧 Email: hello@rapidchart.com
- 🐛 Issues: GitHub Issues
- 📖 Docs: docs.rapidchart.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rapidchart_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: rapidchart_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 12.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d95644fc1811e9d19a7c7a31878d52c4df1ac58207aa382c11aad499954cc35c
|
|
| MD5 |
b1bfebfe1434992a26f53a48bf316408
|
|
| BLAKE2b-256 |
2d1609cc97a4c51adee70ee3d97de3f98e0a93c88575a953b400c40ff6a89fd6
|