Unity Catalog MCP Server
Un servidor MCP que permite a los agentes LLM ejecutar funciones sin problemas dentro de Unity Catalog.
Documentación
mcp-server-unitycatalog: Un servidor MCP de Unity Catalog
Descripción general
Un servidor de Protocolo de Contexto de Modelo para Unity Catalog. Este servidor proporciona Funciones de Unity Catalog como herramientas MCP.
Herramientas
Puedes usar todas las Funciones de Unity Catalog registradas en Unity Catalog junto con las siguientes herramientas de IA de Unity Catalog predefinidas:
-
uc_list_functions- Lista las funciones dentro del catálogo y esquema principal especificados.
- Devuelve: Una lista de funciones recuperadas de Unity Catalog.
-
uc_get_function- Obtiene una función dentro de un catálogo y esquema principal.
- Entrada:
name(cadena): El nombre de la función (no totalmente calificado).
- Devuelve: Los detalles de una función recuperados de Unity Catalog.
-
uc_create_function- Crea una función dentro de un catálogo y esquema principal. ADVERTENCIA: Esta API es experimental y cambiará en versiones futuras.
- Entrada:
name(cadena): El nombre de la función (no totalmente calificado).script(cadena): El script de Python que incluye la función a registrar.
- Devuelve: Los detalles de una función creada dentro de Unity Catalog.
-
uc_delete_function- Elimina una función dentro de un catálogo y esquema principal.
- Entrada:
name(cadena): El nombre de la función (no totalmente calificado).
- Devuelve: Ninguno.
Instalación
Usando uv
Cuando se usa uv no se necesita ninguna instalación específica. Usaremos
uvx para ejecutar directamente mcp-server-git.
Configuración
Estos valores también se pueden establecer mediante opciones de CLI o variables de entorno .env. Los argumentos requeridos son el servidor de Unity Catalog, el catálogo y el esquema, mientras que el token de acceso y el nivel de verbosidad son opcionales. Ejecuta uv run mcp-server-unitycatalog --help para obtener opciones de configuración más detalladas.
| Argumento | Variable de Entorno | Descripción | Requerido/Opcional |
|---|---|---|---|
-u, --uc_server | UC_SERVER | La URL base del servidor de Unity Catalog. | Requerido |
-c, --uc_catalog | UC_CATALOG | El nombre del catálogo de Unity Catalog. | Requerido |
-s, --uc_schema | UC_SCHEMA | El nombre del esquema dentro de un catálogo de Unity Catalog. | Requerido |
-t, --uc_token | UC_TOKEN | El token de acceso utilizado para autorizar solicitudes de API al servidor de Unity Catalog. | Opcional |
-v, --uc_verbosity | UC_VERBOSITY | El nivel de verbosidad para el registro. Predeterminado: warn. | Opcional |
-l, --uc_log_directory | UC_LOG_DIRECTORY | El directorio donde se almacenarán los archivos de registro. Predeterminado: .mcp_server_unitycatalog. | Opcional |
Uso con Claude Desktop o VSCode Cline
Agrega esto a tu claude_desktop_config.json (o cline_mcp_settings.json):
Usando uv
{
"mcpServers": {
"unitycatalog": {
"command": "uv",
"args": [
"--directory",
"/<path to your local git repository>/mcp-server-unitycatalog",
"run",
"mcp-server-unitycatalog",
"--uc_server",
"<your unity catalog url>",
"--uc_catalog",
"<your catalog name>",
"--uc_schema",
"<your schema name>"
]
}
}
}
Usando docker
- Nota: reemplaza '/Users/username' con la ruta que deseas que sea accesible por esta herramienta
{
"mcpServers": {
"unitycatalog": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"mcp/unitycatalog",
"--uc_server",
"<your unity catalog url>",
"--uc_catalog",
"<your catalog name>",
"--uc_schema",
"<your schema name>"
]
}
}
}
Compilación
Docker:
docker build -t mcp/unitycatalog .
Planes Futuros
- Implementar soporte para
list_functions. - Implementar soporte para
get_function. - Implementar soporte para
create_python_function. - Implementar soporte para
execute_function. - Implementar soporte para
delete_function. - Implementar herramientas de explorador de catálogo semántico.
- Agregar imagen de Docker.
- Implementar métodos
use_xxx. En la implementación actual,catalogyschemadeben definirse al iniciar el servidor. Sin embargo, se implementarán como funcionesuse_catalogyuse_schema, actualizando dinámicamente la lista de funciones disponibles cuando se ejecuteuse_xxx.
Licencia
Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.