Skip to main content
Glama
mdegrasse

vcf-automation-mcp-server

by mdegrasse

vcf-automation-mcp

VCF Automation(이전 Aria Automation) REST API를 래핑한 MCP 서버로, 프로젝트, 카탈로그 항목, 배포를 MCP 도구로 노출하여 LLM 클라이언트가 프로비저닝된 인프라를 직접 탐색하고 관리할 수 있게 합니다.

이 프로젝트는 VCF Operations(vROps)를 래핑하는 vcf-ops-mcp와 대응되는 프로젝트입니다.

이 서버는 실제 인프라를 프로비저닝하고 삭제할 수 있습니다 (request_catalog_item, run_deployment_action/run_deployment_resource_action, delete_deployment). 베어러 토큰과 그 뒤에 있는 VCF Automation refresh token은 모니터링하는 환경 전체에서 VM을 생성하고 파괴할 수 있는 자격 증명과 동일한 수준으로 취급하십시오. 실제로 그런 자격 증명이기 때문입니다.

Setup

python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
cp .env.example .env   # then fill in your VCF Automation details

필수 구성(.env 또는 실제 환경 변수를 통해):

Variable

Description

VCFA_BASE_URL

VCF Automation 어플라이언스의 기본 URL(예: https://vcfa.example.com)

VCFA_REFRESH_TOKEN

UI에서 생성한 API 갱신 토큰(My Account > API Tokens)

VCFA_ORG

인증할 테넌트 org 이름입니다. 프로바이더("system") 수준으로 사용하려면 설정을 비워 둡니다. 프로바이더("system") 수준에서만 두십시오.

VCFA_TOKN_URL

고급 사용자용: 자동으로 계산된 OAuth 토큰 엔드포인트를 재정의합니다.

VCFA_VERIFY_SSL

자체 시그인된 b 인스턴스에 대헤 TLS 검즘을 하려면 하려면 false로 설정합니다

VCFA_TIMEOUT

요청 당 시간아웃(초 단위, 기본값 30)

VCFA_API_VERSION_IaaS

IAmount API용 ?apiVersion=(2021-07-15가 기본값)

VCFA_API_VERSION_CATE

Catalog API용 ?apiVersion=(2020-08-25가 기본값)

VCFA_API_VERSION_DEPLOYMENT

DepoDeployment용 ?apiVersion=(2020-08-25가 기본값)

refresh token 발급받기

VCF Operations(사용자 이름/비밀번호)와는 다리, VCF Automation은 UI에서 한 번 생성을 하는 장주의 API refresh token으로 인증합니다. 이 서버는 이 토큰을 사용자를 대신 단기간(대략 1시간) 유효한 베에러 access to큰으로 교환한 뒤, 투명하게 캐시하고 갱신합니다:

  1. 서버가 대신 작동하게 만들 org(테넌) 자격으로 VCF Automation UI에 로그인합니다.

  2. 오른쪽 위 상단의 사용자 이름을 크리하고 My Account > API Tokens > New > 률택합니다.

  3. 토큰 (token)을 이름 지정해 만든 후 VCFA_REFRESH_TOKEN에 복사합니다.

  4. VCFA_ORG를 해당 org의 이름(Provider Management Portal에 그 표시된 대신)로 설증합니다. 만약 토큰을 배포이더("시스템") 수준에서 생했다면 그대로 구성 하지 않아도 됩니다.

정확한 토큰 교환 경로(VCFA_TOKEN_URL)는 VCFA 배포 버전에 따라 덜 일정한 방식으로 문서화되어 있습니다. 이 Server는 기본적으로 /tm/oauth/tenant/<org>/token(테넌트) 또는 /oauth/provider/token(프로바이더)을 사용하며, 인스턴스의 실제 경로가 다르면 재정의할 수 있습니다.

서버 전송/인증 구성(역시 .env 또는 실제 환경 변수를 통해서):

Variable

Description

VCFA_MCP_TRANSPORT

streamable-http(기본값) 또는 stdio

VCFA_MCP_HOST

streamable-http를 위한 바인드 호스트(기본 127.0.0.1)

VCFA_MCP_PORT

streamable-http를 위한 바인드 포트(기본 8000)

VCFA_MCP_BEARER_TOKEN

streamable-http에서는 필수. 클라이언트는 Authorization: Bearer <value>를 보내야 함

VCFA_MCP_ALLOWED_HOSTS

DNS-리바인딩 보호를 위한, 쉼표로 구분된 Host 헤더 허용 목록

Related MCP server: AI Core MCP Server

실행

기본적으로 streamable-http에서 독립형 원격 서버로 실행되며 127.0.0.1:8000에 바인딩되고 모든 요청마다 베어러 토큰을 요구합니다:

export VCFA_MCP_BEARER_TOKEN="$(openssl rand -hex 32)"
vcf-automation-mcp
# or
python -m vcf_automation_mcp

GET /healthz는 인증 없이 접속할 수 있습니다(로드 밸런서/오케스트레이터의 활성 점검용). 그 외에는 전부 베어러 토큰이 필요합니다. 127.0.0.1은 로끽에서만 청취하며, 실제 다른 호스트에서 접근하려면 VCFA_MCP_HOST=0.0.0.0으로 바인딩하거나(또는 리버스 프록시) 뒤에서 실행하고, 네트워크와 자격이 있는 호스트 사이에서 인프라를 프로비저닝/삭제할 수 있는 자격 가진 그 사이의 유일한 관문이 베어러 토큰가 되도록 하십시오. 다른 시크릿트처럼 취급하고, 신할 수 없는 네트워크에서는 평문보다는 전방에 TLS 종단(예: 리버스 프록시)을 두는 것을 권장하다.

VCFA_MCP_HOST127.0.0.1/localhost가 아닐면, FastMCP 자신의 DNS-리바인딩 보호(들어오 청의 Host 헤더 검사)가 기본적으로 허용 목록(빈)을 갖지 않습니다. 자체적인 host에서는 그 헤스탑가 로록백을 위해 자동구성 되지만요. VCFA_MCP_ALLOWED_HOSTS를 설정되지 않았으면 Host-헤더 검사가 시햏되지 않고 베어러 토큰만 유일한 관문이 됩니다. 믿는 있음, 신할 수 있는 네트워크에서는 찬지만, 신할 수 없거나 공유 네트워크에서는 추가 보안을 위해실 제 클라인트가 접속하 는 호스트명(들)/IP:포트에 VCFA_MCP_ALLOWED_HOSTS를 (썸표-구분으로) 설정하십시오.

예를 들어 Claude Code에서 MCP 클라이언트를 streamable-http, 서버로 지정합니다:

claude mcp add --transport http vcf-automation http://<host>:8000/mcp \
  --header "Authorization: Bearer <your-token>"

stdio로 실행하기

로컬에서 MCP 클라이언트가 서버를 하위 프로세스로 직접 실행하는 경우(네트워크 노출 불필요) VCFA_MCP_TRANSPORT=stdio로 설정하면 됩니다. 이 모드에서는 베어러 토큰이 필요 없습니다. 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"
      }
    }
  }
}

