From 0f7f00404df4157adbd2983bdfd6e1ab82530447 Mon Sep 17 00:00:00 2001 From: admin Date: Sun, 19 Jul 2026 14:16:40 -0700 Subject: [PATCH] feat(mcpo): add config.json to source control with powerautomate, ms365 fixes - Pin ms365 to 0.129.0 with --discovery flag (fixes MCPO schema parse error) - Add powerautomate entry (PA_MCP_CLIENT_ID placeholder - needs Azure app reg) - Update authentik token (was expired) - teams-mcp-auth volume now source of truth for ms365/teams auth cache - powerautomate-auth volume wired for future PA auth cache NOTE: config.json was previously managed manually on disk only. This commit brings it under GitOps control. --- mcpo/config.json | 185 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 mcpo/config.json diff --git a/mcpo/config.json b/mcpo/config.json new file mode 100644 index 0000000..0c71a48 --- /dev/null +++ b/mcpo/config.json @@ -0,0 +1,185 @@ +{ + "mcpServers": { + "filesystem": { + "command": "npx", + "args": [ + "-y", + "@modelcontextprotocol/server-filesystem", + "/mcpo_data/filesystem" + ] + }, + "memory": { + "command": "npx", + "args": [ + "-y", + "@modelcontextprotocol/server-memory" + ] + }, + "proxmox-nuck7-1": { + "command": "sh", + "args": [ + "-c", + "LOG_LEVEL=silent npx -y --package @bldg-7/proxmox-mcp@1.2.1 --package pino-pretty proxmox-mcp 2>/dev/null" + ], + "env": { + "PROXMOX_HOST": "192.168.4.11", + "PROXMOX_PORT": "8006", + "PROXMOX_USER": "MCP@pve", + "PROXMOX_TOKEN_NAME": "MCP", + "PROXMOX_TOKEN_VALUE": "2052990e-749f-43f6-be7f-c9ad206281cc", + "PROXMOX_SSL_MODE": "insecure", + "PROXMOX_ALLOW_ELEVATED": "true", + "PROXMOX_SSH_ENABLED": "true", + "PROXMOX_SSH_HOST": "192.168.4.11", + "PROXMOX_SSH_PORT": "22", + "PROXMOX_SSH_USER": "root", + "PROXMOX_SSH_KEY_PATH": "/app/ssh_keys/nuc-cluster", + "PROXMOX_SSH_NODE": "nuck7-1", + "PROXMOX_ALLOW_UNSAFE_COMMANDS": "true" + } + }, + "proxmox-nuck7-2": { + "command": "sh", + "args": [ + "-c", + "LOG_LEVEL=silent npx -y --package @bldg-7/proxmox-mcp@1.2.1 --package pino-pretty proxmox-mcp 2>/dev/null" + ], + "env": { + "PROXMOX_HOST": "192.168.4.12", + "PROXMOX_PORT": "8006", + "PROXMOX_USER": "MCP@pve", + "PROXMOX_TOKEN_NAME": "MCP", + "PROXMOX_TOKEN_VALUE": "2052990e-749f-43f6-be7f-c9ad206281cc", + "PROXMOX_SSL_MODE": "insecure", + "PROXMOX_ALLOW_ELEVATED": "true", + "PROXMOX_SSH_ENABLED": "true", + "PROXMOX_SSH_HOST": "192.168.4.12", + "PROXMOX_SSH_PORT": "22", + "PROXMOX_SSH_USER": "root", + "PROXMOX_SSH_KEY_PATH": "/app/ssh_keys/nuc-cluster", + "PROXMOX_SSH_NODE": "nuck7-2", + "PROXMOX_ALLOW_UNSAFE_COMMANDS": "true" + } + }, + "proxmox-nuck7-3": { + "command": "sh", + "args": [ + "-c", + "LOG_LEVEL=silent npx -y --package @bldg-7/proxmox-mcp@1.2.1 --package pino-pretty proxmox-mcp 2>/dev/null" + ], + "env": { + "PROXMOX_HOST": "192.168.4.13", + "PROXMOX_PORT": "8006", + "PROXMOX_USER": "MCP@pve", + "PROXMOX_TOKEN_NAME": "MCP", + "PROXMOX_TOKEN_VALUE": "2052990e-749f-43f6-be7f-c9ad206281cc", + "PROXMOX_SSL_MODE": "insecure", + "PROXMOX_ALLOW_ELEVATED": "true", + "PROXMOX_SSH_ENABLED": "true", + "PROXMOX_SSH_HOST": "192.168.4.13", + "PROXMOX_SSH_PORT": "22", + "PROXMOX_SSH_USER": "root", + "PROXMOX_SSH_KEY_PATH": "/app/ssh_keys/nuc-cluster", + "PROXMOX_SSH_NODE": "nuck7-3", + "PROXMOX_ALLOW_UNSAFE_COMMANDS": "true" + } + }, + "homeassistant": { + "command": "npx", + "args": [ + "-y", + "mcp-remote", + "https://home.bryanmail.net/mcp_server/sse", + "--header", + "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIxNzhmYzI0NjA2Y2I0ZTg4ODI1N2VmMzdiZTNhY2E5YSIsImlhdCI6MTc3NDY4MzAxNiwiZXhwIjoyMDkwMDQzMDE2fQ.32kY2LVHzKZHWLc96T6z2P-8beNTnp2DHRUf2UEie2w" + ] + }, + "teams": { + "command": "npx", + "args": [ + "-y", + "@floriscornel/teams-mcp@latest" + ], + "env": { + "TEAMS_MCP_READ_ONLY": "true", + "HOME": "/app/teams-mcp-auth" + } + }, + "ms365": { + "command": "npx", + "args": [ + "-y", + "@softeria/ms-365-mcp-server@0.129.0", + "--preset", + "personal", + "--read-only", + "--discovery" + ], + "env": { + "HOME": "/app/teams-mcp-auth", + "MS365_MCP_CLIENT_ID": "14d82eec-204b-4c2f-b7e8-296a70dab67e", + "MS365_MCP_TOKEN_CACHE_PATH": "/app/teams-mcp-auth/.teams-mcp-token-cache.json", + "SILENT": "true" + } + }, + "unifi-network": { + "command": "uvx", + "args": [ + "unifi-network-mcp@latest" + ], + "env": { + "UNIFI_HOST": "192.168.4.1", + "UNIFI_USERNAME": "unifi-mcp", + "UNIFI_PASSWORD": "3dHOEOMygTYeX3", + "UNIFI_PORT": "443", + "UNIFI_VERIFY_SSL": "false", + "UV_CACHE_DIR": "/app/uv-cache" + } + }, + "authentik": { + "command": "uvx", + "args": [ + "authentik-diag-mcp", + "--base-url", + "https://auth.bryanmail.net", + "--token", + "LAm3lBTumOmsU8AiFQM2FmCZyoj8bTSR0FQnAcBy1QnTMEyU4oWozwdxTUap" + ] + }, + "gitea": { + "command": "/mcpo_data/gitea-mcp", + "args": [ + "-t", + "stdio" + ], + "env": { + "GITEA_HOST": "https://git.bryanmail.net", + "GITEA_ACCESS_TOKEN": "5aa3a554c001b1dbe5215cb8cb388112801930e9" + } + }, + "gitea-admin": { + "command": "/mcpo_data/gitea-mcp", + "args": [ + "-t", + "stdio" + ], + "env": { + "GITEA_HOST": "https://git.bryanmail.net", + "GITEA_ACCESS_TOKEN": "289225b0b8f1827242191874b2408db76af06321" + } + }, + "powerautomate": { + "command": "npx", + "args": [ + "-y", + "powerautomate-mcp@latest", + "--stdio" + ], + "env": { + "HOME": "/app/powerautomate-auth", + "PA_MCP_CLIENT_ID": "PLACEHOLDER_SET_AFTER_SETUP", + "PA_CONFIG_PATH": "/app/powerautomate-auth/config.json" + } + } + } +}