Aiven

공식

Aiven 프로젝트를 탐색하고 PostgreSQL®, Apache Kafka®, ClickHouse® 및 OpenSearch® 서비스와 상호작용하세요.

Aiven MCP(으)로 무엇을 할 수 있나요?

  • Aiven 프로젝트 목록 및 확인aiven_project_listaiven_project_get을 사용하여 프로젝트를 탐색하고 세부 정보를 확인합니다.
  • Aiven 서비스 관리aiven_service_create, aiven_service_update, aiven_service_get을 사용하여 서비스를 생성, 업데이트 또는 검색합니다.
  • Kafka 토픽 및 커넥터 작업 — 토픽을 나열, 생성, 업데이트, 삭제하고, 메시지를 생성/소비하며, Kafka Connect 커넥터를 관리합니다.
  • PostgreSQL 서비스에서 SQL 실행aiven_pg_read로 읽기 전용 쿼리를 실행하거나 aiven_pg_write로 쓰기 문을 실행합니다.
  • 애플리케이션 배포 및 재배포aiven_application_deployaiven_application_redeploy를 사용하여 Aiven에서 Docker화된 앱을 관리합니다.
  • Aiven 문서 검색aiven_docs_search(호스팅 서버 전용)를 통해 자연어로 공식 문서를 질의합니다.

문서

Aiven MCP 서버

Model Context Protocol (MCP) 서버로, Aiven 클라우드 데이터 플랫폼을 위한 것입니다.

Claude, Cursor, VS Code Copilot과 같은 AI 어시스턴트에서 직접 PostgreSQL, Apache Kafka, 애플리케이션 및 기타 Aiven 서비스를 관리하세요.

[!WARNING] 주의해서 사용하세요. 이 MCP 서버는 사용자를 대신하여 Aiven 서비스와 데이터를 생성, 수정, 삭제할 수 있습니다. AI 에이전트는 프롬프트 해석에 따라 파괴적인 작업(데이터베이스 삭제, 서비스 삭제, 메시지 생성)을 실행할 수 있습니다. 이 도구를 통해 수행되는 모든 작업에 대한 책임은 전적으로 사용자에게 있습니다.

권한: 액세스는 인증된 계정과 연결된 Aiven 사용자 권한에 의해 관리됩니다. MCP 서버는 Aiven 사용자에게 허용된 작업만 수행할 수 있습니다.

AI 에이전트 보안: AI 에이전트가 사용자를 대신하여 작업하려면 액세스 자격 증명(데이터베이스 연결 문자열, 스트리밍 토큰)이 필요할 수 있습니다. 특히 프로덕션 환경에서는 에이전트가 수행하는 작업을 검토하세요. 조직의 보안 정책을 따르고 AI 에이전트에 민감한 리소스에 대한 액세스 권한을 부여하기 전에 위험 평가를 수행하세요.

빠른 시작

옵션 1: 원격 (Aiven에서 호스팅)

MCP 서버는 https://mcp.aiven.live/mcp에서 호스팅됩니다. MCP 클라이언트가 Aiven에서 인증하라는 메시지를 표시합니다.

Claude Code

claude mcp add --scope user --transport http aiven-mcp "https://mcp.aiven.live/mcp"

Cursor

Install MCP Server

또는 Cursor MCP 설정에 수동으로 추가하세요:

{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp"
    }
  }
}

VS Code / Copilot

작업 영역의 .vscode/mcp.json에 추가하세요:

{
  "servers": {
    "aiven-mcp": {
      "type": "http",
      "url": "https://mcp.aiven.live/mcp"
    }
  }
}

읽기 전용 모드 (원격)

URL에 ?read_only=true을 추가하여 읽기 전용 모드를 활성화하세요. 모든 쓰기 작업이 MCP에서 제외됩니다:

{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp?read_only=true"
    }
  }
}

범위 지정 도구 (원격)

URL에 ?services_scope=을 추가하여 AI 에이전트에 노출되는 도구 범위를 줄이세요. Aiven 서비스의 일부만 사용하고 에이전트의 컨텍스트를 집중시키려는 경우에 유용합니다. 값을 쉼표로 결합하세요. core (프로젝트/서비스 검색)은 항상 암시적으로 포함됩니다.

