mcp-toolbox

AI Agent FrameworksCLIGo

★ 16,374주당 +67조회 4

무엇인가

이 저장소는 데이터베이스 접근을 MCP 도구로 노출하는 서버 실행 파일과, 그 도구를 정의하는 설정 스키마를 함께 배포한다. 에이전트 코드 안에 SQL 클라이언트와 자격 증명 처리를 넣는 대신, 별도 프로세스가 데이터베이스 연결을 소유하고 MCP 클라이언트는 도구 이름과 인자만 주고받는다. 위치상으로는 MCP 클라이언트와 데이터베이스 사이의 데이터 접근 계층이다.

어떻게 동작하나

동작은 tools.yaml 한 파일을 중심으로 한다. sources 절이 접속할 데이터 소스를, tools 절이 에이전트가 호출할 동작과 파라미터를, toolsets 절이 함께 로드할 도구 묶음을 정의한다. prompts, resources, resourceTemplates 절은 LLM 상호작용용 프롬프트와 MCP 클라이언트가 조회할 읽기 전용 콘텐츠를 담는다. 서버는 --config tools.yaml로 이 파일을 읽고, --prebuilt=<데이터베이스> 플래그를 주면 설정 없이 해당 데이터베이스용 범용 도구를 로드한다. --prebuilt=postgres/data처럼 슬래시를 붙이면 특정 도구 묶음만 올린다. 연결 풀링, IAM 인증, OpenTelemetry 기반 메트릭과 트레이싱은 서버가 직접 처리한다.

무엇과 다른가

같은 역할을 하는 대안은 에이전트 프레임워크마다 DB 커넥터를 직접 작성하는 방식이다. 그 경우 접속 정보, 풀 관리, 권한 제한이 애플리케이션 코드에 흩어진다. Toolbox는 이 부분을 서버 프로세스 밖으로 빼내고, 구조화된 쿼리와 제한된 접근 범위를 설정 파일에서 선언하게 한다. 데이터베이스 하나에 연결만 열어 주는 단순 MCP 서버와 달리 소스·도구·도구 묶음을 분리해 여러 데이터베이스와 여러 에이전트 구성을 한 서버에서 관리한다. Google Cloud 관리형 MCP 서버와 달리 직접 실행하고 설정을 소유한다.

어떻게 쓰나

쓰는 방법은 두 갈래다. IDE나 CLI를 붙일 때는 클라이언트의 MCP 설정 파일(mcp.json 또는 claude_desktop_config.json)에 서버 실행 항목을 추가하고 접속용 환경 변수를 채운 뒤 --prebuilt 플래그로 실행한다. 애플리케이션에 넣을 때는 Toolbox SDK로 ADK, LangChain, LlamaIndex, 또는 자체 에이전트에서 도구를 호출한다. 서버 자체는 Docker 이미지나 바이너리로 실행한다.

전제와 한계

지원 범위는 Google Cloud 쪽 AlloyDB, BigQuery, Cloud SQL(PostgreSQL·MySQL·SQL Server), Spanner, Firestore, Knowledge Catalog와 그 외 PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, MongoDB, Redis, Elasticsearch, CockroachDB, ClickHouse, Couchbase, Neo4j, Snowflake, Trino 등이다. 커스텀 도구를 쓰려면 tools.yaml을 작성해야 하고, 범용 도구만 쓸 때도 데이터베이스별 환경 변수로 자격 증명을 넘겨야 한다. 저장소 이름이 genai-toolbox에서 mcp-toolbox로 바뀌어 기존 원격 주소를 갱신해야 한다.

관련 논문 1

유사 도구