MCP servers for Microsoft Office — Excel, Outlook, PowerPoint, Word. Local-first, governed, developer-controlled.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add office-excel --env EXCEL_ALLOWLIST_ROOTS='<EXCEL_ALLOWLIST_ROOTS>' --env PPT_ALLOWLIST_ROOTS='<PPT_ALLOWLIST_ROOTS>' --env WORD_ALLOWLIST_ROOTS='<WORD_ALLOWLIST_ROOTS>' -- uvx mcp-office~/.codex/config.toml
[mcp_servers.office-excel]
command = "uvx"
args = ["mcp-office"]
env = { EXCEL_ALLOWLIST_ROOTS = "<EXCEL_ALLOWLIST_ROOTS>", PPT_ALLOWLIST_ROOTS = "<PPT_ALLOWLIST_ROOTS>", WORD_ALLOWLIST_ROOTS = "<WORD_ALLOWLIST_ROOTS>" }
# codex mcp add office-excel --env EXCEL_ALLOWLIST_ROOTS='<EXCEL_ALLOWLIST_ROOTS>' --env PPT_ALLOWLIST_ROOTS='<PPT_ALLOWLIST_ROOTS>' --env WORD_ALLOWLIST_ROOTS='<WORD_ALLOWLIST_ROOTS>' -- uvx mcp-office~/.cursor/mcp.json
{
"mcpServers": {
"office-excel": {
"command": "uvx",
"args": [
"mcp-office"
],
"env": {
"EXCEL_ALLOWLIST_ROOTS": "<EXCEL_ALLOWLIST_ROOTS>",
"PPT_ALLOWLIST_ROOTS": "<PPT_ALLOWLIST_ROOTS>",
"WORD_ALLOWLIST_ROOTS": "<WORD_ALLOWLIST_ROOTS>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"office-excel": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-office"
],
"env": {
"EXCEL_ALLOWLIST_ROOTS": "<EXCEL_ALLOWLIST_ROOTS>",
"PPT_ALLOWLIST_ROOTS": "<PPT_ALLOWLIST_ROOTS>",
"WORD_ALLOWLIST_ROOTS": "<WORD_ALLOWLIST_ROOTS>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"office-excel": {
"command": "uvx",
"args": [
"mcp-office"
],
"env": {
"EXCEL_ALLOWLIST_ROOTS": "<EXCEL_ALLOWLIST_ROOTS>",
"PPT_ALLOWLIST_ROOTS": "<PPT_ALLOWLIST_ROOTS>",
"WORD_ALLOWLIST_ROOTS": "<WORD_ALLOWLIST_ROOTS>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"office-excel": {
"command": "uvx",
"args": [
"mcp-office"
],
"env": {
"EXCEL_ALLOWLIST_ROOTS": "<EXCEL_ALLOWLIST_ROOTS>",
"PPT_ALLOWLIST_ROOTS": "<PPT_ALLOWLIST_ROOTS>",
"WORD_ALLOWLIST_ROOTS": "<WORD_ALLOWLIST_ROOTS>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"office-excel": {
"command": "uvx",
"args": [
"mcp-office"
],
"env": {
"EXCEL_ALLOWLIST_ROOTS": "<EXCEL_ALLOWLIST_ROOTS>",
"PPT_ALLOWLIST_ROOTS": "<PPT_ALLOWLIST_ROOTS>",
"WORD_ALLOWLIST_ROOTS": "<WORD_ALLOWLIST_ROOTS>"
}
}
}
}Environment variables
EXCEL_ALLOWLIST_ROOTSPPT_ALLOWLIST_ROOTSWORD_ALLOWLIST_ROOTS
Replace the placeholders with your own credentials and keep them out of version control.