Перейти к содержимому

Model Context Protocol

Интеграция MCP серверов в n8n для расширения возможностей AI агентов

Model Context Protocol (MCP) — это открытый протокол для подключения AI моделей к внешним источникам данных и инструментам.

Стандартизация

Единый протокол для всех интеграций

Безопасность

Контролируемый доступ к ресурсам

Расширяемость

Легко добавлять новые серверы

Экосистема

Большое сообщество и готовые серверы

Нода для подключения MCP серверов к AI Agent:

  1. Добавьте AI Agent

    Создайте AI Agent ноду с моделью

  2. Добавьте MCP Client Tool

    Подключите к Tools входу агента

  3. Настройте подключение

    Укажите способ запуска MCP сервера

  4. Протестируйте

    Запустите агента с запросом

Для MCP серверов, работающих по HTTP:

ПараметрОписание
SSE URLURL сервера (например, http://localhost:3000/sse)
API KeyКлюч авторизации (если требуется)

Для локальных MCP серверов:

ПараметрОписание
CommandКоманда запуска (например, npx)
ArgumentsАргументы (например, -y @modelcontextprotocol/server-filesystem)
EnvironmentПеременные окружения
Окно терминала
npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory

Возможности:

  • Чтение файлов
  • Запись файлов
  • Листинг директорий
  • Поиск по содержимому
Окно терминала
npx -y @modelcontextprotocol/server-postgres postgresql://user:pass@host:5432/db

Возможности:

  • Выполнение SQL запросов
  • Описание схемы
  • Просмотр таблиц
Окно терминала
npx -y @modelcontextprotocol/server-github

Требует: GITHUB_PERSONAL_ACCESS_TOKEN

Возможности:

  • Работа с репозиториями
  • Issues и Pull Requests
  • Поиск кода
Окно терминала
npx -y @modelcontextprotocol/server-slack

Требует: SLACK_BOT_TOKEN, SLACK_TEAM_ID

Возможности:

  • Отправка сообщений
  • Чтение каналов
  • Поиск
Окно терминала
npx -y @modelcontextprotocol/server-puppeteer

Возможности:

  • Навигация по страницам
  • Скриншоты
  • Извлечение контента
Connection Type: STDIO
Command: npx
Arguments: ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/documents"]
Connection Type: STDIO
Command: npx
Arguments: ["-y", "@modelcontextprotocol/server-postgres"]
Environment:
DATABASE_URL: postgresql://user:pass@localhost:5432/mydb
Connection Type: SSE
URL: https://my-mcp-server.example.com/sse
Headers:
Authorization: Bearer my-api-key
  • Указывайте минимально необходимые пути
  • Используйте read-only режим где возможно
  • Ограничивайте SQL операции
❌ Не храните секреты в workflow
✅ Используйте переменные окружения n8n

MCP серверы работают в отдельных процессах, но:

  • Filesystem сервер имеет доступ к указанным путям
  • Database сервер может выполнять любые SQL
  • Puppeteer сервер может посещать любые сайты

Агент читает документацию из файлов и отвечает на вопросы.

Агент анализирует данные, выполняя SQL запросы.

Агент собирает информацию из веб-страниц.

import { Server } from '@modelcontextprotocol/sdk/server';
const server = new Server({
name: 'my-server',
version: '1.0.0'
});
server.setRequestHandler('tools/list', async () => ({
tools: [{
name: 'my_tool',
description: 'My custom tool',
inputSchema: { type: 'object', properties: {} }
}]
}));
server.setRequestHandler('tools/call', async (request) => {
// Handle tool call
return { content: [{ type: 'text', text: 'Result' }] };
});
from mcp.server import Server
server = Server("my-server")
@server.list_tools()
async def handle_list_tools():
return [
{"name": "my_tool", "description": "My custom tool"}
]
@server.call_tool()
async def handle_call_tool(name: str, arguments: dict):
return {"content": [{"type": "text", "text": "Result"}]}

Дополнительная документация по MCP:

РесурсОписание
mcpdoc.ruРусскоязычная документация MCP
MCP SpecСпецификация протокола
GitHub MCPОфициальные серверы
  • MCP серверы — каталог популярных серверов
  • RAG — работа с документами
  • AI Agent — создание агентов