MCP Server
Connect your assistant to an MCP server by URL and enable tools from that server.
MCP Server is for connecting an existing Model Context Protocol server to an assistant. It is useful for CRM systems, databases, internal tools, automation services, or company-specific systems.
When Should I Use MCP Server?
Use MCP Server when:
- You already have an MCP server running and reachable by Assistant Core.
- You want one assistant to use multiple tools provided by that server.
- You want to connect or disconnect that server per assistant.
If you only need to call a simple HTTP API, Custom API Tools are usually easier to configure.
Add An MCP Server
- Open the Admin Panel.
- Select your assistant.
- Go to MCP → Remote servers.
- Click Add server.
- Enter a name and the server URL. Add authentication only if the provider requires it.
- Click Add server in the dialog. Assistant Core loads the server's tools right away.
- For OAuth servers, click Sign in on the server's row and finish signing in in the pop-up.
- Turn on Use in assistant for that server.
The row shows whether the server is connected, and why if it is not (for example Sign-in needed or Unreachable). Click the tool count to see which tools the server provides.
When the MCP is connected, the assistant can use the server's tools in chat and voice. Users do not need to name the tool; the assistant chooses it when relevant.
Choose And Review Tools
In the tools dialog (click the tool count), each tool has its own switch. Turn off any tool you do not want the assistant to call, for example one that deletes or changes data.
Assistant Core only uses a tool exactly as it was when its tools were last loaded. If the server later changes a tool's description or parameters, or adds a new tool, that tool stays off and the row shows The server changed its tools. Open the tools dialog to check what changed, then click Refresh tools in the row's menu to accept it. Tools that did not change keep working the whole time.
This protects your assistant from a server that changes its tools after you approved them, for example to slip in hidden instructions. Tool results from MCP servers are also passed to the AI model marked as untrusted data.
Fields
| Field | Meaning |
|---|---|
| Name | A recognizable name for the MCP server |
| Description | What the server's tools can do |
| Server URL | URL of the MCP server |
| Transport | Shown only for servers saved with the deprecated SSE transport, so you can switch them to HTTP (streamable-http) |
| Auth Type | Authentication type if your server requires it |
| Credential | Token, API key, or username:password (see table below) |
| Header Name | Custom header name (for API Key or Custom Header auth) |
| Icon URL | Optional icon shown in the admin UI |
Transport
| Transport | Description | When to use |
|---|---|---|
| SSE | Server-Sent Events — the default MCP transport | Most current MCP servers |
| HTTP | Streamable HTTP — newer MCP transport (2025+) | MCP servers supporting streamable-http |
Authentication
Many MCP servers require authentication. The platform supports 5 auth types:
| Auth Type | What to enter | Header generated |
|---|---|---|
| None | (nothing) | (no header sent) |
| Bearer | Token (e.g. sk-abc123) | Authorization: Bearer sk-abc123 |
| API Key | API key value | X-API-Key: <value> (or custom header) |
| Basic | username:password | Authorization: Basic <base64 encoded> |
| Custom Header | Header value | <Header Name>: <value> |
Credentials are AES-256 encrypted before being stored in the database. The Admin UI never displays saved credentials — it only shows a "Credential saved (encrypted)" indicator.
Authentication Examples
MCP server using a Bearer token:
| Field | Value |
|---|---|
| Auth Type | Bearer |
| Credential | your-api-token-here |
MCP server using an API Key with a custom header:
| Field | Value |
|---|---|
| Auth Type | API Key |
| Credential | abc123-your-key |
| Header Name | X-Custom-API-Key |
When updating an MCP server, leaving the credential field empty keeps the existing credential. Only enter a new value when you want to replace it.
Created Vs Connected
Creating an MCP saves it and attaches it to the assistant. It is only used in conversations after it is connected.
| State | Meaning |
|---|---|
| Created | The MCP is saved and attached to the assistant |
| Connected | The assistant connects to this MCP and can use its tools |
| Disconnected | The MCP remains in the list, but the assistant does not use it in conversations |
How MCP Tools Are Used
When an MCP is connected:
- Assistant Core connects to the MCP server (via SSE or HTTP).
- Auth headers are injected automatically if configured.
- The server returns its tool list.
- Tools that are switched on and unchanged since the last Refresh tools become available in the chat or voice session.
- If the user asks for a matching task, the assistant calls the tool.
- The assistant summarizes the result for the user.
Example Use Cases
| Need | Possible MCP tools |
|---|---|
| Customer lookup | find_customer, list_recent_orders |
| Database access | query_sales_report, lookup_invoice |
| Task management | create_ticket, update_task_status |
| Internal operations | restart_service, get_service_health |
| Travel services | search_flights, search_hotels, search_places |
Troubleshooting
| Issue | Check |
|---|---|
| MCP tools are not visible | Make sure the MCP is Connected and the tool is switched on in the tools dialog |
| Row says the server changed its tools | Check the tools dialog, then click Refresh tools to accept the new versions |
| Connection fails | Confirm the Server URL is reachable from the backend |
| Authentication fails | Verify the auth type and credential are correct. Try entering a new credential |
| Tool call fails | Check the MCP server parameter schema and server logs |
| Assistant does not use the tool | Improve the tool description or add guidance to the system prompt |