도구들

Projects

  • list_projects — 프로비저닝된 리소스에 대한 가시성/격리 경계

  • get_project — 단일 프로젝트에 대한 전체 상세 정보

Catalog

  • list_catalog_items — 요청 가능한 청사진/템플릿 탐색(프로젝트 단위로도 가능)

  • get_catalog_item — 단일 카탈로그 항목의 전체 상세 정보

  • list_catalog_items_versions — 요청 가능한 카탈로그 항목의 배포(발행) 버전

  • request_catalog_item — 카탈로그 항목으로부터 새 배포를 프로비저닝

Deployments

  • list_deployments — 프로비저닝된 블루프린트/카탈로그 항목 인스턴스

  • get_deployment — 단일 배포에 대한 전체 상세 정보

  • list_deployment_resources — 배포 내 리소스(VM, 네트워크, 디스크 등)

  • get_deployment_resource — 배포 내 단일 리소스에 대한 전체 상세 정보

  • list_deployment_actions — 배포에서 사용 가능한 day-2 작업(예: ChangeLease)

  • list_deployment_resource_actions — 리소스에서 사용 가능한 day-2 작업(예: PowerOff)

  • run_deployment_action —배포에 day-2 작업을 실행

  • run_deployment_resource_action — 리소스에 day-2 작업을 실행

  • delete_deployment — 배포와 프로비저닝된 리소스들을 삭제

Requests

  • get_request — 비동기 요청(배포/day-2 작업)의 상태를 폴링

테스트

pip install -e ".[dev]"
pytest

테스트는 respx로 VCF Automation HTTP API를 모킹하므로 라이브 인스턴스가 필요 없다.

참고

  • mcp<2.0.0으로 고정(pinned)됨: MCP Python SDK의 2.x 계열에서 FastMCPMCPServer로 이름이 바뀌었고 mcp.server.mcpserver로 이동했다. 이 Project는 기존성이 검증된 1.x의 mcp.server.fastmcp.FastMCP API를 대상으로 한다.

  • VCF Automation REST API의 범위는 매우 넓다(클라우드 계정, 네트워킹, 정책, 온보딩, 블루프린트 등). 이 서버는 의도적으로 소비/day-2 경로(프로젝트, 카탈로그, 배포, 요청)만 다루고, 인프라 설정(클라우드 계정, 영역, 리전)은 다루지 않는다.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables natural language interaction with VMware SDDC Manager and vCenter APIs through MCP tools, allowing users to query workload domains, VMs, clusters, and more.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Exposes 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.
    10
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • Manage SRG+ hubs, channels, content, assets, users, and workspaces from any MCP-aware AI agent.

  • MCP Hub: AI service discovery, per-user OAuth, and multi-service workflow orchestration

View all MCP Connectors

Latest Blog Posts

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/mdegrasse/vcf-automation-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server