ClickHouse MCP 서버
ClickHouse용 MCP 서버.
특징
도구
run_select_query
- ClickHouse 클러스터에서 SQL 쿼리를 실행합니다.
- 입력:
sql
(문자열): 실행할 SQL 쿼리. - 모든 ClickHouse 쿼리는 안전을 보장하기 위해
readonly = 1
로 실행됩니다.
list_databases
- ClickHouse 클러스터에 있는 모든 데이터베이스를 나열합니다.
list_tables
- 데이터베이스의 모든 테이블을 나열합니다.
- 입력:
database
(문자열): 데이터베이스의 이름입니다.
구성
- 다음 위치에 있는 Claude Desktop 구성 파일을 엽니다.
- macOS의 경우:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows의 경우:
%APPDATA%/Claude/claude_desktop_config.json
- macOS의 경우:
- 다음을 추가합니다.
지엑스피1
환경 변수를 업데이트하여 사용자의 ClickHouse 서비스를 가리키도록 합니다.
또는 ClickHouse SQL Playground 에서 시도해 보려면 다음 구성을 사용할 수 있습니다.
uv
명령 항목을 찾아uv
실행 파일의 절대 경로로 바꾸세요. 이렇게 하면 서버를 시작할 때 올바른 버전의uv
사용됩니다. Mac에서는which uv
사용하여 이 경로를 찾을 수 있습니다.- 변경 사항을 적용하려면 Claude Desktop을 다시 시작하세요.
개발
test-services
디렉토리에서docker compose up -d
실행하여 ClickHouse 클러스터를 시작합니다.- 저장소 루트에 있는
.env
파일에 다음 변수를 추가합니다.
참고: 이 컨텍스트에서 default
사용자를 사용하는 것은 로컬 개발 목적으로만 사용됩니다.
uv sync
실행하여 종속성을 설치하세요.uv
설치하려면 여기의 지침을 따르세요. 그런 다음source .venv/bin/activate
실행하세요.- 간편하게 테스트하려면
mcp dev mcp_clickhouse/mcp_server.py
실행하여 MCP 서버를 시작할 수 있습니다.
환경 변수
다음 환경 변수는 ClickHouse 연결을 구성하는 데 사용됩니다.
필수 변수
CLICKHOUSE_HOST
: ClickHouse 서버의 호스트 이름CLICKHOUSE_USER
: 인증을 위한 사용자 이름CLICKHOUSE_PASSWORD
: 인증을 위한 비밀번호
[!주의] MCP 데이터베이스 사용자는 데이터베이스에 연결하는 외부 클라이언트와 동일하게 취급하고, 운영에 필요한 최소한의 권한만 부여해야 합니다. 기본 사용자나 관리자 권한은 절대 사용하지 마십시오.
선택 변수
CLICKHOUSE_PORT
: ClickHouse 서버의 포트 번호- 기본값: HTTPS가 활성화된 경우
8443
, 비활성화된 경우8123
- 비표준 포트를 사용하지 않는 한 일반적으로 설정할 필요가 없습니다.
- 기본값: HTTPS가 활성화된 경우
CLICKHOUSE_SECURE
: HTTPS 연결 활성화/비활성화- 기본값:
"true"
- 보안되지 않은 연결의 경우
"false"
로 설정
- 기본값:
CLICKHOUSE_VERIFY
: SSL 인증서 검증 활성화/비활성화- 기본값:
"true"
- 인증서 검증을 비활성화하려면
"false"
로 설정합니다(프로덕션에는 권장하지 않음).
- 기본값:
CLICKHOUSE_CONNECT_TIMEOUT
: 연결 시간 초과(초)- 기본값:
"30"
- 연결 시간 초과가 발생하면 이 값을 늘리십시오.
- 기본값:
CLICKHOUSE_SEND_RECEIVE_TIMEOUT
: 송수신 시간 초과(초)- 기본값:
"300"
- 장기 실행 쿼리의 경우 이 값을 늘리십시오.
- 기본값:
CLICKHOUSE_DATABASE
: 사용할 기본 데이터베이스- 기본값: 없음(서버 기본값 사용)
- 특정 데이터베이스에 자동으로 연결하려면 이것을 설정하세요.
구성 예
Docker를 사용한 로컬 개발의 경우:
ClickHouse Cloud의 경우:
ClickHouse SQL Playground의 경우:
다음 변수는 환경, .env
파일 또는 Claude Desktop 구성에서 설정할 수 있습니다.
테스트 실행
YouTube 개요
You must be authenticated.
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.
스키마 검사 및 쿼리 기능을 갖춘 ClickHouse 데이터베이스 통합
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server for ClickHouse.Last updated -33PythonApache 2.0
- -securityAlicense-qualityA Model Context Protocol server that enables Large Language Models to seamlessly interact with ClickHouse databases, supporting resource listing, schema retrieval, and query execution.Last updated -1PythonMIT License
- -securityAlicense-qualityAn MCP server implementation that enables Claude AI to interact with Clickhouse databases. Features include secure database connections, query execution, read-only mode support, and multi-query capabilities.Last updated -PythonMIT License
- -security-license-qualityA Model Context Protocol server that enables AI assistants to securely interact with ClickHouse databases, supporting table exploration and SQL query execution through a controlled interface.Last updated -6PythonApache 2.0