microsoft-office-mcp
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
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: PowerPoint 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
"""This server cannot be deployed
Maintenance
Related MCP Connectors
Generate, edit, merge, translate and PDF-convert PowerPoint (.pptx) over MCP. 8 tools.
AI presentation and report generation: slides, diagrams, PPTX export, live preview MCP App.
Generate AI slide decks and export native PowerPoint (.pptx) and PDF presentations from chat.
Create consulting-style presentation decks (editable PowerPoint) from a topic or notes.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables creation of professional PowerPoint presentations with AI-generated content and images, supporting multiple LLMs and image services via MCP protocol.MIT
- 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
- FlicenseNot gradedqualityDmaintenanceFull-featured PowerPoint MCP server with cross-platform support (Windows native, macOS designed). Control PowerPoint programmatically via the Model Context Protocol — 153 tools covering slides, shapes, text, formatting, charts, tables, animations, and more.-