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

# API Reference

> Complete API reference for the mcp-use TypeScript SDK, including server, client, agent, and React APIs.

This is the reference for building MCP servers, clients, agents, and React integrations in TypeScript with `mcp-use`. It documents public exports with exact signatures, parameters, return values, defaults, and minimal examples.

For task-based walkthroughs and concepts, use the [Docs](https://docs.mcp-use.com/v1/typescript/server.md) tab. This section is the precise reference you cite when you already know what you are building.

## Install

```bash theme={null}
npm install mcp-use @mcp-use/client @mcp-use/agent
```

## CLI

The `@mcp-use/cli` package installs the `mcp-use` executable for local development, production builds, deployment, tunneling, type generation, and terminal-based MCP client workflows.

> [card] [mcp-use CLI](https://docs.mcp-use.com/v1/typescript/api-reference/cli-reference.md)
>
> Command reference for `mcp-use dev`, `build`, `start`, `deploy`, `client`,
> `servers`, `deployments`, and `generate-types`.

> [card] [CLI client](https://docs.mcp-use.com/v1/typescript/tooling/client-cli.md)
>
> Use `mcp-use client` to connect to MCP servers, call tools, read resources,
> get prompts, and capture widget screenshots.

## Import paths

The TypeScript SDK ships from several entry points. Use the entry point that matches where your code runs.

| Import path | Use it to |
| - | - |
| `mcp-use` | Create servers, register tools, resources, and prompts, and handle auth, sessions, middleware, and MCP Apps resources. |
| `@mcp-use/client` | Create Node.js or browser MCP clients, enable Code Mode, and use client helpers. |
| `@mcp-use/client/react` | Manage React client connections. |
| `@mcp-use/agent` | Create LangChain-powered MCP agents. |
| `mcp-use/react` | Build React widget UIs that render inside MCP Apps and ChatGPT. |

> [!NOTE]
>
> Create a server with `new MCPServer({ ... })`. See the [MCPServer](https://docs.mcp-use.com/v1/typescript/api-reference/server/mcp-server.md) reference for the constructor and all of its methods.

## Server (`mcp-use/server`)

> [card] [MCPServer](https://docs.mcp-use.com/v1/typescript/api-reference/server/mcp-server.md)
>
> The server class: construct, register, and start a server.

> [card] [ServerConfig](https://docs.mcp-use.com/v1/typescript/api-reference/server/server-config.md)
>
> Every configuration option for `new MCPServer`.

> [card] [Tools](https://docs.mcp-use.com/v1/typescript/api-reference/server/tools.md)
>
> `tool()` and the tool definition, callback, and annotation types.

> [card] [Resources](https://docs.mcp-use.com/v1/typescript/api-reference/server/resources.md)
>
> `resource()`, `resourceTemplate()`, and their callbacks.

> [card] [Prompts](https://docs.mcp-use.com/v1/typescript/api-reference/server/prompts.md)
>
> `prompt()`, prompt types, and argument completion.

> [card] [Tool context (ctx)](https://docs.mcp-use.com/v1/typescript/api-reference/server/tool-context.md)
>
> The `ctx` object: sample, elicit, log, progress, client, session.

> [card] [Response helpers](https://docs.mcp-use.com/v1/typescript/api-reference/server/response-helpers.md)
>
> `text`, `object`, `image`, `widget`, `mix`, and the rest.

> [card] [Elicitation schemas](https://docs.mcp-use.com/v1/typescript/api-reference/server/elicitation-schemas.md)
>
> Migrate v1 enum elicitation helpers to Zod.

> [card] [Authentication](https://docs.mcp-use.com/v1/typescript/api-reference/server/auth.md)
>
> `getAuth`, scope checks, and the JWT verifier.

> [card] [OAuth providers](https://docs.mcp-use.com/v1/typescript/api-reference/server/auth-providers.md)
>
> Provider factories and the OAuth proxy.

> [card] [Sessions and streams](https://docs.mcp-use.com/v1/typescript/api-reference/server/sessions.md)
>
> Pluggable session stores and stream managers.

> [card] [Middleware and proxy](https://docs.mcp-use.com/v1/typescript/api-reference/server/middleware.md)
>
> Operation middleware, framework adapters, and the CORS proxy.

> [card] [MCP Apps](https://docs.mcp-use.com/v1/typescript/api-reference/server/widgets.md)
>
> UI resource builders, protocol adapters, and landing pages.

## Client (`@mcp-use/client`, `@mcp-use/client/react`)

> [card] [MCPClient](https://docs.mcp-use.com/v1/typescript/api-reference/client/mcp-client.md)
>
> Configure servers and create normalized connections in any supported
> runtime.

> [card] [MCPConnection](https://docs.mcp-use.com/v1/typescript/api-reference/client/mcp-session.md)
>
> Unified v1 and v2 protocol calls, metadata, and capabilities.

> [card] [Code Mode](https://docs.mcp-use.com/v1/typescript/api-reference/client/code-mode.md)
>
> Code execution options, methods, executor classes, and result types.

> [card] [React client](https://docs.mcp-use.com/v1/typescript/api-reference/client/react-client.md)
>
> `McpClientProvider`, `useMcpClient()`, `useMcpServer()`, `useMcp()`, and
> storage providers.

## React widget UI (`mcp-use/react`)

> [card] [useWidget()](https://docs.mcp-use.com/v1/typescript/api-reference/react/usewidget.md)
>
> The universal hook for MCP Apps and Apps SDK widgets.

> [card] [useCallTool()](https://docs.mcp-use.com/v1/typescript/api-reference/react/usecalltool.md)
>
> Call MCP tools from a widget, with optional typed helpers.

> [card] [useViewState()](https://docs.mcp-use.com/v1/typescript/api-reference/react/useviewstate)
>
> Share structured model-visible state across components in one view.

> [card] [useFiles()](https://docs.mcp-use.com/v1/typescript/api-reference/react/usefiles.md)
>
> Upload and manage files from a widget.

> [card] [McpUseProvider](https://docs.mcp-use.com/v1/typescript/api-reference/react/mcpuseprovider.md)
>
> Provider that wires up the widget runtime and auto-sizing.

> [card] [WidgetControls](https://docs.mcp-use.com/v1/typescript/api-reference/react/widgetcontrols.md)
>
> Built-in debug and view controls.

> [card] [ThemeProvider](https://docs.mcp-use.com/v1/typescript/api-reference/react/themeprovider.md)
>
> Apply host theme variables to a widget.

> [card] [ErrorBoundary](https://docs.mcp-use.com/v1/typescript/api-reference/react/errorboundary.md)
>
> Catch and display widget render errors.

> [card] [Image](https://docs.mcp-use.com/v1/typescript/api-reference/react/image.md)
>
> Render images with correct host URLs.

> [card] [ModelContext](https://docs.mcp-use.com/v1/typescript/api-reference/react/modelcontext.md)
>
> Expose widget context to the model.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.