유효한 범위: all, core, pg, kafka, application, integrations. all을 사용하여 모든 도구를 명시적으로 로드하세요 (매개변수를 생략하는 것과 동일). all은 다른 범위와 결합할 수 없습니다.

{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp?services_scope=kafka"
    }
  }
}

read_only과 결합할 수도 있습니다:

https://mcp.aiven.live/mcp?services_scope=pg&read_only=true

읽기 전용 모드에서 쓰기 예외 (원격)

read_only=true인 경우, ?write_allowlist=을 추가하여 특정 쓰기 도구를 다시 활성화하고 나머지는 읽기 전용으로 유지하세요. 대부분 읽기 액세스가 필요하지만 Kafka 주제 생성과 같은 하나의 쓰기 작업을 허용해야 하는 경우에 유용합니다. 여러 도구 이름을 쉼표로 결합하세요. read_only이 활성화되지 않은 경우 무시됩니다.

https://mcp.aiven.live/mcp?read_only=true&write_allowlist=aiven_kafka_topic_create

마켓플레이스 고객 (원격)

클라우드 마켓플레이스를 통해 Aiven을 구독한 경우, 올바른 콘솔을 사용하여 로그인하도록 마켓플레이스를 경로 세그먼트로 추가하세요:

마켓플레이스경로 세그먼트
AWS 마켓플레이스https://mcp.aiven.live/mcp/aws
Azure 마켓플레이스https://mcp.aiven.live/mcp/azure
Google Cloud 마켓플레이스https://mcp.aiven.live/mcp/gcp
{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp/<marketplace>"
    }
  }
}

