MCP.Market

API MCP server

by fusionauth.io·io.fusionauth/mcp-api·v0.1.14·1 stars

Preview release of FusionAuth API MCP server

B72/100grade B
What users say
No reviews yet
Be the first
Safety scan
B72/100

full report

Adoption
Growing

1 stars342 downloads/wk

Reviews

Write one

Nobody has reviewed API yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

API tools (100, 75 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • createAPIKeywrite action

    Creates an API key. You can optionally specify a unique Id for the key, if not provided one will be generated. an API key can only be created with equal or lesser authority. An API key cannot create another API key unless it is granted to that API key. If an API key is locked to a tenant, it can only create API Keys for that same tenant.

  • createAPIKeyWithIdwrite action

    Creates an API key. You can optionally specify a unique Id for the key, if not provided one will be generated. an API key can only be created with equal or lesser authority. An API key cannot create another API key unless it is granted to that API key. If an API key is locked to a tenant, it can only create API Keys for that same tenant.

  • createApplicationwrite action

    Creates an application. You can optionally specify an Id for the application, if not provided one will be generated.

  • createApplicationRolewrite action

    Creates a new role for an application. You must specify the Id of the application you are creating the role for. You can optionally specify an Id for the role inside the ApplicationRole object itself, if not provided one will be generated.

  • createApplicationRoleWithIdwrite action

    Creates a new role for an application. You must specify the Id of the application you are creating the role for. You can optionally specify an Id for the role inside the ApplicationRole object itself, if not provided one will be generated.

  • createApplicationWithIdwrite action

    Creates an application. You can optionally specify an Id for the application, if not provided one will be generated.

  • createConnectorwrite action

    Creates a connector. You can optionally specify an Id for the connector, if not provided one will be generated.

  • createConnectorWithIdwrite action

    Creates a connector. You can optionally specify an Id for the connector, if not provided one will be generated.

  • createConsentwrite action

    Creates a user consent type. You can optionally specify an Id for the consent type, if not provided one will be generated.

  • createConsentWithIdwrite action

    Creates a user consent type. You can optionally specify an Id for the consent type, if not provided one will be generated.

  • createEmailTemplatewrite action

    Creates an email template. You can optionally specify an Id for the template, if not provided one will be generated.

  • createEmailTemplateWithIdwrite action

    Creates an email template. You can optionally specify an Id for the template, if not provided one will be generated.

  • createEntitywrite action

    Creates an Entity. You can optionally specify an Id for the Entity. If not provided one will be generated.

  • createEntityTypewrite action

    Creates a Entity Type. You can optionally specify an Id for the Entity Type, if not provided one will be generated.

  • createEntityTypePermissionwrite action

    Creates a new permission for an entity type. You must specify the Id of the entity type you are creating the permission for. You can optionally specify an Id for the permission inside the EntityTypePermission object itself, if not provided one will be generated.

  • createEntityTypePermissionWithIdwrite action

    Creates a new permission for an entity type. You must specify the Id of the entity type you are creating the permission for. You can optionally specify an Id for the permission inside the EntityTypePermission object itself, if not provided one will be generated.

  • createEntityTypeWithIdwrite action

    Creates a Entity Type. You can optionally specify an Id for the Entity Type, if not provided one will be generated.

  • createEntityWithIdwrite action

    Creates an Entity. You can optionally specify an Id for the Entity. If not provided one will be generated.

  • createFormwrite action

    Creates a form. You can optionally specify an Id for the form, if not provided one will be generated.

  • createFormFieldwrite action

    Creates a form field. You can optionally specify an Id for the form, if not provided one will be generated.

  • createFormFieldWithIdwrite action

    Creates a form field. You can optionally specify an Id for the form, if not provided one will be generated.

  • createFormWithIdwrite action

    Creates a form. You can optionally specify an Id for the form, if not provided one will be generated.

  • createGroupwrite action

    Creates a group. You can optionally specify an Id for the group, if not provided one will be generated.

  • createGroupMembersWithIdwrite action

    Creates a member in a group.

  • createGroupWithIdwrite action

    Creates a group. You can optionally specify an Id for the group, if not provided one will be generated.

  • createOAuthScopewrite action

    Creates a new custom OAuth scope for an application. You must specify the Id of the application you are creating the scope for. You can optionally specify an Id for the OAuth scope on the URL, if not provided one will be generated.

  • createOAuthScopeWithIdwrite action

    Creates a new custom OAuth scope for an application. You must specify the Id of the application you are creating the scope for. You can optionally specify an Id for the OAuth scope on the URL, if not provided one will be generated.

  • deleteAPIKeyWithIdwrite action

    Deletes the API key for the given Id.

  • deleteApplicationRoleWithIdwrite action

    Hard deletes an application role. This is a dangerous operation and should not be used in most circumstances. This permanently removes the given role from all users that had it.

  • deleteApplicationWithIdwrite action

    Hard deletes an application. This is a dangerous operation and should not be used in most circumstances. This will delete the application, any registrations for that application, metrics and reports for the application, all the roles for the application, and any other data associated with the application. This operation could take a very long time, depending on the amount of data in your database.

  • deleteConnectorWithIdwrite action

    Deletes the connector for the given Id.

  • deleteConsentWithIdwrite action

    Deletes the consent for the given Id.

  • deleteEmailTemplateWithIdwrite action

    Deletes the email template for the given Id.

  • deleteEntityGrantWithIdwrite action

    Deletes an Entity Grant for the given User or Entity.

  • deleteEntityTypePermissionWithIdwrite action

    Hard deletes a permission. This is a dangerous operation and should not be used in most circumstances. This permanently removes the given permission from all grants that had it.

  • deleteEntityTypeWithIdwrite action

    Deletes the Entity Type for the given Id.

  • deleteEntityWithIdwrite action

    Deletes the Entity for the given Id.

  • deleteFormFieldWithIdwrite action

    Deletes the form field for the given Id.

  • deleteFormWithIdwrite action

    Deletes the form for the given Id.

  • deleteGroupMembersWithIdwrite action

    Removes users as members of a group.

  • deleteGroupWithIdwrite action

    Deletes the group for the given Id.

  • deleteOAuthScopeWithIdwrite action

    Hard deletes a custom OAuth scope. OAuth workflows that are still requesting the deleted OAuth scope may fail depending on the application's unknown scope policy.

  • patchAPIKeyWithIdwrite action

    Updates an API key with the given Id.

  • patchApplicationRoleWithIdwrite action

    Updates, via PATCH, the application role with the given Id for the application.

  • patchApplicationWithIdwrite action

    Updates, via PATCH, the application with the given Id.

  • patchConnectorWithIdwrite action

    Updates, via PATCH, the connector with the given Id.

  • patchConsentWithIdwrite action

    Updates, via PATCH, the consent with the given Id.

  • patchEmailTemplateWithIdwrite action

    Updates, via PATCH, the email template with the given Id.

  • patchEntityTypePermissionWithIdwrite action

    Patches the permission with the given Id for the entity type.

  • patchEntityTypeWithIdwrite action

    Updates, via PATCH, the Entity Type with the given Id.

  • patchEntityWithIdwrite action

    Updates, via PATCH, the Entity with the given Id.

  • patchFormFieldWithIdwrite action

    Patches the form field with the given Id.

  • patchFormWithIdwrite action

    Patches the form with the given Id.

  • patchGroupWithIdwrite action

    Updates, via PATCH, the group with the given Id.

  • patchOAuthScopeWithIdwrite action

    Updates, via PATCH, the custom OAuth scope with the given Id for the application.

  • retrieveAPIKeyWithId

    Retrieves an authentication API key for the given Id.

  • retrieveApplication

    Retrieves all the applications that are currently inactive. OR Retrieves the application for the given Id or all the applications if the Id is null.

  • retrieveApplicationWithId

    Retrieves the application for the given Id or all the applications if the Id is null.

  • retrieveConnectorWithId

    Retrieves the connector with the given Id.

  • retrieveConsentWithId

    Retrieves the Consent for the given Id.

  • retrieveEmailTemplatewrite action

    Retrieves the email template for the given Id. If you don't specify the Id, this will return all the email templates.

  • retrieveEmailTemplatePreviewWithIdwrite action

    Creates a preview of the email template provided in the request. This allows you to preview an email template that hasn't been saved to the database yet. The entire email template does not need to be provided on the request. This will create the preview based on whatever is given.

  • retrieveEmailTemplateWithIdwrite action

    Retrieves the email template for the given Id. If you don't specify the Id, this will return all the email templates.

  • retrieveEntityGrantWithId

    Retrieves an Entity Grant for the given Entity and User/Entity.

  • retrieveEntityTypeWithId

    Retrieves the Entity Type for the given Id.

  • retrieveEntityWithId

    Retrieves the Entity for the given Id.

  • retrieveFormFieldWithId

    Retrieves the form field with the given Id.

  • retrieveFormWithId

    Retrieves the form with the given Id.

  • retrieveGroupWithId

    Retrieves the group for the given Id.

  • retrieveIdentityProviderByTypeWithId

    Retrieves one or more identity provider for the given type. For types such as Google, Facebook, Twitter and LinkedIn, only a single identity provider can exist. For types such as OpenID Connect and SAMLv2 more than one identity provider can be configured so this request may return multiple identity providers.

  • retrieveJsonWebKeySetWithId

    Returns public keys used by FusionAuth to cryptographically verify JWTs using the JSON Web Key format.

  • retrieveOAuthScopeWithId

    Retrieves a custom OAuth scope.

  • retrieveOauthConfigurationWithId

    Retrieves the Oauth2 configuration for the application for the given Application Id.

  • retrieveOpenIdConfigurationWithId

    Returns the well known OpenID Configuration JSON document

  • retrieveSystemHealthWithId

    Retrieves the FusionAuth system health. This API will return 200 if the system is healthy, and 500 if the system is un-healthy.

  • searchApplicationsWithId

    Searches applications with the specified criteria and pagination.

  • searchConsentsWithId

    Searches consents with the specified criteria and pagination.

  • searchEmailTemplatesWithIdwrite action

    Searches email templates with the specified criteria and pagination.

  • searchEntitiesByIdsWithId

    Retrieves the entities for the given Ids. If any Id is invalid, it is ignored.

  • searchEntitiesWithId

    Searches entities with the specified criteria and pagination.

  • searchEntityGrantsWithId

    Searches Entity Grants with the specified criteria and pagination.

  • searchEntityTypesWithId

    Searches the entity types with the specified criteria and pagination.

  • searchGroupMembersWithId

    Searches group members with the specified criteria and pagination.

  • searchGroupsWithId

    Searches groups with the specified criteria and pagination.

  • sendEmailWithIdwrite action

    Send an email using an email template Id. You can optionally provide <code>requestData</code> to access key value pairs in the email template.

  • updateAPIKeyWithIdwrite action

    Updates an API key with the given Id.

  • updateApplicationRoleWithIdwrite action

    Updates the application role with the given Id for the application.

  • updateApplicationWithIdwrite action

    Updates the application with the given Id. OR Reactivates the application with the given Id.

  • updateConnectorWithIdwrite action

    Updates the connector with the given Id.

  • updateConsentWithIdwrite action

    Updates the consent with the given Id.

  • updateEmailTemplateWithIdwrite action

    Updates the email template with the given Id.

  • updateEntityTypePermissionWithIdwrite action

    Updates the permission with the given Id for the entity type.

  • updateEntityTypeWithIdwrite action

    Updates the Entity Type with the given Id.

  • updateEntityWithIdwrite action

    Updates the Entity with the given Id.

  • updateFormFieldWithIdwrite action

    Updates the form field with the given Id.

  • updateFormWithIdwrite action

    Updates the form with the given Id.

  • updateGroupMembersWithIdwrite action

    Creates a member in a group.

  • updateGroupWithIdwrite action

    Updates the group with the given Id.

  • updateOAuthScopeWithIdwrite action

    Updates the OAuth scope with the given Id for the application.

  • upsertEntityGrantWithIdwrite action

    Creates or updates an Entity Grant. This is when a User/Entity is granted permissions to an Entity.

Public scan report

scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it

1 medium
  • Code scan4 source files scanned20/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 40 days ago12/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year9/10

Findings (1)

  • mediumeval / new Function usedexec.eval
    build/index.js: …(jsonSchema); const zodSchema = eval(zodSchemaString); if (typeof zod…
Overall 72/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How API compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
72/100
higher than 38% of 48,255 servers
Tools
100
the typical server has 7
Tools that change things
75%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
1
more than 65% of 28,688 servers
Downloads a week
342
more than 83% of 12,191 servers with a package

What its tools let an agent do: 25 read · 27 create · 32 change · 15 delete · 1 send or post

Install API in Claude Code, Cursor or VS Code

Runs npx -y @fusionauth/mcp-api on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add mcp-api -- npx -y @fusionauth/mcp-api
Add to Cursor

What the publisher says

From the API repository's README, as published. We do not edit it. Read it on GitHub

Preview FusionAuth API MCP Server (fusionauth-mcp-api)

A preview release of an MCP server for the FusionAuth API. Built with the excellent github.com/harsha-iiiv/openapi-mcp-generator

⚠️ Not for Production Use!

Using this MCP server requires providing the MCP client with a FusionAuth API key. Only use this for dev and test instances. FusionAuth is not responsible for potentially leaking sensitive information.

<!-- tag::forDocSite[] -->

Prerequisites

  • A running FusionAuth instance
  • Node.js

Configuration

First, set up a limited API key in the FusionAuth instance. Here's documentation on creating an API key and configuring the correct permissions for an API key.

Next, configure your MCP client to use the FusionAuth API MCP server.

For example, to add to Claude Desktop, edit ~/Library/Application Support/Claude/claudedesktopconfig.json to include the fusionauth-mcp-api key below.

If you don't have any previous MCP servers installed, it would look like this:

{
  "mcpServers": {
      "fusionauth-mcp-api": {
      "command": "npx",
      "args": [
        "@fusionauth/mcp-api"
      ],
      "env": {
        "API_KEY_APIKEYAUTH": "<your fusionauth api key>",
        "API_BASE_URL": "http://localhost:9011",
        "USE_TOOLS": "retrieve,search"
      }
    }
  }
}

The USE_TOOLS env variable above essentially restricts the available tools to read-only operations. You can omit this variable to allow full access, but you will need a model that can handle about 200k tokens.

Consult your MCP client's documentation to determine exactly how to add an MCP server to your client.

Example Prompts

  • "which tools do you have access to?" should show you all the FusionAuth API tools
  • "how many fusionauth applications do I have?"
  • "how many users do I have in my fusionauth instance?"
  • "add a user with an email address of test@example.com and a password of 'password'" (requires less restricted tools)

Restricting Tools

The default MCP Server has a tool for every API endpoint of FusionAuth. Over 300 of them! However, the tools, descriptions, requests, and responses combine to nearly 200k tokens, which can exceed the context window of many MCP clients.

You can restrict which tools this MCP server makes available by setting the USE_TOOLS env variable as shown above.

Each tool is defined by its prefix. The default prefixes are:

  • create
  • delete
  • patch
  • update
  • retrieve
  • search

There is also an other tool bucket that contains every tool with another prefix. The all tool bucket includes all tools and is the default value.

For example, if you don't need to use any delete or patch methods, the following setting reduces the tool list by 20%.

USE_TOOLS="create,update,retrieve,search,other"

If you only want to allow read-only operations, use the following configuration:

USE_TOOLS="retrieve,search"

This also reduces the tool list size by 66%.

Securing Your MCP Server

There are three different approaches to secure your MCP server and you should combine them to enable secure access to your FusionAuth instance while still meeting your functionality needs. In order of granularity (from coarse to fine-grained):

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

API: common questions

Is API MCP server safe?
Mostly: it is graded B (72/100). Read the API safety report
How do I install API?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does API need an API key?
Yes. The registry entry asks for API_KEY_APIKEYAUTH.
Is API maintained?
The last commit was 78 days ago (2026-08-18). The latest release is v0.1.14.
How does API compare with other MCP servers?
safety score 72/100 (higher than 38% of 48,255 servers); tools 100 (the typical server has 7); tools that change things 75% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.