vcf-automation-mcp-server
vcf-automation-mcp
MCP-сервер, оборачивающий REST API VCF Automation (ранее Aria Automation) и предоставляющий проекты, элементы каталога и развертывания как MCP-инструменты, чтобы LLM-клиент мог напрямую просматривать и управлять подготовлнной инфраструктурой.
Это аналог vcf-ops-mcp, который вместо этого оборачивает в corresponde Operations (vROps).
Данный сервер может подготавливать и удалять реальную инфраструктуру (request_catalog_item, run_deployment_action/run_deployment_resource_action, delete_deployment). Относитесь к его bearer-токену и лежащему в основе refresh-токену VCF Automation так же, как к собernм учетным сетим, которые могут создавать и уничтожать виртуальные машины вс посто вашьей среде monitoring — потому что именно это они и есть.
Настройка
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
cp .env.example .env # then fill in your VCF Automation detailsТребуемая конфигурация (через .env или настоянie переменные окружения):
Переменная | Описание |
| Базовый URL устроева VCF Automation, например |
| API refresh-токен, созданнн inter. "My Account **"API Tokens" |
| Имя организации-тенна (tenant), от имени которой аутентиф. Оставьте не заполеннным уровене провадера ("system") |
| Для специилистов: переопределяет вычисленную OAuth ток-точку |
| Установите |
| Таймаут запроса в секундах (по умолчанию |
|
|
|
|
|
|
Получение refresh-токена
В отличие от VCF Operations (имя пользователя/пароль), VCF Automation аутентифицируется с помощью долгоживущего API refresh-токена, который вы один раз создаете в интересе. Этот сервер обменивает его на короткоживущие (примерно 1 час) bearer токенны доступа от вашего имени, прозрачно кэшируя и обновляя их:
Войдите в интерфейс VCF Automation как организация (tenant), от имени которой должен работать сервер.
Нажмите в правом верхнем углу на ваше имя пользователя > My Account > API Tokens > New.
Дайте токену имя и создайте его, затем скопируйте в
VCFA_REFRESH_TOKEN.Укажите в
VCFA_ORGимя этой организации (как показано в Provider Management Portal) либо оставьте егоне заданным, если создablished tokenы на уровне провайдера (system).
Точный путь обмена токеноm (VCFA_TOKEN_URL) документирован несовпадает по vерсиям VCF Automation; этот сервер по умолчанию использует /tm/oAuth/tenant/<org>/token (tenant) or /oauth/provider/token (provider) и позволяет переопределить его, если фактический путь в вашей среде (.env) отличается.
Конфигурация транспорта/аутентификации сервера (также через .env directвых переменных окружения):
Переменная | Описание |
|
|
| Адрес при явки для streamable-http ( по умолчанию |
| Порт/а доя streamable-http ( по умолчанию |
| Обязательное для streamable-http. Клиенты должны отправять |
| Список разрешенных Host-заголовков через заятые для защиты от DNS-rebinding |
Related MCP server: Foundry Agents MCP Server
Запуск
По умолччанию это работает как автономный удаленный сервер через streamable-http, привяззнный к 127.0.0.1:8000, требующий токен bearer на каждом запросе:
export VCFA_MCP_BEARER_TOKEN="$(openssl rand -hex 32)"
vcf-automation-mcp
# or
python -m vcf_automation_mcpGET /healthz не требует аутентификации (для проверки живых балансировщиком / оркестратором); все остальные требуют bearer-токена. 127.0.0.1 слушает только локально — чтобы достучаться с него с другого хоста, установите VCFA_MCP_HOST=0.0.0.0 (или поместите за обратным прокси) и убедитесь, что bearer-токен — единственное, что разделяет весть и ваши учётные данные, которые могут подготавливать и удалять инфраструктуру в вашей управляемой среде. Поэтому обращайтесь с ним как с любым другим секретом и предпочтите TLS-терминацию (например, через обратный прокси) перед чист HTTP на ненадежной сети.
Когда VCFA_MCP_HOST не равен 127.0.0.1/localhost, собственная защита FastMCP от DNS-rebinding (проверка заголовка Host во входящем запросе) по умолчанию не имеет ничего в списке разрешений — она автоматически конфигурируется только для loopback-хоста. В брошенном состоянии никакая проверка Host-заголовков не выполняется, и единственный барьер — ваше bearer-токен; это нормально на доверенной сети, но на общем/ненадежном снизите, укажите в VCFA_MCP_ALLOWED_HOSTS список имен/IP:портов (через запятую), через которые реально подключаются клиенты, для выites в глубину.
Подключите MCP-client к нему как к streamable-http-серверу, например в Claude Code:
claude mcp add --transport http vcf-automation http://<host>:8000/mcp \
--header "Authorization: Bearer <your-token>"Запуск через stdio
Для локального использования, когда MCP-клиент запускает сервер как дочехний процsocc neck сеть; (но не нуж) — усmanовите VCFA_MCP_TRANSPORT=stdio, bearer-токен в этом режиме не требуется. Пример конфига Claude Desktop:
{
"mcpServers": {
"vcf-automation": {
"command": "/absolute/path/to/.venv/bin/vcf-automation-mcp",
"env": {
"VCFA_MCP_TRANSPORT": "stdio",
"VCFA_BASE_URL": "https://vcfa.example.com",
"VCFA_REFRESH_TOKEN": "changeme",
"VCFA_ORG": "my-tenant-org"
}
}
}
}Tools
Проекты
list_projects— грани видимости/изоляции для подготовленной инфраструктурыget_project— полная информац about ододн проект
Каталог
list_catalog_items— список blueprints/шаблонов, доступых для запроса, по жеанию фильтр по проект"полная информац" for one item*
list_catalog_item_vers — опубликованные в actualные Versions item catalog, которые можно запроситьrequest_catаlog_item— подготявляет новое развертыван из элемент каталога
Развертывания
list_deployments— подготов upt в развертнутныез экземплрары blueprints/catalog itemget_deployment— полный данных of оном раз вернеlist_deployment_resources— ресурсы (виртуальные машины, сети, задачи и т.д.) inside развертыванияget_deployment_resource— детализвПо. данодного ресурсаlist_deployment_actions— доступній day-2 operations на в развертывании (например, ChangeLease)list_deployment_resource_a actions— accessing day-2 дей и на ресурсе (например, PоwerOff)run_deployment_action— выполняет day-2 действие развертыванияrun_deployment_resource_action— выполняет day-2 действие ресурсаdelete_deployment— уничтожает развертывания и его provisioned/resources.
Запросы
get_request— получить/s checks статус async-requests (развертывания/day-2)
Тестирование
pip install -e ".[dev]"
pytestТесты сммулируую HTTP API VC ф Autom withrespx — живом экземпляр не требу.
Примечания
Привякан к
mcp<2.0.0: в лиенной 2.x MCP Python SDKFastMCPпереименовал вMCPServerи перемещен вmcp.server.mcpserver. Этот The line target проекта на использующий стабильного Moreover...API VCF Automation REST большой (облачные полные учетные записи, networking, policies, onboarding, blueprints, etc); данного сервера намерonly покрывает не "consumption/day-2" полной: проекты, каталог, развертывания, запросы — но не как настройку инфраструктуры (cloud accounts, zones, regions).
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP-Native LLM Orchestration Agent
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables natural language interaction with VMware SDDC Manager and vCenter APIs through MCP tools, allowing users to query workload domains, VMs, clusters, and more.MIT
- AlicenseAqualityDmaintenanceExposes Azure AI Foundry agents, workflows, and AI Search vector-database capabilities as MCP tools, enabling natural language interaction with agents, semantic search, and index management.102MIT
- FlicenseNot gradedqualityBmaintenanceExposes VMware vROps resources, metrics, and alerts as MCP tools, allowing an LLM client to directly query monitored infrastructure.-

Planwrightofficial
AlicenseNot gradedqualityCmaintenanceEnables AI coding agents and humans to collaborate on local, evidence-driven planning by exposing MCP tools for plan listing and binding, workflow catalog/run operations, and task tracking with human-reviewed decisions.2AGPL 3.0