경로 세그먼트는 위의 쿼리 매개변수와 결합됩니다 (예: https://mcp.aiven.live/mcp/gcp?services_scope=pg&read_only=true).

옵션 2: stdio (로컬)

MCP 클라이언트의 자식 프로세스로 서버를 로컬에서 실행합니다. Node.js 18 이상이 필요합니다.

AIVEN_TOKEN 환경 변수를 통해 Aiven API 토큰을 제공해야 합니다. 여기에서 토큰을 생성하세요.

Claude Code

claude mcp add --scope user aiven-mcp -e AIVEN_TOKEN=your-token-here -- npx -y mcp-aiven

Cursor, VS Code -- MCP 클라이언트 구성에 추가하세요:

{
  "mcpServers": {
    "aiven-mcp": {
      "command": "npx",
      "args": ["-y", "mcp-aiven"],
      "env": {
        "AIVEN_TOKEN": "your-token-here"
      }
    }
  }
}

구성 파일 위치:

  • Cursor: Cursor 설정 > MCP 서버
  • VS Code: 작업 영역의 .vscode/mcp.json

옵션 3: 로컬 개발

서버의 로컬 빌드를 실행합니다 (개발 및 테스트에 유용):

pnpm install && pnpm generate:api-types && pnpm generate && pnpm build && AIVEN_TOKEN="<YOUR_TOKEN>" MCP_TRANSPORT="http" PORT=3000 node dist/index.js

서버는 기본적으로 포트 3000에서 수신 대기합니다. MCP 클라이언트를 http://localhost:3000/mcp에 연결하세요.

원격 배포가 사용자 지정 호스트(예: 로컬 빌드)를 가리키도록 하려면 MCP_HOST을 설정하세요:

MCP_HOST=http://localhost:3000 node dist/index.js

환경 변수

변수필수기본값설명
AIVEN_TOKENstdio만 해당--Aiven API 토큰 (여기에서 생성하세요)
AIVEN_READ_ONLY아니요false읽기 전용 도구만 노출하려면 true로 설정하세요
AIVEN_SERVICES_SCOPE아니요--노출할 범위를 쉼표로 구분하여 지정합니다 (예: kafka, pg,kafka 또는 all). 유효한 값: all, core, pg, kafka, application, integrations. core은 항상 포함됩니다. 변수를 생략하거나 all로 설정하면 모든 도구가 로드됩니다.
AIVEN_ALLOW_SECRETS아니요falseaiven_service_connection_info 도구를 노출하려면 true로 설정하세요. 이 도구는 라이브 자격 증명(비밀번호, 연결 URI, 인증서)을 대화에 반환합니다. AIVEN_READ_ONLY=true인 동안에는 비활성화됩니다.
AIVEN_WRITE_ALLOWLIST아니요--AIVEN_READ_ONLY=true인 동안 다시 활성화할 도구 이름을 쉼표로 구분하여 지정합니다 (예: aiven_kafka_topic_create). 읽기 전용 모드가 활성화되지 않은 경우 무시됩니다.
MCP_HOST아니요https://mcp.aiven.liveOAuth 보호 리소스 호스트를 재정의합니다
MCP_TRANSPORT아니요stdiostdio 대신 HTTP 서버를 시작하려면 http로 설정하세요
MCP_HTTP_RATE_LIMIT_MAX아니요1000POST /mcp (HTTP 전송)에서 베어러 토큰당 창당 최대 요청 수입니다. 클라이언트 IP 속도 제한은 Cloudflare에서 적용됩니다.
MCP_HTTP_RATE_LIMIT_WINDOW_MS아니요60000MCP_HTTP_RATE_LIMIT_MAX의 창 길이(밀리초)입니다.
EXTRA_PROTECTION아니요falseHTTP 배포에서 GET /health을 제외한 모든 요청에 유효한 X-Edge-Auth 헤더를 요구하려면 true로 설정하세요. 아래의 에지 보호 롤아웃을 참조하세요.
MCP_EDGE_AUTH_SECRETEXTRA_PROTECTION=true인 경우--공유 비밀; Cloudflare가 변환 규칙을 통해 X-Edge-Auth로 주입하는 값과 일치해야 합니다.

원격(HTTP) 모드에서는 AIVEN_TOKEN이 필요하지 않습니다. MCP 클라이언트가 각 요청과 함께 토큰을 베어러 토큰으로 전송합니다.

프로덕션 HTTP 트래픽은 두 계층에서 속도가 제한됩니다. Cloudflare는 클라이언트 IP당 제한(Cloudflare 대시보드에서 구성)을 적용하고, 이 서버는 POST /mcp에서 베어러 토큰당 MCP_HTTP_RATE_LIMIT_*을 적용합니다.

에지 보호 롤아웃

EXTRA_PROTECTION=true인 경우, MCP_EDGE_AUTH_SECRET과 Cloudflare가 X-Edge-Auth로 주입하는 값이 일치하지 않으면 모든 요청이 403을 반환합니다 (GET /health 제외). 두 값은 연결의 반대편에 있는 환경/구성이므로, 유일한 복구 경로는 비밀을 수정하고 재배포하거나 Cloudflare를 업데이트하는 것입니다.

다음 순서로 활성화하세요:

  1. Cloudflare 변환 규칙 — MCP 오리진으로 향하는 트래픽에 X-Edge-Auth (및 PG 도구에 사용되는 경우 X-Client-IP)을 설정하는 규칙을 추가하세요. 구성한 비밀 값을 기록해 두세요.
  2. MCP_EDGE_AUTH_SECRET — 변환 규칙과 동일한 비밀로 이 환경 변수를 설정하여 서버를 배포하세요. 지금은 EXTRA_PROTECTION를 설정하지 않거나 false로 두고, 오리진이 여전히 트래픽을 수락하는지 확인하세요.
  3. EXTRA_PROTECTION=true — 1~2단계가 적용되고 일치하는 경우에만 활성화하세요. 일반 MCP 요청이 성공하고 X-Edge-Auth 없이 직접 오리진에 액세스하는 것이 거부되는지 확인하세요.
  4. 비밀 순환 — Cloudflare와 MCP_EDGE_AUTH_SECRET을 함께 업데이트하거나 (또는 잠시 EXTRA_PROTECTION=false로 설정), 재배포한 다음 다시 활성화하세요. 플래그가 켜져 있는 동안에는 절대 한쪽만 순환하지 마세요.

시작 시 EXTRA_PROTECTION=true이고 MCP_EDGE_AUTH_SECRET이 누락된 경우, 프로세스가 즉시 오류와 함께 종료됩니다.

거부가 계속되는 동안 서버는 최대 15분에 한 번씩 잘못된 구성 경고를 기록하므로 (유효한 X-Edge-Auth이 있는 요청 후 재설정됨), 거부된 요청당 한 줄씩 기록하지 않고도 로그에서 비밀 불일치를 확인할 수 있습니다.

도구

핵심

도구설명
aiven_project_list프로젝트 나열
aiven_project_get프로젝트 세부 정보 가져오기
aiven_list_project_clouds프로젝트의 클라우드 플랫폼 나열
aiven_project_vpc_list프로젝트의 VPC 나열
aiven_service_list서비스 나열
aiven_service_type_plans클라우드 가용성이 포함된 플랜 나열
aiven_service_plan_pricing특정 클라우드의 플랜 가격 책정 가져오기
aiven_service_create서비스 생성
aiven_service_get서비스 정보 가져오기
aiven_service_update서비스 업데이트 (플랜, 구성, 전원 상태)
aiven_service_metrics_fetch관리형 데이터 서비스의 메트릭 가져오기
aiven_service_application_metrics_get애플리케이션 서비스의 메트릭 가져오기
aiven_project_get_service_logs서비스 로그 항목 가져오기
aiven_service_query_activity서비스의 현재 쿼리 가져오기
aiven_project_get_event_logs프로젝트 이벤트 로그 항목 가져오기

Kafka

도구설명
aiven_kafka_topic_listKafka 주제 나열
aiven_kafka_topic_createKafka 주제 생성
aiven_kafka_topic_getKafka 주제 정보 가져오기
aiven_kafka_topic_updateKafka 주제 업데이트
aiven_kafka_topic_deleteKafka 주제 삭제
aiven_kafka_topic_message_listKafka 주제에서 메시지 읽기
aiven_kafka_topic_message_produceKafka 주제로 메시지 생성
aiven_kafka_connect_available_connectors사용 가능한 커넥터 유형 나열
aiven_kafka_connect_list실행 중인 커넥터 나열
aiven_kafka_connect_create_connector커넥터 생성
aiven_kafka_connect_edit_connector커넥터 편집
aiven_kafka_connect_get_connector_status커넥터 상태 가져오기
aiven_kafka_connect_pause_connector커넥터 일시 중지
aiven_kafka_connect_resume_connector커넥터 다시 시작
aiven_kafka_connect_restart_connector커넥터 재시작
aiven_kafka_connect_delete_connector커넥터 삭제
aiven_kafka_schema_registry_subjects스키마 레지스트리 주제 나열
aiven_kafka_schema_registry_subject_version_get스키마 레지스트리 주제 버전 가져오기

PostgreSQL

도구설명
aiven_pg_service_available_extensions사용 가능한 확장 기능 나열
aiven_pg_service_query_statistics쿼리 통계 가져오기
aiven_pg_bouncer_createPgBouncer 연결 풀 생성
aiven_pg_bouncer_updatePgBouncer 연결 풀 업데이트
aiven_pg_bouncer_deletePgBouncer 연결 풀 삭제
aiven_pg_read읽기 전용 SQL 쿼리 실행
aiven_pg_write쓰기 SQL 문 실행 (INSERT, UPDATE, DELETE, CREATE TABLE 등)
aiven_pg_optimize_queryAI 기반 쿼리 최적화 (EverSQL)

애플리케이션

도구설명
aiven_application_deployDocker화된 애플리케이션을 Aiven에 배포
aiven_application_redeploy기존 애플리케이션 재빌드 및 재배포
aiven_vcs_integration_list연결된 VCS (GitHub) 계정 나열
aiven_vcs_integration_repository_listVCS 통합을 위한 리포지토리 나열

문서

도구설명
aiven_docs_search자연어로 공식 Aiven 문서를 검색합니다. 호스팅된 서버(https://mcp.aiven.live/mcp)에서만 사용할 수 있으며, 자체 호스팅 배포에서는 노출되지 않습니다.

기여

개발 설정, 로컬 실행 및 새 도구 추가에 대한 내용은 CONTRIBUTING.md를 참조하세요.

라이선스

Apache-2.0