Canvas-MCP
Canvas App MCP Relay for GPT
Этот проект предоставляет локальный Canvas Authoring MCP Server от Microsoft как удалённую MCP-конечную точку, которую можно разместить на Render.
Архитектура
GPT / MCP client
|
| Streamable HTTP
v
Render: canvas-mcp-relay
|
| authenticated WebSocket
v
Your computer: local-bridge.js
|
| stdio
v
Microsoft.PowerApps.CanvasAuthoring.McpServer
|
v
Power Apps Studio coauthoring sessionRender не может напрямую редактировать ваше Canvas App, потому что процесс Microsoft Canvas Authoring MCP и сеанс Power Apps Studio работают на вашем компьютере. Поэтому локальный мост необходим во время разработки.
Related MCP server: OpenClaw MCP Proxy
1. Предварительные требования Power Apps
Откройте целевое Canvas App в Power Apps Studio.
Включите Settings -> Updates -> Coauthoring.
Держите вкладку Studio открытой во время работы.
Ваша учётная запись Microsoft должна иметь разрешение на редактирование приложения.
2. Локальные требования
Node.js 20+
.NET 10 SDK
dnxдоступен из .NET 10 SDK
Проверка:
node --version
dotnet --list-sdks
dnx --helpЛокальный мост запускает сервер Microsoft с помощью:
dnx Microsoft.PowerApps.CanvasAuthoring.McpServer --yes --prerelease --source https://api.nuget.org/v3/index.jsonДля обычного интерактивного процесса Canvas Authoring не требуется ни регистрация приложения Azure, ни секрет клиента.
3. Развёртывание на Render
Отправьте эту папку на GitHub, затем создайте Render Web Service из репозитория или используйте render.yaml.
Требуемые переменные окружения Render:
RELAY_TOKEN=<long-random-secret>
MCP_PUBLIC=false
BRIDGE_REQUEST_TIMEOUT_MS=120000Сгенерируйте токен локально, например:
openssl rand -hex 32После развёртывания ваши конечные точки будут выглядеть так:
https://YOUR-SERVICE.onrender.com/health
https://YOUR-SERVICE.onrender.com/mcp
wss://YOUR-SERVICE.onrender.com/bridge4. Запуск локального моста
На вашей машине разработки:
npm install
CANVAS_STUDIO_URL='PASTE_THE_FULL_POWER_APPS_STUDIO_URL_HERE' \
REMOTE_URL=wss://YOUR-SERVICE.onrender.com/bridge \
RELAY_TOKEN=YOUR_RENDER_RELAY_TOKEN \
npm run bridgeМост запускает сервер Microsoft Canvas MCP, при необходимости анализирует CANVAS_STUDIO_URL, подключается к сеансу совместного редактирования этого приложения, обнаруживает активные инструменты MCP и регистрирует их в Render. Интерфейс входа в Microsoft по-прежнему остаётся локальным для вашей машины.
Если вы предпочитаете подключиться позже через GPT, опустите CANVAS_STUDIO_URL; проксированный инструмент connect остаётся доступным.
Проверка:
curl -H "Authorization: Bearer YOUR_RENDER_RELAY_TOKEN" \
https://YOUR-SERVICE.onrender.com/statusВы должны увидеть такие инструменты, как connect, sync_canvas, compile_canvas, list_controls и list_data_sources.
5. Подключение Canvas App
Если вы указали CANVAS_STUDIO_URL при запуске моста, этот шаг выполняется автоматически. В противном случае, как только GPT увидит инструменты MCP, вызовите инструмент connect Canvas MCP со значениями из URL вашего Power Apps Studio:
environment_id: Default-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
app_id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
environment_category: prodПроцесс Microsoft MCP работает локально, поэтому интерактивная аутентификация Microsoft/Entra происходит на вашей машине. Предпочитайте обычный поток браузера/брокера.
6. Подключение GPT
Используйте эту MCP-конечную точку:
https://YOUR-SERVICE.onrender.com/mcpСервер принимает релейный токен либо как:
Authorization: Bearer <RELAY_TOKEN>или, для клиентов, которые не могут настроить заголовок Authorization:
https://YOUR-SERVICE.onrender.com/mcp?token=<RELAY_TOKEN>Параметр в строке запроса предоставлен для совместимости, но предпочтительнее использовать заголовок bearer, поскольку URL-адреса с большей вероятностью попадают в журналы/историю.
Важное ограничение ChatGPT
По состоянию на август 2026 года полные пользовательские действия MCP write/modify в ChatGPT доступны для рабочих пространств Business и Enterprise/Edu. Pro поддерживает только чтение/получение. Если ваш тарифный план ChatGPT не может вызывать инструменты записи, используйте ту же конечную точку Render MCP из приложения OpenAI API или другого полнофункционального MCP-клиента.
Безопасность
Сначала используйте DEV/копию Canvas App.
Не устанавливайте
MCP_PUBLIC=trueна развёртывании, доступном через интернет.Ротируйте
RELAY_TOKEN, если он был раскрыт.Держите один локальный мост подключённым к одному процессу разработки Canvas одновременно.
Держите вкладку Power Apps Studio открытой.
После
compile_canvasпроверьте изменение в Studio и повторно синхронизируйте, прежде чем считать его сохранённым.
Текущие ограничения предварительной версии Microsoft
Функция Canvas Authoring MCP всё ещё находится в предварительной версии. Известные классы проблем, о которых сообщалось в 2026 году, включают:
compile_canvas/sync_canvasиногда сообщают об успешной отправке, которая не сохранялась канонически.Проблемы с PCF-компонентами кода и Canvas Components.
Большой YAML экрана, достигающий лимита компиляции на файл.
Intel macOS (
osx-x64) в настоящее время не имеет поддерживаемого пакета среды выполнения Canvas Authoring MCP.Повторные запросы входа в Entra после перезапуска процесса Microsoft MCP.
Устранение неполадок
/status сообщает bridgeConnected: false
Запустите npm run bridge на вашей машине и убедитесь, что REMOTE_URL и RELAY_TOKEN указаны правильно.
dnx не найден
Установите .NET 10 SDK и перезапустите терминал.
Canvas MCP запускается, но инструменты не работают
Проверьте:
Power Apps Studio открыт.
Совместное редактирование включено.
Инструмент
connectбыл вызван с правильным идентификатором среды и идентификатором приложения.Вы прошли аутентификацию с учётной записью, которая может редактировать приложение.
Intel Mac
В текущем пакете предварительной версии Microsoft есть открытая проблема для osx-x64. Используйте Apple Silicon, Windows x64/ARM64 или Linux x64/ARM64, пока Microsoft не выпустит недостающую среду выполнения.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server to assist with JxBrowser development.
Remote MCP server for supportsheep: run AI interviews and manage support content for your blog.
MCP server for querying Forkast documentation
Collaborative whiteboard MCP server — create objects, connectors, C4 diagrams, and manage boards
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceA proxy server that allows LLM clients to use Databutton app API endpoints as tools through the MCP protocol over websockets.1MIT- FlicenseNot gradedqualityDmaintenanceExposes app-registered tools as an MCP server for OpenClaw, forwarding actual tool execution back to the app over a WebSocket bridge.-
- AlicenseNot gradedqualityCmaintenanceEnables browsers to act as MCP servers by relaying tools, resources, and prompts to AI agents via a WebSocket-to-stdio bridge.13MIT
- FlicenseNot gradedqualityBmaintenanceEnables remote desktop control with screen capture and mouse/keyboard simulation through an MCP server exposed via a WebSocket tunnel.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/BharathVyaas/Canvas-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server