Home
Login
googleapis/genai-toolbox

MCP Database Toolbox es un servidor MCP de código abierto que simplifica el desarrollo de herramientas de bases de datos, proporcionando funcionalidades como pool de conexiones y autenticación.

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

Introducción al proyecto Genai-toolbox

Resumen del proyecto

MCP Toolbox for Databases (Caja de herramientas MCP para bases de datos) es una herramienta de servidor de bases de datos de código abierto de Google, diseñada para simplificar el desarrollo de herramientas Gen AI. Este proyecto permite a los desarrolladores construir de manera más fácil, rápida y segura herramientas de agentes de IA que puedan acceder a datos de bases de datos.

Dirección del proyecto: https://github.com/googleapis/genai-toolbox

Funciones y características principales

1. Simplificación del flujo de desarrollo

  • Integración rápida: Integra la herramienta en un agente con menos de 10 líneas de código.
  • Reutilización de herramientas: Permite la reutilización de herramientas entre múltiples agentes o frameworks.
  • Implementación sencilla: Facilita la implementación de nuevas versiones de las herramientas.

2. Optimización del rendimiento

  • Gestión de pool de conexiones: Mecanismo de pool de conexiones incorporado para optimizar el rendimiento de la conexión a la base de datos.
  • Mejores prácticas: Integra las mejores prácticas de acceso a bases de datos.
  • Procesamiento eficiente: Procesamiento de datos y ejecución de consultas optimizados.

3. Seguridad mejorada

  • Autenticación integrada: Proporciona un mecanismo de acceso a datos más seguro.
  • Conexiones seguras: Garantiza la seguridad de las conexiones a la base de datos.
  • Control de permisos: Admite un control de acceso granular.

4. Observabilidad de extremo a extremo

  • Monitorización integrada: Proporciona métricas y funciones de seguimiento listas para usar.
  • Soporte para OpenTelemetry: Soporte integrado para OpenTelemetry, lo que facilita la monitorización y la depuración.
  • Seguimiento de ruta completa: Admite el seguimiento completo de la ruta de la solicitud.

Diseño de la arquitectura

La caja de herramientas se encuentra entre el framework de orquestación de la aplicación y la base de datos, proporcionando un plano de control para modificar, distribuir o invocar herramientas. Simplifica la gestión de herramientas al proporcionar una ubicación centralizada para almacenar y actualizar herramientas, permite compartir herramientas entre agentes y aplicaciones, y actualizar estas herramientas sin tener que volver a implementar las aplicaciones.

Método de instalación

Instalación binaria

# Consulte la página de lanzamiento para obtener otras versiones
export VERSION=0.4.0
curl -O https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
chmod +x toolbox

Imagen de contenedor

# Consulte la página de lanzamiento para obtener otras versiones
export VERSION=0.4.0
docker pull us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION

Compilación desde el código fuente

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

Modo de uso

Flujo de uso básico

  1. Configure el archivo tools.yaml: Defina sus herramientas
  2. Inicie el servidor:
    ./toolbox --tools_file "tools.yaml"
    
  3. Cargue las herramientas en la aplicación: Utilice el SDK correspondiente

SDK de cliente compatibles

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()

Descripción de la configuración

Configuración de la fuente de datos

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

Configuración de la herramienta

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 || '%';

Configuración del conjunto de herramientas

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

Control de versiones

  • Versión MAJOR: Cambios de API incompatibles
  • Versión MINOR: Adición de funciones compatibles con versiones anteriores
  • Versión PATCH: Correcciones de errores compatibles con versiones anteriores

Escenarios de aplicación

  • Desarrollo de agentes de IA: Construir herramientas de acceso a bases de datos para agentes de IA
  • Integración de datos: Simplificar la integración de aplicaciones con bases de datos
  • Gestión de herramientas: Gestionar y distribuir herramientas de bases de datos de forma centralizada
  • Soporte para múltiples frameworks: Compartir herramientas entre diferentes frameworks de IA

Ventajas del proyecto

  1. Código abierto y gratuito: Completamente de código abierto, mantenido por Google
  2. Maduro y estable: Basado en las mejores prácticas de Google
  3. Compatibilidad con el ecosistema: Soporta los principales frameworks de IA
  4. Fácil de extender: Configuración flexible y mecanismo de extensión
  5. Nivel empresarial: Proporciona seguridad y observabilidad de nivel empresarial

Resumen

MCP Toolbox for Databases es un proyecto de código abierto potente y fácil de usar, diseñado para las necesidades modernas de integración de bases de datos de aplicaciones de IA. Ayuda a los desarrolladores a construir rápidamente herramientas de bases de datos de IA fiables al proporcionar una experiencia de desarrollo simplificada, un rendimiento optimizado, una seguridad mejorada y una observabilidad completa.

Tanto si está desarrollando agentes de IA, construyendo aplicaciones basadas en datos o necesita compartir herramientas de bases de datos entre múltiples frameworks, MCP Toolbox for Databases es una solución que vale la pena considerar. Su diseño de arquitectura flexible y su rico soporte de SDK le permiten adaptarse bien a diversos escenarios y necesidades de desarrollo.