{
  "markdown": "# Ncloud 공공존(Gov) MCP Server\n\n**한국어** | [English](README.en.md)\n\n[![CI](https://github.com/sjk4425/ncloud-gov-mcp-server/actions/workflows/ci.yml/badge.svg)](https://github.com/sjk4425/ncloud-gov-mcp-server/actions/workflows/ci.yml)\n[![npm](https://img.shields.io/npm/v/ncloud-gov-mcp-server?logo=npm&color=cb3837)](https://www.npmjs.com/package/ncloud-gov-mcp-server)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n![Node.js](https://img.shields.io/badge/Node.js-20%2B-brightgreen?logo=node.js&logoColor=white)\n![TypeScript](https://img.shields.io/badge/TypeScript-5.x-3178C6?logo=typescript&logoColor=white)\n\n[Naver Cloud Platform 공공존(Government Cloud)](https://www.gov-ncloud.com) 인프라를 AI 클라이언트에서 자연어로 생성·조회·관리하는 MCP(Model Context Protocol) 서버입니다.\n\n민간존용 [ncloud-mcp-server](https://github.com/sjk4425/ncloud-mcp-server) 를 기반으로 파생한 **공공존 전용** 프로젝트로, API Gateway 도메인이 `*.apigw.gov-ntruss.com` 을 사용하도록 구성되어 있습니다. 현재 **13개 그룹 · 약 877개 도구**를 제공합니다.\n\n## 지원 서비스\n\n| 그룹 (`key`) | 서비스 |\n|------|--------|\n| **common** | Region / Zone (always on) |\n| **compute** | Server, Block Storage, Public IP, Login Key, Init Script, Placement Group, Auto Scaling, ACG, Network Interface, Cloud Functions |\n| **network** | VPC, Network ACL, NAT Gateway, Route Table, VPC Peering, Load Balancer, Target Group, Global DNS, Global Traffic Manager |\n| **database** | Cloud DB for MySQL / PostgreSQL / MSSQL / MongoDB / Redis(Cache) |\n| **containers** | Container Registry (NCR), Kubernetes Service (NKS) |\n| **storage** | NAS, Object Storage (S3 호환), Archive Storage (OpenStack Swift) |\n| **devtools** | Source Commit, Source Build, Source Deploy, Source Pipeline |\n| **security** | Certificate Manager, Private CA, Security Monitoring, KMS (v2.0) |\n| **analytics** | Cloud Hadoop, Search Engine Service, Cloud Data Streaming Service, Cloud Log Analytics |\n| **cdn** | CDN+, Global CDN |\n| **media** | VOD Station, One-Click Multi DRM |\n| **governance** | Sub Account, Activity Tracer, Cloud Insight, Resource Manager, WMS |\n| **billing** | List Price, Cost and Usage, Discount (요금·비용·할인 조회) |\n\n> 일부 서비스는 관리·모니터링 중심으로 핵심 엔드포인트만 우선 제공합니다(예: VOD Station, Sub Account IAM 전체 범위).\n\n## 요구 사항\n\n- Node.js 20 이상\n- 공공존 콘솔([console.gov-ncloud.com](https://console.gov-ncloud.com))에서 발급한 **API 인증키**(Access Key / Secret Key)\n\n## 설치 & 실행\n\n### 방법 1: npx (권장 - 별도 설치 없이 실행)\n\nnpm에 배포된 패키지를 clone·빌드 없이 바로 실행합니다.\n\n```bash\nnpx -y ncloud-gov-mcp-server\n```\n\n### 방법 2: 로컬 빌드 (소스에서 직접)\n\n```bash\ngit clone https://github.com/sjk4425/ncloud-gov-mcp-server.git\ncd ncloud-gov-mcp-server\nnpm install\nnpm run build   # dist/ 생성 (prepare 훅으로 install 시 자동 실행)\n```\n\n## MCP 클라이언트 설정 예시\n\n### npx 방식\n\n```json\n{\n  \"mcpServers\": {\n    \"ncloud-gov\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ncloud-gov-mcp-server\"],\n      \"env\": {\n        \"NCLOUD_ACCESS_KEY\": \"your-gov-access-key\",\n        \"NCLOUD_SECRET_KEY\": \"your-gov-secret-key\",\n        \"NCLOUD_REGION\": \"KR\"\n      }\n    }\n  }\n}\n```\n\n### 로컬 빌드 방식\n\n```json\n{\n  \"mcpServers\": {\n    \"ncloud-gov\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/Ncloud-GOV/dist/index.js\"],\n      \"env\": {\n        \"NCLOUD_ACCESS_KEY\": \"your-gov-access-key\",\n        \"NCLOUD_SECRET_KEY\": \"your-gov-secret-key\",\n        \"NCLOUD_REGION\": \"KR\"\n      }\n    }\n  }\n}\n```\n\n## 도구 그룹 선택 & 동적 로딩\n\n`NCLOUD_TOOL_GROUPS` 환경 변수로 로딩할 그룹을 제어합니다. 모든 도구를 한꺼번에 올리면 컨텍스트가 커지므로, 필요한 그룹만 선택하거나 런타임에 확장할 수 있습니다.\n\n| 설정값 | 동작 |\n|--------|------|\n| (미설정) | **전체 ON** — 13개 그룹 877개 도구 모두 등록 |\n| `compute,network` | 지정한 그룹 + `common` 만 등록 (**잠금** — 런타임 변경 불가) |\n| `all,-database` | 전체에서 특정 그룹 제외. 제외된 그룹은 런타임 활성화도 **차단** |\n| `dynamic` | 코어 세트(`common` + `compute` + `network` + `database`)만 시작 + **런타임 확장 허용** |\n\n### 동적 그룹 (`dynamic`)\n\n`NCLOUD_TOOL_GROUPS=dynamic` 으로 켜면 두 개의 메타 도구가 노출됩니다:\n\n- **`ncloud_list_tool_groups`** — 그룹 목록·서비스·도구 수·상태(enabled / available / blocked) 조회\n- **`ncloud_enable_tool_group`** — 원하는 그룹을 세션 중 즉시 로딩 (예: 스토리지 작업 요청 시 `storage` 그룹 활성화)\n\n시작 시에는 코어 그룹만 올려 도구 수를 줄이고, AI가 필요한 서비스를 만나면 해당 그룹만 켜서 컨텍스트를 절약합니다. 그룹 활성화 시 발생하는 다량의 `tools/list_changed` 통지는 1회로 합쳐 전송됩니다.\n\n> 보안 경계: `-database` 처럼 운영자가 명시적으로 제외한 그룹은 `dynamic` 모드에서도 런타임 활성화가 거부됩니다.\n\n## 환경 변수\n\n| 변수 | 필수 | 기본값 | 설명 |\n|------|:----:|--------|------|\n| `NCLOUD_ACCESS_KEY` | ✅ | — | 공공존 API Access Key |\n| `NCLOUD_SECRET_KEY` | ✅ | — | 공공존 API Secret Key |\n| `NCLOUD_REGION` | | `KR` | 리전 코드 (`KR` 수도권 / `KRS` 남부권) |\n| `NCLOUD_API_URL` | | `https://ncloud.apigw.gov-ntruss.com` | 기본 API Gateway 도메인 |\n| `NCLOUD_TOOL_GROUPS` | | (전체 ON) | 로딩할 그룹. `dynamic` = 코어 세트 + 런타임 확장 (위 표 참고) |\n| `NCLOUD_ARCHIVE_PROJECT_ID` | | — | Archive Storage 사용 시 필수 (Keystone project_id). 두 값이 모두 있어야 Archive 도구 등록 |\n| `NCLOUD_ARCHIVE_DOMAIN_ID` | | — | Archive Storage 사용 시 필수 (Keystone domain_id) |\n| `NCLOUD_LANG` | | `ko` | 에러 메시지 언어 (`en` 지정 시 영문) |\n| `NCLOUD_TIMEOUT_MS` | | `30000` | API 요청 타임아웃(ms) |\n\n전체 목록은 [.env.example](.env.example) 참고.\n\n## 공공존과 민간존의 차이\n\n- **도메인**: 대부분의 API Gateway 엔드포인트가 `*.apigw.gov-ntruss.com` 을 사용합니다 (민간존은 `*.apigw.ntruss.com`).\n- **인증 방식**: HMAC-SHA256 서명(`x-ncp-apigw-signature-v2` 등)으로 민간존과 **동일**합니다.\n- **도메인 예외(기계적 치환 불가)**: 일부 서비스는 gov에서 다른 도메인/경로를 씁니다. 반드시 [공공존 API 문서](https://api-gov.ncloud-docs.com/docs)로 확인:\n  - Container Registry: `gov-ncr.apigw.gov-ntruss.com` (경로 `/ncr/{kr|krs}/v2/`)\n  - Object Storage: `{kr|krs}.object.gov-ncloudstorage.com` (S3 호환 · AWS SigV4 · 서명 리전 `gov-standard`/`gov2-standard`)\n  - Archive Storage: `kr.archive.gov-ncloudstorage.com` (OpenStack Swift · Keystone v3)\n  - Private CA: `privateca.apigw.gov-ntruss.com` (민간존 `pca` 아님)\n  - KMS v2.0: `ocapi.gov-ncloud.com` (apigw 게이트웨이 아님)\n  - VOD Station: `vod-station.apigw.gov-ntruss.com` (하이픈)\n  - NKS / Search Engine / Cloud Data Streaming: 남부권(KRS)은 경로 prefix가 다름 (`krs-v2` 등)\n- **제공 서비스**: 공공존은 격리망 특성상 일부 서비스만 제공됩니다. 서비스 추가 전 공공존 API 문서에서 제공 여부를 확인하세요.\n\n## 검증 상태\n\n- **빌드 & 등록**: `tsc` 빌드 + 단위 테스트 통과. MCP 프로토콜 스모크 테스트로 13개 그룹 877개 도구 등록·중복 없음·동적 활성화 동작 확인.\n- **실 API 호출**: 공공존 계정으로 각 서비스 엔드포인트를 실제 호출한 검증은 미완료 항목이 있습니다.\n\n## 라이선스\n\nMIT\n",
  "bytes": 6018,
  "sha": "054781ba757ab0fe7d2b176fad4c25b32da37c331883ac07f11372434ea1e1fb",
  "repo_slug": "sjk4425/ncloud-gov-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_sjk4425_ncloud_gov_aaba8ddc/readme"
}