Auth0 MCP Server for Tenant Management
Manage your Auth0 tenant with the MCP server to create and modify actions, applications, forms, logs, resource servers, and more.
npx -y @auth0/auth0-mcp-serverOverview
The Auth0 MCP Server connects Auth0 tenant management to MCP-compatible LLM clients (Claude, Cursor, Windsurf, Gemini CLI, VS Code extension, and others). It implements a set of “tools” that expose common Auth0 management operations—create and manage applications, Actions, resource servers, rules/forms, and logs—so an LLM agent can perform administrative tasks via natural language or scripted tool calls.
This server runs locally and forwards authorized requests to the Auth0 Management API. It uses the Model Context Protocol to present those management operations as first-class tools to MCP clients, enabling workflows like creating a new application, deploying an Action, or querying tenant logs without opening the Auth0 Dashboard.
Features
- Exposes Auth0 Management API actions as MCP tools
- Supports create/read/update/delete for Applications, Actions, Resource Servers, Forms, Rules, and Users
- Read-only mode for safer integrations
- Per-client tool scoping (select which tools are available to each MCP client)
- OAuth2 device authorization flow and local keychain credential storage
- Works with multiple MCP clients: Claude Desktop, Cursor, Windsurf, VS Code, Gemini CLI, and custom clients
Installation / Configuration
Prerequisites:
- Node.js v18 or higher
- An Auth0 account with Management API permissions
- An MCP client (Claude Desktop, Cursor, Windsurf, VS Code, Gemini CLI, etc.)
Install and initialize with the convenience command (uses npx to run without global install):
# Default: starts init flow and enables all tools
Common variants:
# Read-only mode (only list/get operations)
# Explicit tools selection (pattern or comma-separated)
# Specify MCP client
Manual MCP client config (example for adding the server to any MCP client that supports local MCP servers):
Authentication
- The init flow opens your browser to perform OAuth2 device authorization.
- Credentials are stored in the OS keychain (or platform equivalent).
- You can revoke or reconfigure credentials by re-running the init command.
Available Resources (tools)
The server exposes a family of tools; common resource categories include:
| Resource type | Typical tool name pattern |
|---|---|
| Applications (clients) | auth0_list_applications, auth0_get_application, auth0_create_application, auth0_update_application, auth0_delete_application |
| Actions | auth0_list_actions, auth0_get_action, auth0_create_action, auth0_deploy_action |
| Logs | auth0_list_logs, auth0_get_log |
| Resource Servers (APIs) | auth0_list_resource_servers, auth0_get_resource_server, auth0_create_resource_server |
| Forms / Hosted Pages | auth0_list_pages, auth0_get_page, auth0_update_page |
| Users | auth0_list_users, auth0_get_user, auth0_update_user |
| Keys & Certificates | auth0_list_keys, auth0_get_key |
Tools follow consistent naming (verb_resource) and support JSON input/output for structured automation.
Use Cases & Examples
Create a new application and return its domain and client ID:
- Natural language: “Create a new Auth0 application named ‘my-app’ and give me the domain and client ID.”
- Tool call: auth0_create_application with JSON body { “name”: “my-app”, “app_type”: “regular_web” }
Deploy an Action that issues a JWT:
- “Create an Action called ‘issue_jwt’, add code to sign a token, and deploy it to the Login flow.”
- The server will create the action, upload source, and call auth0_deploy_action.
Search login events for a specific IP:
- “Find Auth0 logs for successful logins from 192.108.92.3 in the last 7 days.”
- This uses auth0_list_logs with filters for date range and IP.
Audit read-only integrations:
- Configure read-only tools for auditing assistants to list users, apps, and logs without modifying tenant state.
Security & Best Practices
- Limit tools available to a client using –tools patterns or explicit lists. Avoid exposing write/delete operations to untrusted clients.
- Prefer read-only mode for exploratory or audit agents.
- Run the MCP server on a trusted machine and keep the node process isolated if giving access to third-party agents.
- Rotate Auth0 Management API credentials and revoke device authorizations when required.
Troubleshooting & Contributing
- Source code and issue tracker: https://github.com/auth0/auth0-mcp-server
- Use the GitHub issues to report bugs or request features.
- The project is currently beta: APIs and behavior may change. Test in non-production tenants where possible.
If you’re new to MCP, review the Model Context Protocol docs for how MCP clients discover and call tools, then use the Auth0 MCP Server init flow to connect your preferred client.