by GongRzhe
Automates creation and editing of Microsoft Visio diagrams via a standardized API, enabling programmatic shape manipulation, connection, text addition, and file operations using Python and COM.
Visio Mcp Server provides a programmable interface to control Microsoft Visio on Windows. By exposing actions such as creating files, adding and connecting shapes, inserting text, and exporting diagrams, it lets developers automate diagram workflows without manual UI interaction.
pywin32
package.pip install pywin32
pip install mcp-server
python visio_mcp_server.py
serverConfig
below).Create
, AddShape
, ConnectShapes
, etc.template_path
in the Create
request JSON; if omitted, a blank document is created.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.
Please log in to share your review and rating for this MCP.
{ "mcpServers": { "visio": { "command": "npx", "args": [ "-y", "office-visio-mcp-server" ], "env": {} } } }
Discover more MCP servers with similar functionality and use cases
by Skyvern-AI
Skyvern automates browser-based workflows using LLMs and computer vision, offering a robust solution for repetitive online tasks.
by PipedreamHQ
Connect APIs quickly, run event‑driven automations, and execute custom code in Node.js, Python, Go, or Bash on a hosted platform.
by czlonkowski
Provides AI assistants with structured access to n8n node documentation, properties, and operations, enabling automated workflow creation, validation, and management.
by executeautomation
mcp-playwright is a Model Context Protocol (MCP) server that enables large language models (LLMs) to perform browser automation and web scraping tasks using Playwright.
by browserbase
Provides cloud browser automation capabilities for LLMs, enabling web navigation, interaction, screenshot capture, and data extraction through Browserbase and Stagehand.
by haris-musa
excel-mcp-server is a Python-based Model Context Protocol (MCP) server that enables AI agents to programmatically create, read, and modify Excel files without requiring Microsoft Excel to be installed.
by mobile-next
Mobile-mcp is a Model Context Protocol (MCP) server designed for scalable mobile automation, app scraping, and development across iOS and Android devices, including physical devices, simulators, and emulators.
by anaisbetts
mcp-installer is an MCP server designed to automate the installation of other MCP servers, simplifying the process for users.
by leonardsellem
An MCP server that enables AI assistants to interact with n8n workflows through natural language.