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

# MCP (Model Context Protocol)

> The MCP connector enables integration of MCP servers (Model Context Protocol) as LLM functions. MCP is a standard protocol for communication between LLMs and external services.

<Tip>Homepage > "Admin Menu" > "Connectors" > "MCP" tab</Tip>

## Overview

The Model Context Protocol (MCP) is a standard protocol for communication between LLMs and external services. The MCP connector allows you to connect MCP servers and use their tools as LLM functions.

<Info>
  **Info:** MCP servers provide tools (functions) that can be called by LLMs.
  These tools can retrieve data, perform actions, or integrate external
  services.
</Info>

***

## Features Overview

* **MCP Server Connection**: Connect to MCP servers via HTTP
* **Automatic Tool Detection**: Tools are automatically retrieved from the server
* **Authentication**: Support for API Key and OAuth 2.0
* **Tool Synchronization**: Automatic synchronization of tools from the server
* **Test Interface**: Integrated tester for testing tool calls
* **OAuth Flow**: Full support for OAuth 2.0 Authorization Flow

***

## Creating an MCP Configuration

When creating a new MCP configuration, the following options are available:

### 1. **Title**

Freely selectable name to identify the configuration, e.g., *GitHub MCP Server* or *Custom MCP Service*.

### 2. **Server URL**

The complete URL of the MCP server, e.g., `https://mcp.example.com/api`.

{" "}

<Note>
  **Note:** The server must support MCP protocol version 2025-03-26 or higher.
</Note>

### 3. **Transport**

Currently only HTTP transport is supported (`http`).

### 4. **Timeout**

Timeout for connections in seconds (default: 30 seconds).

### 5. **Authentication**

Supported authentication types:

* **No Authentication** (`none`)

  * For public MCP servers without authentication

* **API Key** (`api_key`)

  * **API Key**: The API key value
  * Sent in the `Authorization` header

* **OAuth 2.0** (`oauth`)

  * **Authorization URL**: URL for the OAuth authorization endpoint
  * **Token URL**: URL for the OAuth token endpoint
  * **Client ID**: OAuth Client ID (optional, can be dynamically registered)
  * **Client Secret**: OAuth Client Secret (optional)
  * **Scopes**: Desired OAuth scopes

  <Info>
    **Info:** If Authorization URL and Token URL are not provided, an attempt is
    made to automatically discover them from the server (Authorization Server
    Discovery).
  </Info>

  <Info>
    **Info:** If no Client ID is present and the server supports Dynamic Client
    Registration, an attempt is automatically made to register a client.
  </Info>

### 6. **OAuth Flow**

When using OAuth 2.0:

1. **Start Authorization**: Click "Start OAuth" to begin the authorization flow
2. **Authorization**: You will be redirected to the authorization server
3. **Callback**: After authorization, you will be redirected back and the token will be automatically saved
4. **Token Refresh**: Access tokens are automatically renewed if a refresh token is available

***

## Managing Tools

After connecting to an MCP server, the available tools can be synchronized.

### Tool Synchronization

1. **Test Connection**: Click "Test Connection" to check the connection to the server
2. **Synchronize Tools**: Click "Synchronize Tools" to retrieve all available tools from the server
3. **Automatic Updates**: Tools are automatically updated when the server configuration changes

### Tool Details

Each tool contains:

* **Name**: The function name for the LLM
* **Description**: Description of the function for the LLM
* **Input Schema**: JSON Schema for the tool parameters

### Testing Tools

You can test each tool directly via the integrated test interface:

1. Select a tool
2. Fill in the required parameters
3. Click "Test"
4. The response is displayed with the result

***

## Providing MCP Tools as Connectors

After creating an MCP configuration and synchronizing tools, you can use these tools as connectors in your assistants.

### Creating a Connector

1. **Edit Assistant**: Open the assistant configuration
2. **Add Connector**: Add a new connector
3. **Select MCP Tools**: Select the desired MCP tools from the list
   * You can select tools from different MCP configurations
   * Each tool is provided as a separate LLM function
4. **Save**: Save the connector configuration

<Info>
  **Info:** MCP tools are automatically converted to LLM functions. The LLM can
  call these functions during conversation to retrieve data or perform actions.
</Info>

### Tool Selection

* **Multiple Selection**: You can select multiple tools from different MCP servers
* **Search**: Use the search function to quickly find tools
* **Filtering**: Tools are displayed grouped by MCP configuration

### How It Works

When an assistant is configured with MCP tools:

1. The tools are provided to the LLM as available functions
2. The LLM can call these functions based on the user's request
3. The tool calls are forwarded to the corresponding MCP server
4. The responses are provided to the LLM and integrated into the conversation
