> ## Documentation Index

> Fetch the complete documentation index at: /llms.txt

> Use this file to discover all available pages before exploring further.

Skip to main content
CLI

# Auth Utilities

Create and validate CIMD documents for OAuth

New in version `3.0.0` The `fastmcp auth` commands help with CIMD (Client ID Metadata Document) management — part of MCP’s OAuth authentication flow. A CIMD is a JSON document you host at an HTTPS URL to identify your client application to MCP servers.

##
​
Creating a CIMD

`fastmcp auth cimd create` generates a CIMD document:

    fastmcp auth cimd create \
      --name "My App" \
      --redirect-uri "http://localhost:*/callback"

    {
      "client_id": "https://your-domain.com/oauth/client.json",
      "client_name": "My App",
      "redirect_uris": ["http://localhost:*/callback"],
      "token_endpoint_auth_method": "none"
    }

The generated document includes a placeholder `client_id` — update it to match the URL where you’ll host the document before deploying.

###
​
Options

Option | Flag | Description
--- | --- | ---
Name | `--name` | Required. Human-readable client name
Redirect URI | `--redirect-uri` | Required. Allowed redirect URIs (repeatable)
Client URI | `--client-uri` | Client’s home page URL
Logo URI | `--logo-uri` | Client’s logo URL
Scope | `--scope` | Space-separated list of scopes
Output | `--output`, `-o` | Save to file (default: stdout)
Pretty | `--pretty` | Pretty-print JSON (default: true)

###
​
Example

    fastmcp auth cimd create \
      --name "My Production App" \
      --redirect-uri "http://localhost:*/callback" \
      --redirect-uri "https://myapp.example.com/callback" \
      --client-uri "https://myapp.example.com" \
      --scope "read write" \
      --output client.json

##
​
Validating a CIMD

`fastmcp auth cimd validate` fetches a hosted CIMD and verifies it conforms to the spec:

    fastmcp auth cimd validate https://myapp.example.com/oauth/client.json

The validator checks that the URL is valid (HTTPS, non-root path), the document is valid JSON, the `client_id` matches the URL, and no shared-secret auth methods are used. On success:

    → Fetching https://myapp.example.com/oauth/client.json...
    ✓ Valid CIMD document

    Document details:
      client_id: https://myapp.example.com/oauth/client.json
      client_name: My App
      token_endpoint_auth_method: none
      redirect_uris:
        • http://localhost:*/callback

Option | Flag | Description
--- | --- | ---
Timeout | `--timeout`, `-t` | HTTP request timeout in seconds (default: 10)

Generate CLI
Previous
Upgrading from FastMCP 2
Next
Ctrl+I
Assistant
Responses are generated using AI and may contain mistakes.
\n\n
\n
\n \n
\n
","contacts":" \n
\n\n Prefab\n \n \n \n \n\n
\n
\n \n
\n
","dashboard":" \n
\n\n Prefab\n \n \n \n \n\n
\n
\n \n
\n
","data-table":" \n
\n\n Prefab\n \n \n \n \n\n
\n
\n \n
\n
","hitchhikers":" \n
\n\n Prefab Showcase\n \n \n \n \n\n
\n
\n \n
\n
","pie-chart":" \n
\n\n Prefab\n \n \n \n \n\n
\n
\n \n
\n
","reactive":" \n
\n\n Prefab\n \n \n \n \n\n
\n
\n \n
\n
","team-directory-reactive":" \n
\n\n Prefab\n \n \n \n \n\n
\n
\n \n
\n
","team-directory":" \n
\n\n Prefab\n \n \n \n \n\n
\n
\n \n
\n
"};