Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.fusionauth/mcp-api

NPM · @FUSIONAUTH/MCP-API · SCANNED SEP 24

Preview release of FusionAuth API MCP server

Available components

0 this week 79 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 34 of 111 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability67
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 22835 tokens (~73/item across 310 items; 310 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management83
  • Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 97% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 44 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "deleteAPIKeyWithId" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 310 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the io.fusionauth/mcp-api server?

io.fusionauth/mcp-api runs locally as an npm package, launched with npx -y @fusionauth/mcp-api. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @fusionauth/mcp-api

# add to Claude Code
claude mcp add io-fusionauth-mcp-api -- npx -y @fusionauth/mcp-api
// .cursor/mcp.json
{
  "mcpServers": {
    "io-fusionauth-mcp-api": {
      "command": "npx",
      "args": [
        "-y",
        "@fusionauth/mcp-api"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "io-fusionauth-mcp-api": {
      "command": "npx",
      "args": [
        "-y",
        "@fusionauth/mcp-api"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add io-fusionauth-mcp-api -- npx -y @fusionauth/mcp-api
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-fusionauth-mcp-api": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@fusionauth/mcp-api"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add io-fusionauth-mcp-api --command npx --arg -y --arg @fusionauth/mcp-api
# ~/.hermes/config.yaml
mcp_servers:
  io-fusionauth-mcp-api:
    command: "npx"
    args: ["-y", "@fusionauth/mcp-api"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "io-fusionauth-mcp-api": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@fusionauth/mcp-api"
      ]
    }
  }
}
# add to Vellum
assistant mcp add io-fusionauth-mcp-api -t stdio -c npx -a -y @fusionauth/mcp-api
// mcp.json
{
  "mcpServers": {
    "io-fusionauth-mcp-api": {
      "command": "npx",
      "args": [
        "-y",
        "@fusionauth/mcp-api"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 24 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 23 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 22 Sept 26 +1
    • Stability: 0.97 → pass security
  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 17 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 16 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 15 Sept 26 +1
    • Stability: 0.97 → pass security
  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 24 Sept 2026 · Analysed npm/@fusionauth/mcp-api@0.1.14

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 111 packages
Packages resolved 111
Stale 34
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 310 exposed · ~22,835 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
actionUserWithId ~65

Takes an action on a user. The user being actioned is called the "actionee" and the user taking the action is called the "actioner". Both user ids are required in the request object.

NameTypeReqDescription
requestBodyobject–The user action request object.

No output schema declared.

No examples provided.

activateReactorWithId ~49

Activates the FusionAuth Reactor using a license Id and optionally a license text (for air-gapped deployments)

NameTypeReqDescription
requestBodyobject–Request for managing FusionAuth Reactor and licenses.

No output schema declared.

No examples provided.

approveDeviceWithId ~16

Approve a device grant.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

cancelActionWithId ~45

Cancels the user action.

NameTypeReqDescription
actionIdstringyesThe action Id of the action to cancel.
requestBodyobject–The user action request object.

No output schema declared.

No examples provided.

changePasswordWithId ~129

Changes a user's password using the change password Id. This usually occurs after an email has been sent to the user and they clicked on a link to reset their password. As of version 1.32.2, prefer sending the changePasswordId in the request body. To do this, omit the first parameter, and set the value in the request body.

NameTypeReqDescription
changePasswordIdstringyesThe change password Id used to find the user. This value is generated by FusionAuth once the change password workflow has been initiated.
requestBodyobject–Change password request object.

No output schema declared.

No examples provided.

checkChangePasswordUsingIdWithId ~144

Check to see if the user must obtain a Trust Token Id in order to complete a change password request. When a user has enabled Two-Factor authentication, before you are allowed to use the Change Password API to change your password, you must obtain a Trust Token by completing a Two-Factor Step-Up authentication. An HTTP status code of 400 with a general error code of [TrustTokenRequired] indicates that a Trust Token is required to make a POST request to this API.

NameTypeReqDescription
changePasswordIdstringyesThe change password Id used to find the user. This value is generated by FusionAuth once the change password workflow has been initiated.

No output schema declared.

No examples provided.

commentOnUserWithId ~75

Adds a comment to the user's account.

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

completeVerifyIdentityWithId ~39

Completes verification of an identity using verification codes from the Verify Start API.

NameTypeReqDescription
requestBodyobject–Verify Complete API request object.

No output schema declared.

No examples provided.

completeWebAuthnAssertionWithId ~52

Complete a WebAuthn authentication ceremony by validating the signature against the previously generated challenge without logging the user in

NameTypeReqDescription
requestBodyobject–Request to complete the WebAuthn registration ceremony

No output schema declared.

No examples provided.

completeWebAuthnLoginWithId ~53

Complete a WebAuthn authentication ceremony by validating the signature against the previously generated challenge and then login the user in

NameTypeReqDescription
requestBodyobject–Request to complete the WebAuthn registration ceremony

No output schema declared.

No examples provided.

completeWebAuthnRegistrationWithId ~53

Complete a WebAuthn registration ceremony by validating the client request and saving the new credential

NameTypeReqDescription
requestBodyobject–Request to complete the WebAuthn registration ceremony for a new credential,.

No output schema declared.

No examples provided.

createAPIKey ~98

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.

NameTypeReqDescription
requestBodyobject–Authentication key request object.

No output schema declared.

No examples provided.

createAPIKeyWithId ~126

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.

NameTypeReqDescription
keyIdstringyesThe unique Id of the API key. If not provided a secure random Id will be generated.
requestBodyobject–Authentication key request object.

No output schema declared.

No examples provided.

createApplication ~87

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
requestBodyobject–The Application API request object.

No output schema declared.

No examples provided.

createApplicationRole ~131

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.

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
applicationIdstringyesThe Id of the application to create the role on.
requestBodyobject–The Application API request object.

No output schema declared.

No examples provided.

createApplicationRoleWithId ~157

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.

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
applicationIdstringyesThe Id of the application to create the role on.
requestBodyobject–The Application API request object.
roleIdstringyesThe Id of the role. If not provided a secure random UUID will be generated.

No output schema declared.

No examples provided.

createApplicationWithId ~115

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
applicationIdstringyesThe Id to use for the application. If not provided a secure random UUID will be generated.
requestBodyobject–The Application API request object.

No output schema declared.

No examples provided.

createAuditLogWithId ~89

Creates an audit log with the message and user name (usually an email). Audit logs should be written anytime you make changes to the FusionAuth database. When using the FusionAuth App web interface, any changes are automatically written to the audit log. However, if you are accessing the API, you must write the audit logs yourself.

NameTypeReqDescription
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

createConnector ~43

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

NameTypeReqDescription
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

createConnectorWithId ~69

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

NameTypeReqDescription
connectorIdstringyesThe Id for the connector. If not provided a secure random UUID will be generated.
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

createConsent ~91

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
requestBodyobject–API request for User consent types.

No output schema declared.

No examples provided.

createConsentWithId ~117

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
consentIdstringyesThe Id for the consent. If not provided a secure random UUID will be generated.
requestBodyobject–API request for User consent types.

No output schema declared.

No examples provided.

createEmailTemplate ~87

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
requestBodyobject–Email template request.

No output schema declared.

No examples provided.

createEmailTemplateWithId ~114

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
emailTemplateIdstringyesThe Id for the template. If not provided a secure random UUID will be generated.
requestBodyobject–Email template request.

No output schema declared.

No examples provided.

createEntity ~86

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
requestBodyobject–Entity API request object.

No output schema declared.

No examples provided.

createEntityType ~46

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

NameTypeReqDescription
requestBodyobject–Entity Type API request object.

No output schema declared.

No examples provided.

createEntityTypePermission ~93

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.

NameTypeReqDescription
entityTypeIdstringyesThe Id of the entity type to create the permission on.
requestBodyobject–Entity Type API request object.

No output schema declared.

No examples provided.

createEntityTypePermissionWithId ~119

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.

NameTypeReqDescription
entityTypeIdstringyesThe Id of the entity type to create the permission on.
permissionIdstringyesThe Id of the permission. If not provided a secure random UUID will be generated.
requestBodyobject–Entity Type API request object.

No output schema declared.

No examples provided.

createEntityTypeWithId ~74

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

NameTypeReqDescription
entityTypeIdstringyesThe Id for the Entity Type. If not provided a secure random UUID will be generated.
requestBodyobject–Entity Type API request object.

No output schema declared.

No examples provided.

createEntityWithId ~112

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
entityIdstringyesThe Id for the Entity. If not provided a secure random UUID will be generated.
requestBodyobject–Entity API request object.

No output schema declared.

No examples provided.

createFamily ~105

Creates a family with the user Id in the request as the owner and sole member of the family. You can optionally specify an Id for the family, if not provided one will be generated.

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
requestBodyobject–API request for managing families and members.

No output schema declared.

No examples provided.

createFamilyWithId ~131

Creates a family with the user Id in the request as the owner and sole member of the family. You can optionally specify an Id for the family, if not provided one will be generated.

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
familyIdstringyesThe Id for the family. If not provided a secure random UUID will be generated.
requestBodyobject–API request for managing families and members.

No output schema declared.

No examples provided.

createForm ~41

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

NameTypeReqDescription
requestBodyobject–Form response.

No output schema declared.

No examples provided.

createFormField ~47

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

NameTypeReqDescription
requestBodyobject–The FormField API request object.

No output schema declared.

No examples provided.

createFormFieldWithId ~74

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

NameTypeReqDescription
fieldIdstringyesThe Id for the form field. If not provided a secure random UUID will be generated.
requestBodyobject–The FormField API request object.

No output schema declared.

No examples provided.

createFormWithId ~67

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

NameTypeReqDescription
formIdstringyesThe Id for the form. If not provided a secure random UUID will be generated.
requestBodyobject–Form response.

No output schema declared.

No examples provided.

createGroup ~86

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
requestBodyobject–Group API request object.

No output schema declared.

No examples provided.

createGroupMembersWithId ~29

Creates a member in a group.

NameTypeReqDescription
requestBodyobject–Group Member Request

No output schema declared.

No examples provided.

createGroupWithId ~112

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

NameTypeReqDescription
X-FusionAuth-TenantIdstring–The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped.
groupIdstringyesThe Id for the group. If not provided a secure random UUID will be generated.
requestBodyobject–Group API request object.

No output schema declared.

No examples provided.

createIdentityProvider ~45

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

NameTypeReqDescription
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

createIdentityProviderWithId ~73

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

NameTypeReqDescription
identityProviderIdstringyesThe Id of the identity provider. If not provided a secure random UUID will be generated.
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

createIntrospect ~58

Inspect an access token issued as the result of the Client Credentials Grant. OR Inspect an access token issued as the result of the User based grant such as the Authorization Code Grant, Implicit Grant, the User Credentials Grant or the Refresh Grant.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

createIPAccessControlList ~51

Creates an IP Access Control List. You can optionally specify an Id on this create request, if one is not provided one will be generated.

NameTypeReqDescription
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

createIPAccessControlListWithId ~82

Creates an IP Access Control List. You can optionally specify an Id on this create request, if one is not provided one will be generated.

NameTypeReqDescription
accessControlListIdstringyesThe Id for the IP Access Control List. If not provided a secure random UUID will be generated.
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

createLambda ~42

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

NameTypeReqDescription
requestBodyobject–Lambda API request object.

No output schema declared.

No examples provided.

createLambdaWithId ~68

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

NameTypeReqDescription
lambdaIdstringyesThe Id for the lambda. If not provided a secure random UUID will be generated.
requestBodyobject–Lambda API request object.

No output schema declared.

No examples provided.

createLogout ~181

The Logout API is intended to be used to remove the refresh token and access token cookies if they exist on the client and revoke the refresh token stored. This API takes the refresh token in the JSON body. OR The Logout API is intended to be used to remove the refresh token and access token cookies if they exist on the client and revoke the refresh token stored. This API does nothing if the request does not contain an access token or refresh token cookies.

NameTypeReqDescription
globalstring–When this value is set to true all the refresh tokens issued to the owner of the provided token will be revoked.
refreshTokenstring–The refresh_token as a request parameter instead of coming in via a cookie. If provided this takes precedence over the cookie.
requestBodyobject–Request for the Logout API that can be used as an alternative to URL parameters.

No output schema declared.

No examples provided.

createMessageTemplate ~47

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

NameTypeReqDescription
requestBodyobject–A Message Template Request to the API

No output schema declared.

No examples provided.

createMessageTemplateWithId ~74

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

NameTypeReqDescription
messageTemplateIdstringyesThe Id for the template. If not provided a secure random UUID will be generated.
requestBodyobject–A Message Template Request to the API

No output schema declared.

No examples provided.

createMessenger ~43

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

NameTypeReqDescription
requestBodyobject–The JSON request body.

No output schema declared.

No examples provided.

Common questions

What is the io.fusionauth/mcp-api server?

io.fusionauth/mcp-api is listed in the public MCP registry as io.fusionauth/mcp-api. Preview release of FusionAuth API MCP server. This page covers its npm package (@fusionauth/mcp-api).

Is the io.fusionauth/mcp-api server safe to use?

io.fusionauth/mcp-api scores 79 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 24 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.fusionauth/mcp-api server expose?

io.fusionauth/mcp-api exposes 310 tools: retrieveJsonWebKeySetWithId, retrieveOpenIdConfigurationWithId, createAPIKey, retrieveAPIKeyWithId, updateAPIKeyWithId, and 305 more. Their descriptions and schemas cost roughly 22,835 tokens of context every time the server is loaded.

Is the io.fusionauth/mcp-api server still maintained?

io.fusionauth/mcp-api is still listed as active in the MCP registry. We last reached this channel on 24 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.fusionauth/mcp-api server under?

io.fusionauth/mcp-api declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.