
OpenFGA
STDIOMCP server enabling LLMs to interact with OpenFGA for fine-grained authorization
MCP server enabling LLMs to interact with OpenFGA for fine-grained authorization
Connect OpenFGA and Auth0 FGA to AI agents via the Model Context Protocol.
Design models and generate code without a server:
{ "mcpServers": { "OpenFGA": { "command": "docker", "args": [ "run", "--rm", "-i", "--pull=always", "evansims/openfga-mcp:latest" ] } } }
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
usehost.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.
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. |
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 |
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.
Comprehensive documentation for accurate code generation:
Design & Planning
Implementation
Troubleshooting
openfga://stores
- List storesopenfga://store/{id}/model/{modelId}
- Model detailsopenfga://docs/{sdk}/class/{className}
- SDK documentationopenfga://docs/search/{query}
- Search documentationAuto-completion for store IDs, model IDs, relations, users, and objects when connected.