> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect the Crossmint MCP Server

> Let AI assistants manage your Crossmint console projects, organizations, and API keys

The Crossmint MCP server lets AI assistants such as Claude, ChatGPT, Cursor, Claude Code, and Gemini manage your Crossmint console for you. Once connected, an assistant or AI agent can list and create projects, switch organizations, and create, edit, and delete API keys on your behalf.

The server is hosted by Crossmint. There is nothing to install: you add its URL to your AI client and sign in with your Crossmint console account.

<Note>
  This server manages your console. To let an AI assistant search the Crossmint documentation instead, use the [Crossmint Docs MCP server](/introduction/ai-assistants#crossmint-docs-mcp-server).
</Note>

## Prerequisites

* **Crossmint console account**: An account in the <a href="https://staging.crossmint.com/console" target="_blank">staging console</a>, the <a href="https://www.crossmint.com/console" target="_blank">production console</a>, or both. See [Staging vs Production](/introduction/platform/staging-vs-production).
* **MCP client**: An AI client that supports remote MCP servers with OAuth.

## Server Details

| Property | Value |
| - | - |
| URL | `https://mcp.crossmint.com/mcp` |
| Transport | Streamable HTTP |
| Authentication | OAuth with dynamic client registration |
| OAuth metadata | `https://mcp.crossmint.com/.well-known/oauth-authorization-server` |

Your client registers itself and opens the Crossmint sign-in in your browser. You do not need an API key to connect.

## Add the Server to Your Client

<Tabs>
  <Tab title="Claude">
    Claude.ai and Claude Desktop add remote MCP servers as custom connectors. Free plans are limited to one custom connector.

    <Steps>
      <Step title="Add a custom connector">
        Go to **Customize > Connectors**, select **+ Add**, then **Add custom connector**. On Team and Enterprise plans, an Owner first adds the connector in **Organization settings > Connectors**.
      </Step>

      <Step title="Enter the server URL">
        Name the connector `Crossmint`, enter `https://mcp.crossmint.com/mcp`, and select **Continue**. Keep the authentication settings Claude detects.
      </Step>

      <Step title="Connect and enable">
        Finish adding the connector and [sign in](#sign-in). In a conversation, enable the connector from the **+** button, then **Connectors**.
      </Step>
    </Steps>

    Source: <a href="https://support.claude.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp" target="_blank">Claude custom connectors</a>.
  </Tab>

  <Tab title="ChatGPT">
    ChatGPT adds remote MCP servers as custom MCP servers. Account and workspace policies apply.

    <Steps>
      <Step title="Add a custom MCP server">
        Go to <a href="https://chatgpt.com/plugins" target="_blank">ChatGPT Plugins</a>, select the plus button, then **Add custom MCP server**.
      </Step>

      <Step title="Enter the server details">
        Enter `Crossmint` as the name and `https://mcp.crossmint.com/mcp` as the URL under **Connection**. Choose OAuth authentication, review the risk warning, and select **I understand and want to continue**.
      </Step>

      <Step title="Create and sign in">
        Select **Create as a plugin** and [sign in](#sign-in). In a conversation, type `@` and select the Crossmint plugin.
      </Step>
    </Steps>

    Source: <a href="https://developers.openai.com/apps-sdk/deploy/connect-chatgpt" target="_blank">Connect from ChatGPT</a>.
  </Tab>

  <Tab title="Cursor">
    <a href="cursor://anysphere.cursor-deeplink/mcp/install?name=crossmint&config=eyJ1cmwiOiJodHRwczovL21jcC5jcm9zc21pbnQuY29tL21jcCJ9" target="_blank">Add the Crossmint MCP server to Cursor</a> with one click, or add it to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (one project):

    ```json mcp.json theme={null}
    {
        "mcpServers": {
            "crossmint": {
                "url": "https://mcp.crossmint.com/mcp"
            }
        }
    }
    ```

    When Cursor connects to the server for the first time, complete the [sign-in](#sign-in).

    Source: <a href="https://cursor.com/docs/mcp" target="_blank">Cursor MCP</a> and <a href="https://cursor.com/docs/mcp/install-links" target="_blank">Cursor install links</a>.
  </Tab>

  <Tab title="Claude Code">
    Add the server:

    ```bash theme={null}
    claude mcp add --transport http crossmint https://mcp.crossmint.com/mcp
    ```

    Start Claude Code, run `/mcp`, select `crossmint`, and [sign in](#sign-in). You can also sign in from your shell with `claude mcp login crossmint`.

    Source: <a href="https://code.claude.com/docs/en/mcp" target="_blank">Claude Code MCP</a>.
  </Tab>

  <Tab title="VS Code">
    Run **MCP: Add Server** from the Command Palette, choose **HTTP**, enter `https://mcp.crossmint.com/mcp`, and name the server `crossmint`. To share the server with your team, add it to `.vscode/mcp.json` in your project:

    ```json .vscode/mcp.json theme={null}
    {
        "servers": {
            "crossmint": {
                "type": "http",
                "url": "https://mcp.crossmint.com/mcp"
            }
        }
    }
    ```

    When VS Code starts the server for the first time, complete the [sign-in](#sign-in).

    Source: <a href="https://code.visualstudio.com/docs/copilot/customization/mcp-servers" target="_blank">VS Code MCP servers</a>.
  </Tab>

  <Tab title="Codex">
    Add the server and sign in:

    ```bash theme={null}
    codex mcp add crossmint --url https://mcp.crossmint.com/mcp
    codex mcp login crossmint
    ```

    Source: <a href="https://developers.openai.com/codex/mcp" target="_blank">Codex MCP</a>.
  </Tab>

  <Tab title="Gemini CLI">
    Add the server:

    ```bash theme={null}
    gemini mcp add --transport http crossmint https://mcp.crossmint.com/mcp
    ```

    Start Gemini CLI and run `/mcp auth crossmint` to [sign in](#sign-in).

    Source: <a href="https://geminicli.com/docs/tools/mcp-server/" target="_blank">Gemini CLI MCP servers</a>.
  </Tab>

  <Tab title="Windsurf">
    Open the MCP settings in Windsurf and add the server to `~/.codeium/windsurf/mcp_config.json`:

    ```json mcp_config.json theme={null}
    {
        "mcpServers": {
            "crossmint": {
                "serverUrl": "https://mcp.crossmint.com/mcp"
            }
        }
    }
    ```

    When Windsurf connects to the server for the first time, complete the [sign-in](#sign-in).

    Source: <a href="https://docs.windsurf.com/windsurf/cascade/mcp" target="_blank">Windsurf MCP</a>.
  </Tab>

  <Tab title="Other clients">
    Clients that support remote MCP servers with OAuth connect to `https://mcp.crossmint.com/mcp` directly. For clients that only run local MCP servers, use the <a href="https://www.npmjs.com/package/mcp-remote" target="_blank">mcp-remote</a> proxy, which runs locally and opens the [sign-in](#sign-in) in your browser:

    ```json theme={null}
    {
        "mcpServers": {
            "crossmint": {
                "command": "npx",
                "args": ["-y", "mcp-remote", "https://mcp.crossmint.com/mcp"]
            }
        }
    }
    ```
  </Tab>
</Tabs>

## Sign In

When your client connects for the first time, it opens the Crossmint sign-in in your browser.

<Steps>
  <Step title="Choose an environment">
    Select **Production** or **Staging**. The connection works in that environment only. See [Staging vs Production](/introduction/platform/staging-vs-production).
  </Step>

  <Step title="Sign in to the Crossmint console">
    Sign in to the console of the environment you selected, as you do in the browser.
  </Step>

  <Step title="Choose an organization">
    Select the organization the connection starts in, then select **Authorize**. If the organization requires MFA or SSO, the console asks you to complete it.
  </Step>
</Steps>

When the browser shows **You are all set**, return to your client. To check the connection, ask the assistant which Crossmint account it is connected to. The assistant calls `whoami`, which returns your email, environment, and organization.

<Warning>
  The connection has full access to the organization you select: read and write access to all of its projects, with the permissions of your console account. That includes creating and deleting API keys.
</Warning>

## Switch Organization or Environment

A connection works in one environment and one organization at a time.

* **Organization**: Ask the assistant to switch organization. It calls `orgs_list` and `orgs_select`. If the organization requires MFA or SSO, the assistant returns a link instead: open it in your browser and complete the step in the console.
* **Environment**: Ask the assistant to work in the other environment. It calls `env_select`, which returns a link: open it in your browser, sign in to that environment with the same email, and choose an organization. You can also remove the server from your client and connect again.

Links from `orgs_select` and `env_select` work once and expire after 10 minutes. After a switch, project IDs from the previous organization or environment no longer apply: ask the assistant to list the projects again.

## Example Prompts

* "Which Crossmint organization am I connected to?"
* "List my Crossmint projects."
* "Create a project called Loyalty App and a server API key in it with the `wallets.read` and `wallets.create` scopes."
* "Show me the client keys of my Loyalty App project."
* "Switch to my Acme organization."
* "Delete the API key I created yesterday in Loyalty App."

For the full list of tools and parameters, see [Crossmint MCP Server Tools](/mcp-server/tools).

## Security

* **Review tool calls**: Keep your client set to ask for approval before it runs tools, and review each call before you approve it, especially in production.
* **Deleting keys cannot be undone**: `keys_delete` only deletes a key when called with `confirm: true`. Any application that uses a deleted key stops working.
* **Production server secrets are shown once**: `keys_create` returns the secret of a production server key, and `keys_list` masks it afterwards. Store the secret before you close the conversation, and treat the conversation history as sensitive.
* **Prompt injection**: Content from other tools, files, or websites can contain instructions aimed at your assistant. Do not connect the Crossmint MCP server alongside sources you do not trust.
* **Use staging to experiment**: Connect to staging when you try the server out or automate tasks for the first time.
* **Use the official URL**: Only connect to `https://mcp.crossmint.com/mcp`.

A connection stays signed in for up to 30 days. Removing the server from your client stops that client from using it, but the server only revokes the connection credentials when the client sends a revocation request. Credentials that are not revoked expire within 30 days.

## Troubleshooting

<AccordionGroup>
  <Accordion title="This sign-in expired or was started in another browser">
    The sign-in must finish in the browser where it started, within 10 minutes. Connect again from your client and complete the sign-in in the browser it opens.
  </Accordion>

  <Accordion title="This link expired or was already used">
    Links from `orgs_select` and `env_select` work once and expire after 10 minutes. Ask the assistant for a new link.
  </Accordion>

  <Accordion title="Signed in as another account">
    An environment switch link belongs to the email the connection is signed in with. Sign out of the console of that environment, sign in with the same email, and open the link again.
  </Accordion>

  <Accordion title="The assistant cannot find a project">
    Project IDs belong to one organization and environment. Ask the assistant to call `whoami` and list the projects again.
  </Accordion>

  <Accordion title="The Crossmint session has ended">
    A connection stays signed in for up to 30 days. When the console session ends, connect again from your client.
  </Accordion>

  <Accordion title="Too many sign-in attempts">
    Wait a few minutes, then connect again.
  </Accordion>
</AccordionGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="Tools Reference" icon="wrench" href="/mcp-server/tools">
    Every tool the Crossmint MCP server exposes
  </Card>

  <Card title="Crossmint CLI" icon="terminal" href="/cli/install">
    Manage projects and API keys from your terminal
  </Card>
</CardGroup>
