remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
mcp-server-nacos: Nacos MCP 서버
개요
Nacos는 동적 서비스 검색, 구성 및 서비스 관리를 위해 설계된 사용하기 쉬운 플랫폼입니다. 클라우드 네이티브 애플리케이션과 마이크로서비스 플랫폼을 쉽게 구축할 수 있도록 지원합니다.
이 MCP(Model Context Protocol) 서버는 Nacos 상호작용 및 자동화를 위한 서버입니다. 이 서버는 대용량 언어 모델을 통해 Nacos 클러스터의 namespace
, service
및 configuration
관련 정보를 검색하고 읽을 수 있는 도구를 제공합니다.
mcp-server-nacos
현재 초기 개발 단계에 있습니다. 서버 개발 및 개선 과정에서 기능 및 사용 가능한 도구가 변경 및 확장될 수 있습니다. 또한, mcp-server-nacos
현재 버전에서는 읽기, 검색 및 목록 작업만 제공하며 쓰기 작업은 지원하지 않습니다. 쓰기 작업은 향후 버전에서 지원될 예정입니다.
이 mcp-server-nacos
필요한 버전에 대한 또 다른 참고 사항은 다음과 같습니다.
지엑스피1
도구
list_namespaces
- 현재 Nacos 클러스터의 네임스페이스 목록을 검색합니다.
- 입력:
- 없음
- 반환: 현재 Nacos 클러스터의 네임스페이스 목록입니다.
list_services
- 이 도구는 지정된 네임스페이스에 속한 서비스 목록을 검색합니다. 응답 형식은
withInstances
매개변수에 따라 달라집니다.withInstances=true
: 인스턴스(ServiceDetailInfo
객체)를 포함한 서비스 세부 정보를 반환합니다.withInstances=false
: 인스턴스(ServiceView
객체)를 제외한 서비스 메타데이터를 반환합니다. **참고:**withInstances=true
인 경우 API가 메모리와 네트워크를 너무 많이 사용할 수 있습니다. 서비스가 적거나 하나만 있는 인스턴스 목록만 가져오려면List Service Instances
와 함께withInstances=false
사용하는 것이 좋습니다. - 입력:
pageNo
(숫자): 현재 페이지 번호, 기본값은 1입니다.pageSize
(숫자): 각 페이지의 서비스 크기, 기본값은 100입니다.namespaceId
(문자열, 선택 사항): 서비스의 namespaceId, 기본값은 누락된 경우public
입니다.groupNameParam
(문자열, 선택 사항): 서비스의 groupName 패턴, 기본값은 null이며 누락된 경우 모든 그룹을 의미합니다.serviceNameParam
(문자열, 선택 사항): 서비스의 serviceName 패턴, 기본값은 null로, 누락된 경우 모든 서비스를 의미합니다.ignoreEmptyService
(bool, 선택 사항): 결과에서 빈 서비스를 무시할지 여부, 기본값은 true입니다.withInstances
(bool, 선택 사항): 결과에 각 서비스 아래에 인스턴스를 포함하는지 여부, 권장 사항 및 기본값은 false입니다.
- 반환: 지정된 네임스페이스에 속한 서비스 목록입니다.
- 이 도구는 지정된 네임스페이스에 속한 서비스 목록을 검색합니다. 응답 형식은
get_service
- 이 도구는 인스턴스 목록을 제외한 메타데이터와 클러스터를 포함한 지정된 서비스의 자세한 정보를 검색합니다.
- 입력:
namespaceId
(문자열, 선택 사항): 서비스의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열, 선택 사항): 서비스의 groupName 패턴, 누락된 경우 기본값은DEFAULT_GROUP
입니다.serviceName
(문자열): 서비스의 serviceName 패턴, 필수입니다.
- 반환: 지정된 서비스에 대한 자세한 정보.
list_service_instances
- 이 도구는 지정된 서비스에 대한 인스턴스 목록을 검색합니다.
- 입력:
namespaceId
(문자열, 선택 사항): 서비스의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열, 선택 사항): 서비스의 groupName 패턴, 누락된 경우 기본값은DEFAULT_GROUP
입니다.serviceName
(문자열): 서비스의 serviceName 패턴, 필수입니다.clusterName
(문자열, 선택 사항): 서비스의 인스턴스 클러스터 이름입니다. 선택 사항이며 기본값은 null로 모든 클러스터와 일치함을 의미합니다.
- 반환: 지정된 서비스에 대한 인스턴스 목록입니다.
list_service_subscribers
- 이 도구는 지정된 서비스의 구독자 목록을 검색합니다.
- 입력:
pageNo
(숫자): 현재 페이지 번호, 기본값은 1입니다.pageSize
(숫자): 각 페이지의 서비스 구독자 크기, 기본값은 100입니다.namespaceId
(문자열, 선택 사항): 서비스의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열, 선택 사항): 서비스의 groupName 패턴, 누락된 경우 기본값은DEFAULT_GROUP
입니다.serviceName
(문자열): 서비스의 serviceName 패턴, 필수입니다.aggregation
(bool, 선택 사항): 전체 클러스터에서 집계할지 여부입니다.
- 반환: 지정된 서비스의 구독자 목록입니다.
list_configs
- 이 도구는 지정된 네임스페이스 아래의 구성 목록을 검색합니다.
- 입력:
pageNo
(숫자): 현재 페이지 번호, 기본값은 1입니다.pageSize
(숫자): 각 페이지의 구성 크기, 기본값은 100입니다.namespaceId
(문자열, 선택 사항): config의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열, 선택 사항): config의 groupName 패턴, 기본값 null은 모든 그룹을 의미합니다.dataId
(문자열, 선택 사항): config의 dataId 패턴, 기본값 null은 모든 dataId를 의미합니다.type
(문자열, 선택 사항): 구성의 유형, 기본값 null은 모든 유형을 의미합니다.configTags
(문자열, 선택 사항): config의 태그, 기본값은 null로 모든 태그를 의미합니다.appName
(문자열, 선택 사항): configs의 appName, 기본값은 null이면 모든 appName을 의미합니다.search
(문자열, 선택 사항): 목록 구성의 검색 방법, 기본값은blur
이고 선택 사항 값은accurate
.
- 반환: 지정된 네임스페이스 아래의 구성 목록입니다.
get_config
- 지정된 구성의 세부 정보를 검색합니다.
- 입력:
namespaceId
(문자열, 선택 사항): config의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열): config의 groupName, 필수.dataId
(문자열): config의 dataId, 필수.
- 반환: 지정된 구성의 세부 정보.
list_config_history
- 이 도구는 구성의 전체 게시 기록을 검색합니다.
- 입력:
pageNo
(숫자): 현재 페이지 번호, 기본값은 1입니다.pageSize
(숫자): 각 페이지의 구성 기록 레코드 크기입니다. 기본값은 100입니다.namespaceId
(문자열, 선택 사항): config의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열): config의 groupName, 필수.dataId
(문자열): config의 dataId, 필수.
- 반환: 지정된 네임스페이스 아래의 구성 목록입니다.
get_config_history
- 구성의 특정 과거 변경 기록을 검색합니다.
- 입력:
namespaceId
(문자열, 선택 사항): config의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열): config의 groupName, 필수.dataId
(문자열): config의 dataId, 필수.nid
(숫자): 구성 기록 레코드의 실제 ID, 구성 기록 도구 목록에서 가져오기,id
필드.
- 반환: 구성의 과거 변경 기록.
list_config_listeners
- 특정 구성을 구독한 리스너 목록을 검색합니다.
- 입력:
namespaceId
(문자열, 선택 사항): config의 namespaceId, 기본값은 누락된 경우public
입니다.groupName
(문자열): config의 groupName, 필수.dataId
(문자열): config의 dataId, 필수.aggregation
(bool, 선택 사항): 전체 클러스터에서 집계할지 여부입니다.
- 반환: 특정 구성을 구독한 리스너 목록입니다.
list_listened_configs
- 특정 클라이언트 IP 주소가 구독한 구성 목록을 검색합니다.
- 입력:
namespaceId
(문자열, 선택 사항): config의 namespaceId, 기본값은 누락된 경우public
입니다.ip
(문자열): 구성 리스너의 클라이언트 IP, 필수.aggregation
(bool, 선택 사항): 전체 클러스터에서 집계할지 여부입니다.
- 반환: 특정 클라이언트 IP 주소가 구독한 구성을 나열합니다.
설치
uv 사용(권장)
uv
사용하면 별도의 설치가 필요하지 않습니다. uvx
사용하여 mcp-server-nacos를 직접 실행합니다.
PIP 사용
또는 pip를 통해 mcp-server-nacos
설치할 수 있습니다.
설치 후 다음을 사용하여 스크립트로 실행할 수 있습니다.
구성
Claude Desktop과 함께 사용
claude_desktop_config.json
에 다음을 추가하세요:
command
필드에uvx
실행 파일의 전체 경로를 입력해야 할 수도 있습니다. MacOS/Linux에서는which uvx
, Windows에서는where uvx
실행하여 경로를 확인할 수 있습니다.
개발
지역 개발을 진행 중이라면 다음 단계를 따르세요.
- 이 저장소를 로컬 환경에 복제합니다.
- 원하는 기능을 구현하려면
src/mcp_server_nacos
의 코드를 수정하세요. - Claude 데스크톱 앱을 사용하여 테스트해 보세요. claude_desktop_config.json 파일에 다음을 추가하세요.
특허
mcp-server-nacos는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 즉, Apache 2.0 라이선스의 조건에 따라 소프트웨어를 자유롭게 사용, 수정 및 배포할 수 있습니다. 자세한 내용은 프로젝트 저장소의 LICENSE
파일을 참조하세요.
You must be authenticated.
대규모 언어 모델을 통해 Nacos 서비스 검색 및 구성 관리와의 상호작용을 가능하게 하는 서버로, 네임스페이스, 서비스 및 구성에 대한 읽기 전용 액세스를 제공합니다.