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

# Custom MCP server

> Connect an MCP server you choose, then let a Persona use its tools.

A custom MCP server gives a Persona tools that webAI does not ship. You can connect to a remote server by its URL, or run a server on this Mac with a command. Add servers in **Settings → Connectors** under **Custom Servers**, then add each one to the Persona that should use it.

> [!WARNING]
>
> A custom server is third-party code that you choose to connect to or run. What a Persona sends to its tools is handled by that server, not by webAI. A local command runs on this Mac with your permissions. Add a server when you trust its source.

Custom servers need a Tier 2 or higher Mac. See [System requirements](https://developers.webai.com/getting-started/system-requirements.md).

## Add a server

**1. Open Custom Servers**

Click your name at the bottom of the sidebar, then **Settings**, then **Connectors**. Find **Custom Servers** and click **Add server**.

**2. Fill in the server**

Enter a display name. Choose **Remote (HTTP)** or **Local command**, then fill in the fields for that type. See [Server fields](#server-fields).

**3. Save it**

Click **Add server**. The row shows **Syncing…** while webAI reaches the server, then **Ready** and the number of tools it found.

> [!NOTE]
>
> **Unavailable** means webAI could not reach the server. If the row says the server requires OAuth, it needs a sign-in that custom servers do not support yet.

**4. Add it to a Persona**

Click **Personas** in the left sidebar. On the list, open the card menu and click **Edit**. Click **Abilities**. Under **Connectors**, click **Add**, then click **Add** on the server name.

**5. Ask in Chat**

Open that Persona and ask for what the server does. The model picks the tool. You do not type the tool name.

## Server fields

> [tab] Remote (HTTP)
>
> Enter the server's URL. If the server needs a token, paste it in the token field. webAI sends it in the `Authorization` header as `Bearer <token>` unless you change the header name or scheme. Leave the scheme blank to send the token alone. The token is stored in the system keychain.

> [tab] Local command
>
> Enter the command, such as `npx`, and its arguments separated by spaces. Wrap an argument in double quotes if it contains a space. Use an absolute path if the command is not on your PATH. Click **Add environment variable** for each value the server needs, such as an API token. Values are stored in the system keychain and passed to the command when it runs.

To change a server later, click **Edit** on its row, then **Save changes**. You cannot switch a saved server between **Remote (HTTP)** and **Local command**. Remove it and add it again instead.

## Control what a server can do

Click **Tools** on a server row to review what it offers. Each tool shows **Write** or **Read-only**.

* **Write action** lets the Persona use the tools the server marks as writes. Turn it off to hold those tools back.
* **Always ask** stops for your approval before each write runs. **Always allow** runs writes without asking.
* **Treat as a write tool** on one tool makes it ask for approval every time, even when the server is set to **Always allow**.

Read-only tools run without asking. Turn on **Treat as a write tool** for any tool that changes something but is not marked as a write.

Use the switch on a server row to turn it off without removing it. Click **Remove** to delete the server along with its stored token and environment variables.


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