About Office MCP Server
Office MCP Server is an unofficial Java server for AI agents that work with Word, Excel, and PowerPoint files. It exposes file creation, reading, and editing operations, including spreadsheet data and presentation slides.
Key features
- 01Create and edit Excel workbooks
- 02Read Excel cells and sheet counts
- 03Create Word documents and add text
- 04Create PowerPoint presentations and slides
- 05Read slide titles and counts
Use cases
- 01Add rows to spreadsheet files
- 02Read selected spreadsheet cells
- 03Draft Word documents
- 04Add text to presentation slides
MCP support
Exposes tools and resources for managing Word, Excel, and PowerPoint files to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEOffice MCP Server
The Office MCP Server is an unofficial Model Context Protocol (MCP) Server based Java server designed to manage and process requests from AI agents for Word, Excel, etc. files.
Framework
This project is built using Quarkus, a Kubernetes-native Java framework tailored for building lightweight, high-performance microservices. Quarkus enables fast startup times and low memory usage, making it ideal for cloud-native applications.
Supported Methods
The server supports the following MCP tools and resources:
Excel Features
- Tool: Get Filename: Retrieve the filename of an Excel file.
- Argument:
filename- The name of the Excel file.
- Argument:
- Tool: Create Excel Workbook: Create a new Excel workbook.
- Argument:
filepath- Path to create the new Excel workbook.
- Argument:
- Tool: Create Excel Sheet: Create a new sheet in an Excel workbook.
- Arguments:
filepath- Path to the Excel workbook.sheetName- Name of the new sheet.
- Arguments:
- Tool: Add Excel Row: Add a row to an Excel sheet.
- Arguments:
filepath- Path to the Excel workbook.sheetName- Name of the sheet.rowData- Data for the new row.
- Arguments:
- Tool: Read Excel Cell: Read a cell from an Excel sheet.
- Arguments:
filepath- Path to the Excel workbook.sheetName- Name of the sheet.rowNum- Row number (0-based).colNum- Column number (0-based).
- Arguments:
- Tool: Close Excel Workbook: Close an Excel workbook.
- Argument:
filepath- Path to the Excel workbook.
- Argument:
- Tool: Get Excel Sheet Count: Get the number of sheets in an Excel workbook.
- Argument:
filepath- Path to the Excel workbook.
- Argument:
- Tool: Get Excel Row Count: Get the number of rows in a sheet.
- Arguments:
filepath- Path to the Excel workbook.sheetName- Name of the sheet.
- Arguments:
- Tool: Get Excel Column Count: Get the number of columns in a sheet.
- Arguments:
filepath- Path to the Excel workbook.sheetName- Name of the sheet.
- Arguments:
Word Features
- Tool: Create Word Document: Create a new Word document.
- Argument:
filepath- Path to create the new Word document.
- Argument:
- Tool: Add Text to Word Document: Add text to a Word document.
- Arguments:
filepath- Path to the Word document.text- Text to add.
- Arguments:
PowerPoint Features
- Tool: Create PowerPoint Presentation: Create a new PowerPoint presentation.
- Argument:
filepath- Path to create the new PowerPoint presentation.
- Argument:
- Tool: Add Slide to PowerPoint: Add a new slide to a PowerPoint presentation.
- Argument:
filepath- Path to the PowerPoint presentation.
- Argument:
- Tool: Add Text to PowerPoint Slide: Add text to a specific slide in a PowerPoint presentation.
- Arguments:
filepath- Path to the PowerPoint presentation.slideIndex- Slide index (0-based).text- Text to add.
- Arguments:
- Tool: Read Slide Titles from PowerPoint: Read titles from all slides in a PowerPoint presentation.
- Argument:
filepath- Path to the PowerPoint presentation.
- Argument:
- Tool: Get PowerPoint Slide Count: Get the number of slides in a PowerPoint presentation.
- Argument:
filepath- Path to the PowerPoint presentation.
- Argument:
How to Debug and Run Standalone
To run the Office MCP Server, follow these steps:
-
Build the application: Ensure you have Maven installed. Run the following command to build the project:
$ ./mvnw clean package -
Run the application: After building, execute the following command to start the server:
$ java -jar target/office-mcp-server-0.0.1-SNAPSHOT-runner.jar -
Access the application: The server will start on the default port
8080. You can access the APIs at:http://localhost:8080 -
Run in development mode: For development purposes, you can use Quarkus's dev mode:
$ ./mvnw quarkus:dev
Configuration
The application can be configured using the application.properties file located in the src/main/resources directory. Key configuration options include:
quarkus.mcp.server.sse.root-path: Set the SSE root path.
Testing
To run the tests, use the following command:
$ ./mvnw test
Installing the MCP Server
Configuring the MCP server with VS Code
Here are the steps to configure in VS Code:
- Install GitHub Copilot
- Install this MCP Server using the command palette:
MCP: Add Server... - Configure GitHub Copilot to run in
Agentmode, by clicking on the arrow at the bottom of the the chat window - On top of the chat window, you should see the
office-mcp-serverserver configured as a tool
Configuring the MCP server with Claude Desktop
Claude Desktop makes it easy to configure and chat with the MCP server. If you want a more advanced usage, we recommend using VS Code (see next section).
You need to add the server to your claude_desktop_config.json file. Please note that you need to point to the location
where you downloaded the office-mcp-server-0.0.1-SNAPSHOT-runner.jar file.
{
"mcpServers": {
"office-mcp-server": {
"command": "java",
"args": [
"-jar",
"~/Downloads/office-mcp-server-0.0.1-SNAPSHOT-runner.jar"
]
}
}
}
License
This project is licensed under the MIT License. See the LICENSE file for details.
Support
This project is provided as-is without any warranty. If you encounter issues or have questions, please open an issue on the GitHub repository.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.