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

# BrowserOAuthOptions

Defined in: [client/browser-oauth.ts:19](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/browser-oauth.ts#L19)

## Extends

* `Omit`\<[`OAuthOptions`](/api/client/interfaces/OAuthOptions), `"callbackPort"` | `"onRedirect"`>

## Properties

### clientId?

```ts theme={null}
optional clientId?: string;
```

Defined in: [client/auth.ts:148](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/auth.ts#L148)

Pre-registered client ID. When set, Dynamic Client Registration is skipped.

#### Inherited from

[`OAuthOptions`](/api/client/interfaces/OAuthOptions).[`clientId`](/api/client/interfaces/OAuthOptions#clientid)

***

### clientMetadataUrl?

```ts theme={null}
optional clientMetadataUrl?: string;
```

Defined in: [client/auth.ts:177](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/auth.ts#L177)

Client ID Metadata Document URL (SEP-991 / CIMD) — an HTTPS URL, with a
non-root path, that serves this client's metadata document. When the
authorization server advertises `client_id_metadata_document_supported`,
the SDK's `auth()` orchestrator uses this URL directly as the `client_id`
and skips Dynamic Client Registration entirely. Falls back to normal DCR
(or `clientId`, if set) when the server doesn't support CIMD. Validated
eagerly in the constructor.

#### Inherited from

[`OAuthOptions`](/api/client/interfaces/OAuthOptions).[`clientMetadataUrl`](/api/client/interfaces/OAuthOptions#clientmetadataurl)

***

### clientName?

```ts theme={null}
optional clientName?: string;
```

Defined in: [client/auth.ts:154](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/auth.ts#L154)

Client name used in Dynamic Client Registration. Default: "FastMCP Client".

#### Inherited from

[`OAuthOptions`](/api/client/interfaces/OAuthOptions).[`clientName`](/api/client/interfaces/OAuthOptions#clientname)

***

### clientSecret?

```ts theme={null}
optional clientSecret?: string;
```

Defined in: [client/auth.ts:150](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/auth.ts#L150)

Pre-registered client secret.

#### Inherited from

[`OAuthOptions`](/api/client/interfaces/OAuthOptions).[`clientSecret`](/api/client/interfaces/OAuthOptions#clientsecret)

***

### mode?

```ts theme={null}
optional mode?: "popup" | "redirect";
```

Defined in: [client/browser-oauth.ts:32](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/browser-oauth.ts#L32)

'popup' (default) opens the authorization URL in a popup window and listens
for a postMessage from the callback page. 'redirect' navigates the whole
tab; resume with [BrowserOAuth.resumeFromRedirect](/api/client/classes/BrowserOAuth#resumefromredirect) on return.

***

### popupFeatures?

```ts theme={null}
optional popupFeatures?: string;
```

Defined in: [client/browser-oauth.ts:34](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/browser-oauth.ts#L34)

`window.open` features string for popup mode.

***

### redirectUri

```ts theme={null}
redirectUri: string;
```

Defined in: [client/browser-oauth.ts:26](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/browser-oauth.ts#L26)

Redirect URI registered with the provider. Must serve a page that calls
[handleOAuthCallback](/api/client/functions/handleOAuthCallback) (popup mode) or is your app route that reads the
returned `?code=` (redirect mode).

***

### scopes?

```ts theme={null}
optional scopes?: string | string[];
```

Defined in: [client/auth.ts:152](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/auth.ts#L152)

Requested OAuth scopes (space-separated string or array).

#### Inherited from

[`OAuthOptions`](/api/client/interfaces/OAuthOptions).[`scopes`](/api/client/interfaces/OAuthOptions#scopes)

***

### store?

```ts theme={null}
optional store?: KeyValueStore;
```

Defined in: [client/auth.ts:156](https://github.com/PrefectHQ/fastmcp-ts/blob/e4b6038f642b529f601463a576229747afebe9a4/src/client/auth.ts#L156)

Persistent key-value store for tokens, client info, and discovery state. Default: in-memory.

#### Inherited from

[`OAuthOptions`](/api/client/interfaces/OAuthOptions).[`store`](/api/client/interfaces/OAuthOptions#store)
