hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Terraform Cloud MCP 서버
AI 어시스턴트를 Terraform Cloud API와 통합하는 모델 컨텍스트 프로토콜(MCP) 서버로, 자연스러운 대화를 통해 인프라를 관리할 수 있습니다. Pydantic 모델을 기반으로 구축되고 도메인별 모듈을 기반으로 구성된 이 서버는 Claude, Claude Code CLI, Claude Desktop, Cursor, Copilot Studio 등 모든 MCP 지원 플랫폼과 호환됩니다.
특징
- 계정 관리 : 인증된 사용자 또는 서비스 계정에 대한 계정 세부 정보를 가져옵니다.
- 작업 공간 관리 : 작업 공간을 만들고, 읽고, 업데이트하고, 삭제하고, 잠금/잠금 해제합니다.
- 실행 관리 : 실행 생성, 실행 목록 작성, 실행 세부 정보 가져오기, 실행 적용/삭제/취소.
- 조직 관리 : 조직을 나열, 생성, 업데이트, 삭제하고 조직 권한을 확인합니다.
- 향후 기능 : 상태 관리, 변수 관리 등.
빠른 시작
필수 조건
- 파이썬 3.12+
- MCP(FastMCP 및 개발 도구 포함)
uv
패키지 관리자(권장) 또는pip
- Terraform Cloud API 토큰
설치
지엑스피1
Claude Environments에 추가
Claude Code CLI에 추가
Claude Desktop에 추가
claude_desktop_config.json
구성 파일을 만듭니다.
- 맥: ~/라이브러리/애플리케이션 지원/클로드/클로드_데스크탑_config.json
- 승리: %APPDATA%\Claude\claude_desktop_config.json
your_terraform_cloud_token
실제 Terraform Cloud API 토큰으로 바꾸세요.
기타 MCP 호환 플랫폼
Cursor, Copilot Studio, Glama 등 다른 플랫폼의 경우, 각 플랫폼별 MCP 서버 추가 지침을 따르세요. 대부분의 플랫폼에는 다음이 필요합니다.
- 서버를 시작하기 위한 서버 경로 또는 명령입니다.
- Terraform Cloud API 토큰에 대한 환경 변수입니다.
- 필요할 때 서버를 자동으로 시작하도록 구성합니다.
사용 가능한 도구
계정 도구
get_account_details()
: 인증된 사용자 또는 서비스 계정에 대한 계정 정보를 가져옵니다.
작업 공간 관리 도구
목록 및 검색
list_workspaces(organization, page_number, page_size, search)
: 작업 공간을 나열하고 필터링합니다.get_workspace_details(workspace_id, organization, workspace_name)
: 특정 작업 공간에 대한 자세한 정보를 가져옵니다.
생성 및 업데이트
create_workspace(organization, name, params)
: 선택적 매개변수를 사용하여 새 작업 공간을 만듭니다.update_workspace(organization, workspace_name, params)
: 기존 작업 공간의 구성을 업데이트합니다.
삭제
delete_workspace(organization, workspace_name)
: 작업공간과 모든 콘텐츠를 삭제합니다.safe_delete_workspace(organization, workspace_name)
: 작업 공간이 리소스를 관리하지 않는 경우에만 삭제합니다.
잠금 및 잠금 해제
lock_workspace(workspace_id, reason)
: 실행을 방지하기 위해 작업 공간을 잠급니다.unlock_workspace(workspace_id)
: 실행을 허용하기 위해 작업 공간의 잠금을 해제합니다.force_unlock_workspace(workspace_id)
: 다른 사용자가 잠근 작업 공간을 강제로 잠금 해제합니다.
데이터 보존
set_data_retention_policy(workspace_id, days)
: 데이터 보존 정책을 설정합니다.get_data_retention_policy(workspace_id)
: 현재 데이터 보존 정책을 가져옵니다.delete_data_retention_policy(workspace_id)
: 데이터 보존 정책을 삭제합니다.
실행 관리 도구
create_run(workspace_id, params)
: ID를 사용하여 작업 공간에 Terraform 실행을 만들고 대기열에 추가합니다.list_runs_in_workspace(workspace_id, ...)
: ID를 사용하여 특정 작업 공간에서 실행을 나열하고 필터링합니다.list_runs_in_organization(organization, ...)
: 조직 전체에서 실행을 나열하고 필터링합니다.get_run_details(run_id)
: 특정 실행에 대한 자세한 정보를 가져옵니다.apply_run(run_id, comment)
: 확인을 기다리며 실행을 적용합니다.discard_run(run_id, comment)
: 확인을 기다리는 실행을 취소합니다.cancel_run(run_id, comment)
: 현재 계획 중이거나 적용 중인 실행을 취소합니다.force_cancel_run(run_id, comment)
: 실행을 즉시 강제로 취소합니다.force_execute_run(run_id)
: 이전 실행을 취소하여 보류 중인 실행을 강제로 실행합니다.
조직 관리 도구
get_organization_details(organization)
: 특정 조직에 대한 자세한 정보를 가져옵니다.get_organization_entitlements(organization)
: 조직 기능에 대한 자격 집합을 표시합니다.list_organizations(page_number, page_size, query, query_email, query_name)
: 조직을 나열하고 필터링합니다.create_organization(name, email, params)
: 선택적 매개변수를 사용하여 새로운 조직을 만듭니다.update_organization(organization, params)
: 기존 조직의 설정을 업데이트합니다.delete_organization(organization)
: 조직과 모든 내용을 삭제합니다.
개발 가이드
코드 표준, Pydantic 패턴, 기여 워크플로를 포함한 자세한 개발 지침은 개발 문서를 참조하세요.
빠른 개발 설정
기본 개발 명령
코드 구성, 아키텍처, 개발 워크플로, 코드 품질 지침에 대한 자세한 내용은 docs/DEVELOPMENT.md 를 참조하세요.
선적 서류 비치
코드베이스에는 포괄적인 문서가 포함되어 있습니다.
- 코드 주석 : 구현 결정의 "이유"를 설명하는 데 중점을 둡니다.
- Docstring : 모든 공개 함수와 클래스에는 자세한 docstring이 포함됩니다.
- 예제 파일 :
docs/
디렉토리에는 각 도메인에 대한 자세한 예제가 포함되어 있습니다.docs/DEVELOPMENT.md
: 개발 표준 및 코딩 가이드라인docs/CONTRIBUTING.md
: 프로젝트 참여를 위한 지침docs/models/
: 모든 모델 유형에 대한 사용 예docs/tools/
: 각 도구에 대한 자세한 사용 예docs/conversations/
: API를 사용한 샘플 대화 흐름
문제 해결
- 서버 로그 확인(디버그 로깅은 기본적으로 활성화되어 있음)
- 디버깅을 위해 MCP Inspector( http://localhost:5173 )를 사용하세요.
- 디버그 로깅은 이미
server.py
에서 활성화되어 있습니다.Copy
기여하다
기여를 환영합니다! 이 프로젝트에 참여하고 싶으시다면 이슈를 개설하거나 풀 리퀘스트를 보내주세요.
시작하는 방법, 코드 품질 기준, 풀 리퀘스트 프로세스에 대한 자세한 지침은 기여 가이드를 참조하세요.
You must be authenticated.
Tools
Claude를 Terraform Cloud API와 통합하는 MCP(Model Context Protocol) 서버를 사용하면 Claude가 자연스러운 대화를 통해 Terraform 인프라를 관리할 수 있습니다.