Home
Login
googleapis/genai-toolbox

MCP Database Toolbox is an open-source MCP server designed to simplify database tool development, providing features like connection pooling and authentication.

Apache-2.0Go 1.4kgoogleapis Last Updated: 2025-06-12
https://github.com/googleapis/genai-toolbox

Genai-toolbox Project Introduction

Project Overview

MCP Toolbox for Databases is an open-source database server tool from Google, designed to simplify the development of Gen AI tools. This project enables developers to build AI agent tools that can access database data more easily, quickly, and securely.

Project Address: https://github.com/googleapis/genai-toolbox

Core Features and Characteristics

1. Simplified Development Process

  • Quick Integration: Integrate tools into agents with less than 10 lines of code.
  • Tool Reuse: Support reusing tools across multiple agents or frameworks.
  • Easy Deployment: Easier deployment of new versions of tools.

2. Performance Optimization

  • Connection Pool Management: Built-in connection pool mechanism to optimize database connection performance.
  • Best Practices: Integrates database access best practices.
  • Efficient Processing: Optimized data processing and query execution.

3. Enhanced Security

  • Integrated Authentication: Provides a more secure data access mechanism.
  • Secure Connections: Ensures the security of database connections.
  • Permission Control: Supports fine-grained access control.

4. End-to-End Observability

  • Built-in Monitoring: Provides out-of-the-box metrics and tracing capabilities.
  • OpenTelemetry Support: Built-in OpenTelemetry support for easy monitoring and debugging.
  • Full Traceability: Supports complete request tracing.

Architecture Design

The toolbox sits between the application's orchestration framework and the database, providing a control plane for modifying, distributing, or invoking tools. It simplifies tool management by providing a central location to store and update tools, allows tools to be shared between agents and applications, and allows these tools to be updated without having to redeploy the application.

Installation Methods

Binary Installation

# Check the release page for other versions
export VERSION=0.4.0
curl -O https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
chmod +x toolbox

Container Image

# Check the release page for other versions
export VERSION=0.4.0
docker pull us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION

Source Code Compilation

go install github.com/googleapis/genai-toolbox@v0.4.0

Usage Methods

Basic Usage Flow

  1. Configure the tools.yaml file: Define your tools
  2. Start the server:
    ./toolbox --tools_file "tools.yaml"
    
  3. Load tools into the application: Use the corresponding SDK

Supported Client SDKs

Core SDK

from toolbox_core import ToolboxClient
client = ToolboxClient("http://127.0.0.1:5000")
tools = await client.load_toolset("toolset_name")

LangChain/LangGraph SDK

from toolbox_langchain import ToolboxClient
client = ToolboxClient("http://127.0.0.1:5000")
tools = client.load_toolset()

LlamaIndex SDK

from toolbox_llamaindex import ToolboxClient
client = ToolboxClient("http://127.0.0.1:5000")
tools = client.load_toolset()

Configuration Description

Data Source Configuration

sources:
  my-pg-source:
    kind: postgres
    host: 127.0.0.1
    port: 5432
    database: toolbox_db
    user: toolbox_user
    password: my-password

Tool Configuration

tools:
  search-hotels-by-name:
    kind: postgres-sql
    source: my-pg-source
    description: Search for hotels based on name.
    parameters:
      - name: name
        type: string
        description: The name of the hotel.
    statement: SELECT * FROM hotels WHERE name ILIKE '%' || $1 || '%';

Toolset Configuration

toolsets:
  my_first_toolset:
    - my_first_tool
    - my_second_tool
  my_second_toolset:
    - my_second_tool
    - my_third_tool

Version Control

  • MAJOR Version: Incompatible API changes
  • MINOR Version: Backwards compatible feature additions
  • PATCH Version: Backwards compatible bug fixes

Applicable Scenarios

  • AI Agent Development: Build database access tools for AI agents
  • Data Integration: Simplify application integration with databases
  • Tool Management: Centrally manage and distribute database tools
  • Multi-Framework Support: Share tools across different AI frameworks

Project Advantages

  1. Open Source and Free: Completely open source, maintained by Google
  2. Mature and Stable: Based on Google's best practices
  3. Ecosystem Compatibility: Supports mainstream AI frameworks
  4. Easy to Extend: Flexible configuration and extension mechanisms
  5. Enterprise-Grade: Provides enterprise-grade security and observability

Summary

MCP Toolbox for Databases is a powerful and easy-to-use open-source project designed for the database integration needs of modern AI applications. It helps developers quickly build reliable AI database tools by providing a simplified development experience, optimized performance, enhanced security, and comprehensive observability.

Whether you are developing AI agents, building data-driven applications, or need to share database tools across multiple frameworks, MCP Toolbox for Databases is a solution worth considering. Its flexible architecture and rich SDK support make it well-suited to a variety of development scenarios and needs.