# Connect an MCP server

> Point Spiich at an external Model Context Protocol server over HTTPS and the assistant can call that service's tools inside Chat. Connections are either private to you or shared with the whole workspace.

- Source: https://spiich.ai/help/connect-your-tools/connect-mcp-servers
- Section: Connect your tools
- Who can do this: Everyone
- Time: 2 to 3 minutes
- Last updated: 2026-08-24

## Before you start

- The server has a public HTTPS address, speaks MCP over streamable HTTP, and exposes at least one tool.

MCP, the Model Context Protocol, is an open standard that lets an outside service publish tools an AI assistant can call. Connect one to Spiich and the assistant can use that service inside Chat alongside your CRM.

## Add a connection

1. **Open the MCP section**
   Go to [`Settings > Integrations`](https://app.spiich.ai/settings/integrations) and scroll to **Model Context Protocol**. You can also get there from the Chat composer: **Tools**, then **Manage MCP connections**.

2. **Choose personal or shared**
   Click **Add** under **Your connections** for a connection only you can use, or under **Workspace connections** to share it with everyone.

3. **Name it**
   Enter a **Name**. This is the label you will see in Chat when the assistant uses the server, so keep it short and distinctive. Names are capped at 80 characters.

4. **Paste the Server URL**
   Enter the server's streamable HTTP endpoint, for example the address a provider publishes as its MCP endpoint. It must start with `https://`.

5. **Pick how it authenticates**
   Choose **None**, **Bearer token** and paste the token the provider issued you, or **OAuth** to be sent to the provider's own consent screen.

6. **Add the connection**
   Click **Add connection**, or **Continue to authorize** for OAuth. Spiich connects once to verify the server and list its tools, then confirms with *Connection added*.

7. **Check the switch is on**
   The row shows the server's host name and how many tools it offered. Make sure the switch on the row is on, which is what makes the tools available to the assistant.

An OAuth connection sits in an `Authorizing` state while you are away at the provider. It cannot be switched on until the handshake finishes. If it comes back *Authorization failed*, remove the row and try again, or use a bearer token instead: not every provider offers OAuth for MCP.

## Personal versus workspace connections

| | Your connections | Workspace connections |
| --- | --- | --- |
| Who sees it | Only you | Everyone in the workspace |
| Who can use its tools | Only your assistant | Anyone's assistant |
| Who can add one | You | Any active workspace member |
| Who can switch it on or off | You | Only the person who added it |
| Who can remove it | You | Only the person who added it |

No admin approval is required for either kind. Shared rows show who added them, and turning one off or removing it takes effect for the whole workspace immediately. If you need a shared connection changed and you did not create it, ask the person named on the row or add your own copy.

## What enabling a connection actually grants

This is the part to read twice.

> **Careful:** Enabling a connection gives Chat **every tool that server exposes**. There is no per-tool approval, no allowlist, and no confirmation prompt before an individual tool runs. A server that offers write or destructive actions is trusted as a whole, so connect servers you would trust with the data they can reach.

Two practical consequences. First, prefer a personal connection while you are trying a server out, and promote it to a workspace connection once you know what it does. Second, if a server exposes tools whose names collide with another server's, switch off the one you do not need for that task so the assistant is not choosing between two identically named tools.

When the assistant does use a server, the chat shows a tool row labelled with your connection name and a plain-language action, so you can always see which server answered.

## The rules the form enforces

- **HTTPS only.** A plain `http://` address is refused with *MCP URL must use HTTPS.*
- **Public internet only.** The address must resolve to a public address. Localhost, loopback, private networks, link-local, cloud metadata and reserved ranges are all rejected. Internal-only MCP servers cannot be connected.
- **No credentials in the URL.** A username or password embedded in the address is refused with *MCP URL cannot include credentials.* Put the token in the **Bearer token** field instead. Browser autofill is the usual culprit here.
- **At least one tool.** A server that responds correctly but lists no tools is refused with *MCP server did not expose any tools.*
- **Tools only.** Spiich uses MCP tools. MCP resources, prompts and other capabilities are not used.
- **Name under 80 characters.**

## Limits

- Spiich waits up to 30 seconds when first probing a server for its tool list.
- At most 50 connections per person are made available to the assistant in a single request; beyond that the most recently added are used.
- Bearer tokens and OAuth credentials are encrypted before they are stored and are never returned to the browser or included in API responses.
- Removing a connection deletes the credentials Spiich holds, but does not revoke the token or OAuth grant at the provider. Revoke it there too if you want it fully cut off.

## If something goes wrong

**A connection is stuck on `Authorizing`.** The OAuth handshake never finished, usually because the tab was closed or consent was declined. Open the row's menu, choose **Remove**, then add it again and complete the provider's screen.

**The assistant ignores a connection that is in the list.** Its switch is off, so it is hidden from agents, or it is still authorizing. Turn the switch on in `Settings > Integrations`.

**A teammate's shared connection has greyed-out controls.** Only the person who added a connection can enable, disable or remove it. Ask whoever is named as **Added by** on the row.

**The bearer token field says it is required though you typed one.** The field holds only spaces, or Authentication was switched away from **Bearer token** after typing. Select Bearer token again and paste with no leading or trailing spaces.

## Frequently asked questions

### Can I connect an MCP server running inside our own network?

No. A server URL must resolve to a public internet address over HTTPS. Localhost, loopback, private ranges, link-local and cloud metadata addresses are all refused, so internal-only servers cannot be connected today.

### Can I allow only some of a server's tools?

No. Control is at the connection level: the switch turns the whole server on or off for the assistant. There is no per-tool allowlist and no prompt before a tool runs, which is why it is worth trusting the server as a whole before enabling it.

### Do I need to be an admin to add one?

No. Any active workspace member can add a personal connection or a workspace connection, with no admin approval. Only the person who added a connection can switch it off or remove it, including shared ones.

### What happens to my token if I remove a connection?

Spiich deletes the credentials it stored and the assistant loses access immediately. It does not revoke the token or the OAuth grant at the provider, so revoke it there as well if you want access fully cut off.

## Related

- [Chat basics](https://spiich.ai/help/chat-and-voice/chat-basics)
- [What Spiich will and will not do on its own](https://spiich.ai/help/chat-and-voice/what-spiich-does-on-its-own)
- [Connect your CRM](https://spiich.ai/help/connect-your-tools/connect-your-crm)
- [All Spiich integrations](https://spiich.ai/integrations)
- [Trust and security at Spiich](https://spiich.ai/trust)
