返回市场
开放权限组评估-mcp

开放权限组评估-mcp

作者:evansims9 星标更新:2025-11-07

项目介绍

<div align="center"> <p><a href="https://openfga.dev"><img src=".github/openfga.png" width="100" /></a></p> <h1>OpenFGA MCP 服务器</h1> <p> <a href="https://codecov.io/gh/evansims/openfga-mcp" target="_blank"><img src="https://codecov.io/gh/evansims/openfga-mcp/graph/badge.svg?token=DG6KWF1EG6" alt="codecov" /></a> <a href="https://shepherd.dev/github/evansims/openfga-mcp" target="_blank"><img src="https://shepherd.dev/github/evansims/openfga-mcp/coverage.svg" alt="Psalm 类型覆盖率" /></a> <a href="https://www.bestpractices.dev/projects/1_0901"><img src="https://www.bestpractices.dev/projects/1_0901/badge"></a> </p> <p>基于AI的OpenFGA授权管理</p> </div> <p><br /></p>

连接OpenFGAAuth0 FGA到AI代理通过模型上下文协议。

使用场景

  • 计划与设计 - 使用最佳实践模式设计高效的授权模型
  • 生成代码 - 生成准确的SDK集成,并提供全面的文档上下文
  • 管理实例 - 通过AI代理查询并控制实时的OpenFGA服务器

快速开始

离线模式(默认)

无需服务器即可设计模型并生成代码:

{
  "mcpServers": {
    "OpenFGA": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--pull=always",
        "evansims/openfga-mcp:latest"
      ]
    }
  }
}

在线模式

连接到OpenFGA以实现完整的管理功能:

{
  "mcpServers": {
    "OpenFGA": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--pull=always",
        "-e",
        "OPENFGA_MCP_API_URL=http://host.docker.internal:8080",
        "evansims/openfga-mcp:latest"
      ]
    }
  }
}

安全提示: 写操作默认禁用。设置OPENFGA_MCP_API_WRITEABLE=true启用。

Docker网络: 当在本地机器上运行OpenFGA时,使用host.docker.internal作为OPENFGA_MCP_API_URL;对于Docker网络使用容器名称,或对于远程实例使用完整URL。

支持Claude DesktopClaude CodeCursorWindsurfZed和其他MCP客户端。

配置

MCP传输

变量默认值描述
OPENFGA_MCP_TRANSPORTstdio支持stdiohttp(可流式HTTP)
OPENFGA_MCP_TRANSPORT_HOST127.0.0.1监听连接的IP地址。仅在使用http传输时适用。
OPENFGA_MCP_TRANSPORT_PORT9090监听连接的端口。仅在使用http传输时适用。
OPENFGA_MCP_TRANSPORT_SSEtrue启用响应的Server-Sent Events(SSE)流。
OPENFGA_MCP_TRANSPORT_STATELESSfalse启用无状态模式,适用于无会话的客户端。

OpenFGA

变量默认值描述
OPENFGA_MCP_API_URLOpenFGA服务器URL
OPENFGA_MCP_API_WRITEABLEfalse启用写操作
OPENFGA_MCP_API_STORE默认请求特定存储ID
OPENFGA_MCP_API_MODEL默认请求特定模型ID
OPENFGA_MCP_API_RESTRICTfalse限制请求至配置的默认存储/模型

OpenFGA认证

认证方式变量默认值描述
预共享密钥OPENFGA_MCP_API_TOKENAPI令牌
客户端凭证OPENFGA_MCP_API_CLIENT_ID客户端ID
OPENFGA_MCP_API_CLIENT_SECRET客户端密钥
OPENFGA_MCP_API_ISSUER令牌发行人
OPENFGA_MCP_API_AUDIENCEAPI受众

参见docker-compose.example.yml获取完整示例。

特性

管理工具

  • 存储:创建、列出、获取、删除存储
  • 模型:使用DSL创建模型,列出、获取、验证
  • 权限:检查、授予、撤销权限;查询用户和对象

SDK文档

全面的文档以生成准确的代码:

  • 所有OpenFGA SDK(PHP、Go、Python、Java、.NET、JavaScript、Laravel)
  • 带代码示例的类和方法文档
  • 支持语言过滤的高级搜索

AI提示

设计与规划

  • 领域特定的模型设计
  • RBAC到ReBAC迁移
  • 层次关系
  • 性能优化

实施

  • 分步模型创建
  • 关系模式
  • 测试生成
  • 安全模式

故障排除

  • 权限调试
  • 安全审计
  • 最小特权实施

资源与URIs

  • openfga://stores - 列出存储
  • openfga://store/{id}/model/{modelId} - 模型详情
  • openfga://docs/{sdk}/class/{className} - SDK文档
  • openfga://docs/search/{query} - 搜索文档

智能补全

当连接时,自动补全存储ID、模型ID、关系、用户和对象。