microsoft-office-mcp
Click on "Deploy 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., "@microsoft-office-mcpCreate a PowerPoint ERD for a gym membership system"
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.
Create PowerPoint Presentation with ERD from Text Prompt
This project uses LangChain's MultiServerMCPClient to connect to a custom MCP server (Microsoft Office/Visio MCP) and generate a PowerPoint presentation containing an ERD (Entity-Relationship Diagram) visualization.
Prerequisites
Python 3.8+
Microsoft Office (PowerPoint/Visio) installed
MCP Server running with Visio/PowerPoint tools
Related MCP server: PptxGenJS MCP Server
Installation
Clone the repository:
git clone <repository-url> cd microsoft-office-mcpInstall dependencies:
pip install -r requirements.txt
Usage
Start MCP Server
Run the MCP server that exposes Visio/PowerPoint tools:
python server.pyRun the Agent
Execute the agent script with a prompt describing the desired ERD:
python agent.pyModify the main() function in agent.py to customize the prompt:
async def main():
agent = ERDAgent()
prompt = """
Create a PowerPoint presentation with an ERD diagram for this scenario:
[Your ERD description here]
Key requirements:
- Use Crow's Foot notation for relationships
- Keep entities within slide boundaries
- Save as vsdx file
"""
await agent.run(prompt)How It Works
server.py: Implements a FastMCP server that exposes:init_new_visio_document: Creates a new Visio/PowerPoint documentdraw_erd_entity: Draws ERD entity shapes with specified coordinatesconnect_entities: Creates relationship connectors between entitiessave_as_vsdx: Saves the diagram as a .vsdx file
agent.py: A LangGraph agent that:Connects to the MCP server using
MultiServerMCPClientUses
create_react_agentwith Ollama (or another LLM) for reasoningExecutes the MCP tools sequentially to build the diagram
Streams the agent's thought process to the console
Customization
LLM Model: Change
OLLAMA_MODELin.envorconfig.pyMCP Server URL: Update
MCP_SERVER_URLin.envDiagram Design: Modify the prompt in
agent.pyto change:Entities and attributes
Relationships and cardinality
Document layout and styling
Example Prompt
"""
Design a simple ERD diagram for a gym membership system.
Entities:
- MEMBERS (member_id, name, email, phone, address)
- CLASSES (class_id, name, capacity, instructor)
- MEMBERSHIPS (membership_id, type, start_date, end_date)
Relationships:
- A MEMBER can have one MEMBERSHIP (1:1)
- A MEMBER can attend multiple CLASSES (M:N)
- A CLASS has one instructor (1:1)
Requirements:
- Use Crow's Foot notation
- Keep the diagram clean and organized
- Save as vsdx file with appropriate filename
"""Related MCP Connectors
Generate, edit, merge, translate and PDF-convert PowerPoint (.pptx) over MCP. 8 tools.
Presentations.AI MCP server — create designed slide decks from a topic, text, or document.
AI presentation and report generation: slides, diagrams, PPTX export, live preview MCP App.
Generate org charts, MCD/ERD data models, and C4 architecture diagrams — pilot OrgGen AI via MCP.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables creation of professional PowerPoint presentations with AI-generated content and images, supporting multiple LLMs and image services via MCP protocol.MIT
- FlicenseAqualityDmaintenanceA production-ready MCP server that enables LLMs to create, modify, and export PowerPoint presentations programmatically using PptxGenJS.101-
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables creating, editing, and manipulating PowerPoint presentations programmatically through Claude and other MCP-compatible clients.MIT
- AlicenseNot gradedqualityDmaintenanceCross-platform MCP server for Microsoft PowerPoint automation, enabling slide management, template remapping, and real-time evaluation via natural language.MIT