A Model Context Protocol (MCP) server for creating, reading, and manipulating Microsoft Visio documents.
A MCP server that provides tools for creating and editing Microsoft Visio diagrams programmatically via a standardized API.
Visio MCP Server allows you to automate Visio diagram creation and editing using Python. It leverages Microsoft's COM interface to control Visio, enabling you to programmatically create diagrams, add shapes, connect them, add text, and more.
mcp.server
win32com.client
(pywin32)pip install pywin32
pip install mcp-server
python visio_mcp_server.py
The server provides the following functionality:
Add the server to your MCP settings configuration file:
{
"mcpServers": {
"ppt": {
"command": "python",
"args": ["/path/to/ppt_mcp_server.py"],
"env": {}
}
}
}
If you have uvx
installed, you can run the server directly from PyPI without local installation:
{
"mcpServers": {
"ppt": {
"command": "uvx",
"args": [
"--from", "office-visio-mcp-server", "visio_mcp_server"
]
}
}
}
Creates a new Visio diagram.
{
"template_path": "[optional] Path to Visio template (.vstx, .vst)",
"save_path": "[optional] Where to save the file"
}
Example:
{
"save_path": "C:\\Users\\YourUsername\\Documents\\MyDiagram.vsdx"
}
Opens an existing Visio diagram.
{
"file_path": "Path to the Visio file to open"
}
Adds a shape to a Visio diagram.
{
"file_path": "Path to the Visio file",
"shape_type": "Type of shape (Rectangle, Circle, Line, etc.)",
"x": 1.0,
"y": 1.0,
"width": 1.0,
"height": 1.0
}
Connects two shapes in a Visio diagram.
{
"file_path": "Path to the Visio file",
"shape1_id": 1,
"shape2_id": 2,
"connector_type": "Dynamic, Straight, or Curved"
}
Adds text to a shape in a Visio diagram.
{
"file_path": "Path to the Visio file",
"shape_id": 1,
"text": "Text to add to the shape"
}
Lists all shapes in a Visio diagram.
{
"file_path": "Path to the Visio file"
}
Here's a complete workflow example:
{
"save_path": "C:\\Diagrams\\FlowChart.vsdx"
}
{
"file_path": "C:\\Diagrams\\FlowChart.vsdx",
"shape_type": "Rectangle",
"x": 2.0,
"y": 2.0,
"width": 1.5,
"height": 1.0
}
{
"file_path": "C:\\Diagrams\\FlowChart.vsdx",
"shape_type": "Circle",
"x": 5.0,
"y": 2.0,
"width": 1.0,
"height": 1.0
}
{
"file_path": "C:\\Diagrams\\FlowChart.vsdx"
}
{
"file_path": "C:\\Diagrams\\FlowChart.vsdx",
"shape1_id": 1,
"shape2_id": 2,
"connector_type": "Straight"
}
{
"file_path": "C:\\Diagrams\\FlowChart.vsdx",
"shape_id": 1,
"text": "Start"
}
The following features are planned for future releases:
Visio Not Launching:
Template Not Found:
Invalid Shape Type:
COM Errors:
This project is licensed under the MIT License - see the LICENSE file for details.