formio-mcp — MCP-сервер для Claude Code: формы Form.io из агента
Подключает агент к Form.io: создаёт формы, ресурсы, действия, роли и проекты прямо из чата. Пригодится, когда формы и права живут в Form.io, а не в коде.
claude mcp add --env FORMIO_PROJECT_URL=<FORMIO_PROJECT_URL> --env FORMIO_BASE_URL=<FORMIO_BASE_URL> --env FORMIO_API_KEY=<FORMIO_API_KEY> --env FORMIO_LOGIN_FORM=<FORMIO_LOGIN_FORM> --env FORMIO_AUTH_HOST=<FORMIO_AUTH_HOST> --transport stdio mcp-server -- npx -y @formio/mcpЧто делает formio-mcp
Сервер @formio/mcp работает по stdio: клиент сам запускает процесс и держит его потоки ввода-вывода. Открывать порт не нужно, вручную ничего не стартует. Транспортов HTTP или SSE нет — единственный HTTP-слушатель это временная страница браузерного логина, и трафик MCP через неё не идёт.
Любому инструменту нужен проект Form.io. Источников три, и они перекрывают друг друга по узости: закоммиченный formio.json, маппинг каталога от инструмента project_set и переменная FORMIO_PROJECT_URL. FORMIO_BASE_URL обычно не требуется — базовый адрес выводится из вида адреса проекта, а спрашивают его только когда вывести не получается. Сервер поднимается и без настроек: клиент подключится и увидит список инструментов, а адрес проекта потребуется в момент вызова, server_status работает всегда.
В Docker образ formio/mcp тоже говорит по stdio, поэтому контейнер запускают с -i. Для непубличного развёртывания есть две ловушки. Приватное имя хоста внутри контейнера не разрешается — его прописывают через --add-host. И образ доверяет только стандартному набору CA: сертификат, которому доверяет ваша машина, внутри контейнера даст голое fetch failed. Для сертификата частного CA монтируют корневой сертификат и указывают NODE_EXTRA_CA_CERTS. А вот полностью самоподписанный сертификат так не лечится: Node требует, чтобы якорь доверия был CA, и отклонит цепочку с DEPTH_ZERO_SELF_SIGNED_CERT. Остаётся FORMIO_INSECURE_TLS=1 — только для локальной разработки, не для продакшена.
Какие задачи решает
- создать форму Form.io из описания в чате
- завести ресурс и роли под новый проект
- поправить действие формы без похода в веб-интерфейс
- переключить агента на другой проект Form.io
- проверить связь с Form.io перед работой
Примеры запросов агенту
- Создай в Form.io форму обратной связи с полями имя, почта и сообщение
- Добавь роль editor в текущий проект Form.io
- Покажи статус подключения к Form.io
Как установить formio-mcp
Командой платформы
claude mcp add --env FORMIO_PROJECT_URL=<FORMIO_PROJECT_URL> --env FORMIO_BASE_URL=<FORMIO_BASE_URL> --env FORMIO_API_KEY=<FORMIO_API_KEY> --env FORMIO_LOGIN_FORM=<FORMIO_LOGIN_FORM> --env FORMIO_AUTH_HOST=<FORMIO_AUTH_HOST> --transport stdio mcp-server -- npx -y @formio/mcpВместо <…> подставьте свои значения. Ещё 5 переменных окружения — в README сервера
Командой платформы
codex mcp add mcp-server --env FORMIO_PROJECT_URL=<FORMIO_PROJECT_URL> --env FORMIO_BASE_URL=<FORMIO_BASE_URL> --env FORMIO_API_KEY=<FORMIO_API_KEY> --env FORMIO_LOGIN_FORM=<FORMIO_LOGIN_FORM> --env FORMIO_AUTH_HOST=<FORMIO_AUTH_HOST> -- npx -y @formio/mcpВместо <…> подставьте свои значения. Ещё 5 переменных окружения — в README сервера
Файл настроек
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@formio/mcp"
],
"env": {
"FORMIO_PROJECT_URL": "<FORMIO_PROJECT_URL>",
"FORMIO_BASE_URL": "<FORMIO_BASE_URL>",
"FORMIO_API_KEY": "<FORMIO_API_KEY>",
"FORMIO_LOGIN_FORM": "<FORMIO_LOGIN_FORM>",
"FORMIO_AUTH_HOST": "<FORMIO_AUTH_HOST>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 5 переменных окружения — в README сервера
Файл настроек
{
"servers": {
"mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@formio/mcp"
],
"env": {
"FORMIO_PROJECT_URL": "<FORMIO_PROJECT_URL>",
"FORMIO_BASE_URL": "<FORMIO_BASE_URL>",
"FORMIO_API_KEY": "<FORMIO_API_KEY>",
"FORMIO_LOGIN_FORM": "<FORMIO_LOGIN_FORM>",
"FORMIO_AUTH_HOST": "<FORMIO_AUTH_HOST>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 5 переменных окружения — в README сервера
Командой платформы
gemini mcp add -e FORMIO_PROJECT_URL=<FORMIO_PROJECT_URL> -e FORMIO_BASE_URL=<FORMIO_BASE_URL> -e FORMIO_API_KEY=<FORMIO_API_KEY> -e FORMIO_LOGIN_FORM=<FORMIO_LOGIN_FORM> -e FORMIO_AUTH_HOST=<FORMIO_AUTH_HOST> mcp-server npx -y @formio/mcpВместо <…> подставьте свои значения. Ещё 5 переменных окружения — в README сервера
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о formio-mcp
Как установить formio-mcp в Claude Code?
Выполните claude mcp add formio-mcp -e FORMIO_API_KEY=<FORMIO_API_KEY> -- npx -y @formio/mcp. Ключ API подставьте свой.
Что делает formio-mcp?
Даёт агенту инструменты Form.io: создание и правка форм, ресурсов, действий, ролей и проектов. Работает по stdio, поэтому подходит любому MCP-клиенту.
Что нужно, чтобы сервер заработал?
Проект Form.io — из formio.json, маппинга project_set или переменной FORMIO_PROJECT_URL. Для входа без браузера удобнее FORMIO_API_KEY.