Steampipe 모델 컨텍스트 프로토콜(MCP) 서버
Steampipe 로 AI 기반 인프라 분석의 잠재력을 최대한 활용하세요! 이 모델 컨텍스트 프로토콜 서버는 Claude와 같은 AI 어시스턴트를 클라우드 인프라 데이터에 원활하게 연결하여 전체 클라우드 자산에 대한 자연어 탐색 및 분석을 지원합니다.
Steampipe MCP는 AI 어시스턴트와 인프라 데이터를 연결하여 자연어를 지원합니다.
- AWS, Azure, GCP 및 100개 이상의 클라우드 서비스에 대한 쿼리
- 보안 및 규정 준수 분석
- 비용 및 자원 최적화
- 쿼리 개발 지원
로컬 Steampipe 설치와 Turbot Pipes 작업 공간 모두에서 작동하며 모든 클라우드 및 SaaS 데이터에 대한 안전하고 읽기 전용 액세스를 제공합니다.
설치
필수 조건
- Node.js v16 이상(
npx
포함) - 로컬 사용: Steampipe 설치 및 실행(
steampipe service start
) - Turbot Pipes의 경우: Turbot Pipes 작업 공간 및 연결 문자열
구성
AI 어시스턴트의 구성 파일에 Steampipe MCP를 추가합니다.
지엑스피1
기본적으로 이 명령은 postgresql://steampipe@localhost:9193/steampipe
에 있는 로컬 Steampipe 설치 서버에 연결됩니다. 먼저 steampipe service start
실행하세요.
대신 Turbot Pipes 작업 공간에 연결하려면 연결 문자열을 args에 추가하세요.
AI 어시스턴트 설정
어시스턴트 | 구성 파일 위치 | 설정 가이드 |
---|---|---|
클로드 데스크탑 | claude_desktop_config.json | Claude Desktop MCP 가이드 → |
커서 | ~/.cursor/mcp.json | 커서 MCP 가이드 → |
구성 파일을 저장하고 AI 어시스턴트를 다시 시작하여 변경 사항을 적용하세요.
프롬프팅 가이드
먼저, MCP 서버에 포함된 best_practices
프롬프트를 실행하여 LLM에게 Steampipe를 가장 잘 활용하는 방법을 알려주세요. 그런 다음, 무엇이든 질문하세요!
클라우드 인프라를 살펴보세요.
간단하고 구체적인 질문이 효과적입니다.
인프라 보고서 생성:
보안 분석에 대해 자세히 알아보세요.
규정 준수에 대한 통찰력을 얻으세요:
잠재적 위험을 살펴보세요.
기억하세요:
- 분석하려는 클라우드 리소스(EC2, S3, IAM 등)를 구체적으로 지정하세요.
- 특정 지역이나 계정에 관심이 있다면 언급하세요.
- 복잡한 조건을 추가하기 전에 간단한 쿼리로 시작하세요.
- 자연어 사용 - LLM이 SQL 번역을 처리합니다.
- 대담하고 탐구적이 되세요. LLM은 전체 인프라에 대한 통찰력을 발견하는 데 도움이 될 수 있습니다!
역량
도구
- 스팀파이프 쿼리
- SQL을 사용하여 클라우드 및 보안 로그를 쿼리합니다.
- 최상의 성능을 위해 조인 대신 CTE를 사용하고 요청되는 열을 제한하세요.
- 모든 쿼리는 읽기 전용이며 PostgreSQL 구문을 사용합니다.
- 입력:
sql
(문자열): PostgreSQL 구문을 사용하여 실행할 SQL 쿼리
- 스팀파이프 테이블 리스트
- 사용 가능한 Steampipe 테이블을 모두 나열하세요.
- 선택 입력:
schema
(문자열): 특정 스키마로 테이블 필터링 - 선택 입력:
filter
(문자열): ILIKE 패턴(예: 'ì2%')으로 테이블 필터링
- 스팀파이프 테이블쇼
- 열 정의, 데이터 유형, 설명을 포함하여 특정 테이블에 대한 자세한 정보를 가져옵니다.
- 입력:
name
(문자열): 세부 정보를 표시할 테이블의 이름(스키마로 정규화 가능, 예: 'aws_account' 또는 'aws.aws_account') - 선택 입력:
schema
(문자열): 테이블이 포함된 스키마
- 스팀파이프 플러그인 목록
- 시스템에 설치된 모든 Steampipe 플러그인을 나열합니다. 플러그인은 AWS, GCP, Azure 등 다양한 데이터 소스에 대한 액세스를 제공합니다.
- 입력 매개변수가 필요하지 않습니다
- 스팀파이프 플러그인 쇼
- 버전, 메모리 제한, 구성을 포함한 특정 Steampipe 플러그인 설치에 대한 세부 정보를 받아보세요.
- 입력:
name
(문자열): 세부 정보를 표시할 플러그인의 이름
프롬프트
- 모범 사례
- Steampipe 데이터 작업을 위한 모범 사례
- 다음에 대한 자세한 지침을 제공합니다.
- 응답 스타일 및 서식 규칙
- CTE(WITH 절) 사용 vs 조인 사용
- SQL 구문 및 스타일 규칙
- 컬럼 선택 및 최적화
- 스키마 탐색 및 이해
- 쿼리 구조 및 구성
- 성능 고려 사항 및 캐싱
- 오류 처리 및 문제 해결
자원
- 상태
- Steampipe 연결의 현재 상태를 나타냅니다.
- 속성에는 다음이 포함됩니다.
- connection_string: 현재 데이터베이스 연결 문자열
- 상태: 연결 상태(연결됨/연결 끊김)
이 리소스를 사용하면 AI 도구가 Steampipe 인스턴스에 대한 연결 상태를 확인하고 검증할 수 있습니다.
개발
복제 및 설정
- 저장소를 복제하고 디렉토리로 이동합니다.
- 종속성 설치:
- 프로젝트를 빌드하세요:
테스트
MCP를 지원하는 AI 도구로 로컬 개발 빌드를 테스트하려면 npm 패키지 대신 로컬 dist/index.js
사용하도록 MCP 구성을 업데이트하세요. 예:
또는 MCP Inspector를 사용하여 서버 구현을 검증합니다.
환경 변수
다음 환경 변수를 사용하여 MCP 서버를 구성할 수 있습니다.
STEAMPIPE_MCP_LOG_LEVEL
: 서버 로깅의 자세한 정도를 제어합니다(기본값:info
)STEAMPIPE_MCP_WORKSPACE_DATABASE
: 기본 Steampipe 연결 문자열을 재정의합니다(기본값:postgresql://steampipe@localhost:9193/steampipe
)
오픈 소스 및 기여
이 저장소는 Apache 2.0 라이선스 에 따라 게시됩니다. 행동 강령을 참조해 주세요. 여러분과 함께 협력할 수 있기를 기대합니다!
Steampipe 는 Turbot HQ, Inc. 에서 독점적으로 개발한 오픈 소스 소프트웨어 제품입니다. 당사의 상업적 조건에 따라 배포됩니다. 다른 사용자도 소프트웨어를 자체적으로 배포할 수 있지만, Turbot 상표, 클라우드 서비스 등은 사용할 수 없습니다. 자세한 내용은 오픈 소스 FAQ 에서 확인하실 수 있습니다.
참여하세요
도움을 주고 싶지만 어디서부터 시작해야 할지 모르겠나요? help wanted
문제 중 하나를 선택하세요.
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
스팀파이프-mcp
Related MCP Servers
- MIT License
- TypeScriptMIT License
- JavaScript
- PythonMIT License