Databricks Permissions Mcp Server

Databricks Permissions Mcp Server

🚀 Databricks 权限 MCP 服务器

Databricks 权限 MCP 服务器是一个实现 MCP 协议的服务器,它提供了对 Databricks 权限、凭证和 Git 凭证的安全访问途径。借助该服务器,像 Claude 这样由大语言模型(LLM)驱动的工具能够与 Databricks 权限管理系统进行交互,极大地提升了权限管理的便捷性和安全性。

🚀 快速开始

Databricks 权限 MCP 服务器为您提供了对 Databricks 权限、凭证和 Git 凭证的安全访问能力。通过实现 MCP 协议,它允许像 Claude 这样的 LLM 驱动工具与 Databricks 权限管理系统进行交互。

✨ 主要特性

  • MCP 协议支持:实现 MCP 协议,使得 LLM 能够对 Databricks 权限进行管理。
  • Databricks API 集成:提供安全的方式来访问 Databricks 权限 REST API。
  • 权限管理:作为全面的工具,可对各种 Databricks 资源的权限进行管理。
  • Git 凭证管理:提供创建、列出、更新和删除 Git 凭证的功能。
  • 异步支持:利用 asyncio 实现高效运行,提升系统性能。

📦 安装指南

前置要求

  • Python 3.10 或更高版本
  • MCP 协议兼容工具

安装步骤

# 使用 pip 安装项目
pip install databricks-permissions-mcp-server

💻 使用示例

基础用法

以下是获取 Databricks 对象权限的示例:

# 使用 get_permissions 工具获取权限
from databricks_permissions_mcp_server import get_permissions

# 假设这里填写具体的 Databricks 对象 ID
object_id = "your_object_id"
permissions = get_permissions(object_id)
print(permissions)

高级用法

以下是创建新服务主体的示例:

# 使用 create_service_principal 工具创建新的服务主体
from databricks_permissions_mcp_server import create_service_principal

# 假设这里填写具体的服务主体信息
service_principal_info = {
"display_name": "new_service_principal",
"application_id": "your_application_id"
}
new_service_principal = create_service_principal(service_principal_info)
print(new_service_principal)

📚 详细文档

Databricks 权限 MCP 服务器公开了以下工具:

权限管理

  • get_permissions:获取 Databricks 对象的权限
  • set_permissions:设置 Databricks 对象的权限
  • update_permissions:更新 Databricks 对象的权限
  • get_permission_levels:获取 Databricks 对象类型的可用权限级别

资源特定权限

  • get_cluster_permissions:获取集群的权限
  • set_cluster_permissions:设置集群的权限
  • update_cluster_permissions:更新集群的权限
  • get_job_permissions:获取作业的权限
  • set_job_permissions:设置作业的权限
  • get_warehouse_permissions:获取 SQL 仓库的权限
  • get_workspace_object_permissions:获取工作区对象(笔记本、目录)的权限

服务主体

  • list_service_principals:列出工作区中的所有服务主体
  • get_service_principal:获取特定服务主体的详细信息
  • create_service_principal:创建新的服务主体
  • update_service_principal:更新现有服务主体
  • delete_service_principal:删除服务主体

Unity Catalog 权限

  • get_catalog_permissions:获取 Unity Catalog 仓库的权限
  • get_schema_permissions:获取 Unity Catalog 模式的权限
  • get_table_permissions:获取 Unity Catalog 表的权限

Git 凭证管理

  • list_git_credentials:列出所有 Git 凭证
  • create_git_credential:创建新的 Git 凭证
  • update_git_credential:更新现有 Git 凭证
  • delete_git_credential:删除 Git 凭证

🔧 技术细节

代码标准

  • 遵循 PEP 8 代码风格指南,最大行长为 100 字符。
  • 所有类、方法和函数都需要带有 Google 样式的文档字符串,以确保代码的可读性和可维护性。
  • 所有代码(除测试外)都必须使用类型提示,提高代码的健壮性。

测试

项目使用 pytest 进行测试。要运行测试,可使用以下命令:

# 运行所有测试
pytest tests/

# 生成覆盖报告
pytest --cov=src tests/ --cov-report=term-missing

📄 许可证

本项目在 MIT 许可证下发布,详细信息请参阅 LICENSE 文件。

  • 0 关注
  • 0 收藏,18 浏览
  • system 提出于 2025-10-05 20:21

相似服务问题

相关AI产品