Skip to main content
Glama

MCP Iceberg Catalog

by ahodroj

Catálogo Iceberg MCP

Implementación de un servidor MCP (Protocolo de Contexto de Modelo) para interactuar con Apache Iceberg. Este servidor proporciona una interfaz SQL para consultar y gestionar tablas de Iceberg a través del escritorio Claude.

Claude Desktop como su catálogo de Iceberg Data Lake

imagen

Cómo instalar en Claude Desktop

Instalación mediante herrería

Para instalar MCP Iceberg Catalog para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @ahodroj/mcp-iceberg-service --client claude
  1. Prerrequisitos
    • Python 3.10 o superior
    • Instalador de paquetes UV (recomendado) o pip
    • Acceso a un catálogo REST de Iceberg y almacenamiento compatible con S3
  2. Cómo instalar en Claude Desktop Agregue la siguiente configuración a claude_desktop_config.json :
{ "mcpServers": { "iceberg": { "command": "uv", "args": [ "--directory", "PATH_TO_/mcp-iceberg-service", "run", "mcp-server-iceberg" ], "env": { "ICEBERG_CATALOG_URI" : "http://localhost:8181", "ICEBERG_WAREHOUSE" : "YOUR ICEBERG WAREHOUSE NAME", "S3_ENDPOINT" : "OPTIONAL IF USING S3", "AWS_ACCESS_KEY_ID" : "YOUR S3 ACCESS KEY", "AWS_SECRET_ACCESS_KEY" : "YOUR S3 SECRET KEY" } } } }

Diseño

Arquitectura

El servidor MCP se basa en tres componentes principales:

  1. Manejador de protocolo MCP
    • Implementa el Protocolo de Contexto Modelo para la comunicación con Claude
    • Maneja ciclos de solicitud/respuesta a través de stdio
    • Gestiona el ciclo de vida y la inicialización del servidor.
  2. Procesador de consultas
    • Analiza consultas SQL usando sqlparse
    • Apoya operaciones:
      • LISTA DE TABLAS
      • DESCRIBIR TABLA
      • SELECCIONAR
      • INSERTAR
  3. Integración de Iceberg
    • Utiliza pyiceberg para operaciones de tabla
    • Se integra con PyArrow para un manejo eficiente de datos.
    • Administra las conexiones del catálogo y las operaciones de tabla.

Integración de PyIceberg

El servidor utiliza PyIceberg de varias maneras:

  1. Gestión de catálogos
    • Se conecta a catálogos REST
    • Administra los metadatos de la tabla
    • Maneja operaciones de espacio de nombres
  2. Operaciones de datos
    • Convierte entre tipos PyIceberg y PyArrow
    • Maneja la inserción de datos a través de tablas de PyArrow
    • Administra esquemas de tablas y tipos de campos
  3. Ejecución de consultas
    • Traduce SQL a operaciones de PyIceberg
    • Maneja el escaneo y filtrado de datos
    • Gestiona la conversión del conjunto de resultados

Se necesita mayor implementación

  1. Operaciones de consulta
    • [ ] Implementar operaciones UPDATE
    • [ ] Agregar soporte para ELIMINAR
    • [ ] Soporte para CREATE TABLE con definición de esquema
    • [ ] Agregar operaciones ALTER TABLE
    • [ ] Implementar soporte para particionamiento de tablas
  2. Tipos de datos
    • [ ] Soporte para tipos complejos (matrices, mapas, estructuras)
    • [ ] Agregar marca de tiempo con manejo de zona horaria
    • [ ] Soporte para tipos decimales
    • [ ] Agregar soporte para campos anidados
  3. Mejoras de rendimiento
    • [ ] Implementar inserciones por lotes
    • [ ] Agregar optimización de consultas
    • [ ] Soporte para escaneos paralelos
    • [ ] Agregar capa de almacenamiento en caché para datos a los que se accede con frecuencia
  4. Características de seguridad
    • [ ] Agregar mecanismos de autenticación
    • [ ] Implementar control de acceso basado en roles
    • [ ] Agregar seguridad a nivel de fila
    • [ ] Soporte para conexiones cifradas
  5. Monitoreo y gestión
    • [ ] Agregar colección de métricas
    • [ ] Implementar el registro de consultas
    • [ ] Agregar supervisión del rendimiento
    • [ ] Soporte para operaciones de mantenimiento de tablas
  6. Manejo de errores
    • [ ] Mejorar los mensajes de error
    • [ ] Agregar mecanismos de reintento para fallas transitorias
    • [ ] Implementar soporte para transacciones
    • [ ] Agregar validación de datos

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Un servidor de protocolo de contexto de modelo que proporciona una interfaz SQL para consultar y administrar tablas Apache Iceberg a través del escritorio Claude, lo que permite la interacción en lenguaje natural con los lagos de datos de Iceberg.

  1. Claude Desktop como su catálogo de Iceberg Data Lake
    1. Cómo instalar en Claude Desktop
      1. Instalación mediante herrería
    2. Diseño
      1. Arquitectura
      2. Integración de PyIceberg
    3. Se necesita mayor implementación

      Related MCP Servers

      • -
        security
        A
        license
        -
        quality
        A Model Context Protocol server that enables Claude to execute SQL queries on Snowflake databases with automatic connection lifecycle management.
        Last updated -
        28
        Python
        MIT License
        • Apple
        • Linux
      • A
        security
        A
        license
        A
        quality
        A Model Context Protocol server that allows Large Language Models to interact with Astra DB databases, providing tools for managing collections and records through natural language commands.
        Last updated -
        10
        115
        12
        TypeScript
        Apache 2.0
        • Apple
      • -
        security
        A
        license
        -
        quality
        A Model Context Protocol server that provides seamless integration with Trino and Iceberg, enabling data exploration, querying, and table maintenance through a standard interface.
        Last updated -
        14
        Python
        Apache 2.0
      • -
        security
        F
        license
        -
        quality
        A Model Context Protocol server that allows Large Language Models like Claude to execute SQL queries, explore database schemas, and maintain persistent connections to SQL Server databases.
        Last updated -
        TypeScript

      View all related MCP servers

      MCP directory API

      We provide all the information about MCP servers via our MCP API.

      curl -X GET 'https://glama.ai/api/mcp/v1/servers/ahodroj/mcp-iceberg-service'

      If you have feedback or need assistance with the MCP directory API, please join our Discord server