SkillAgentSearch skills...

openfga-mcp

Model Context Protocol server enabling querying and management of OpenFGA and Auth0 FGA authorization stores for automation, intelligent tooling, and natural language.

Install / Use

claude mcp add evansims -- npx -y github:evansims/openfga-mcp

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

77/100

Category

Automation

Supported Platforms

Claude Code
Claude Desktop
<div align="center"> <p><a href="https://openfga.dev"><img src=".github/openfga.png" width="100" /></a></p> <h1>OpenFGA MCP Server</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 Type Coverage" /></a> <a href="https://www.bestpractices.dev/projects/10901"><img src="https://www.bestpractices.dev/projects/10901/badge"></a> </p> <p>AI-powered authorization management for OpenFGA</p> </div> <p><br /></p>

Connect OpenFGA and Auth0 FGA to AI agents via the Model Context Protocol.

Use Cases

  • Plan & Design - Design efficient authorization model using best practice patterns
  • Generate Code - Generate accurate SDK integrations with comprehensive documentation context
  • Manage Instances - Query and control live OpenFGA servers through AI agents

Quick Start

Offline Mode (Default)

Design models and generate code without a server:

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

Online Mode

Connect to OpenFGA for full management capabilities:

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

Safety: Write operations are disabled by default. Set OPENFGA_MCP_API_WRITEABLE=true to enable.

Docker Networking: For your OPENFGA_MCP_API_URL use host.docker.internal when running OpenFGA on your local machine, container names for Docker networks, or full URLs for remote instances.

Works with Claude Desktop, Claude Code, Cursor, Windsurf, Zed, and other MCP clients.

Configuration

MCP Transport

| Variable | Default | Description | | --------------------------------- | ----------- | ------------------------------------------------------------------------------- | | OPENFGA_MCP_TRANSPORT | stdio | Supports stdio or http (Streamable HTTP.) | | OPENFGA_MCP_TRANSPORT_HOST | 127.0.0.1 | IP to listen for connections on. Only applicable when using http transport. | | OPENFGA_MCP_TRANSPORT_PORT | 9090 | Port to listen for connections on. Only applicable when using http transport. | | OPENFGA_MCP_TRANSPORT_SSE | true | Enables Server-Sent Events (SSE) streams for responses. | | OPENFGA_MCP_TRANSPORT_STATELESS | false | Enables stateless mode for session-less clients. |

OpenFGA

| Variable | Default | Description | | --------------------------- | ------- | --------------------------------------------------- | | OPENFGA_MCP_API_URL | | OpenFGA server URL | | OPENFGA_MCP_API_WRITEABLE | false | Enables write operations | | OPENFGA_MCP_API_STORE | | Default requests to a specific store ID | | OPENFGA_MCP_API_MODEL | | Default requests to a specific model ID | | OPENFGA_MCP_API_RESTRICT | false | Restrict requests to configured default store/model |

OpenFGA Authentication

| Authentication | Variable | Default | Description | | ------------------ | ------------------------------- | ------- | ------------- | | Pre-Shared Keys | OPENFGA_MCP_API_TOKEN | | API Token | | Client Credentials | OPENFGA_MCP_API_CLIENT_ID | | Client ID | | | OPENFGA_MCP_API_CLIENT_SECRET | | Client Secret | | | OPENFGA_MCP_API_ISSUER | | Token Issuer | | | OPENFGA_MCP_API_AUDIENCE | | API Audience |

See docker-compose.example.yml for complete examples.

Features

Management Tools

  • Stores: Create, list, get, delete stores
  • Models: Create models with DSL, list, get, verify
  • Permissions: Check, grant, revoke permissions; query users and objects

SDK Documentation

Comprehensive documentation for accurate code generation:

  • All OpenFGA SDKs (PHP, Go, Python, Java, .NET, JavaScript, Laravel)
  • Class and method documentation with code examples
  • Advanced search with language filtering

AI Prompts

Design & Planning

  • Domain-specific model design
  • RBAC to ReBAC migration
  • Hierarchical relationships
  • Performance optimization

Implementation

  • Step-by-step model creation
  • Relationship patterns
  • Test generation
  • Security patterns

Troubleshooting

  • Permission debugging
  • Security audits
  • Least privilege implementation

Resources & URIs

  • openfga://stores - List stores
  • openfga://store/{id}/model/{modelId} - Model details
  • openfga://docs/{sdk}/class/{className} - SDK documentation
  • openfga://docs/search/{query} - Search documentation

Smart Completions

Auto-completion for store IDs, model IDs, relations, users, and objects when connected.


Related Skills

View on GitHub
GitHub Stars10
CategoryAutomation
Updated10mo ago
Forks4

Languages

PHP

Security Score

91/100

Audited on Nov 7, 2025

1 low1 info