Remote MCP Server
Сервер Snappy MCP с интеграцией Xano
Удаленный сервер MCP, построенный на Cloudflare Workers с интеграцией базы данных Xano для управления инструментами, отслеживания сеансов и OAuth. Теперь с полной поддержкой новейшего транспортного протокола Streamable HTTP (2024-11-05).
Развивайтесь локально
# clone the repository
git clone https://github.com/roboulos/remote-mcp-server.git
# install dependencies
cd remote-mcp-server
npm install
# Configure Xano API Key
# Add your Xano API key to wrangler.jsonc in the XANO_API_KEY variable
# run locally
npm run devВы должны иметь возможность открыть http://localhost:8787/ в своем браузере.
Related MCP server: Remote MCP Server on Cloudflare
Подключитесь к вашему MCP-серверу
Использование MCP Inspector (устаревшая версия)
Чтобы исследовать новый API MCP с помощью старого транспорта SSE, вы можете использовать MCP Inspector .
Запустите его с помощью
npx @modelcontextprotocol/inspectorВ инспекторе измените тип транспорта на
SSEи введитеhttp://localhost:8787/sseв качестве URL-адреса сервера MCP для подключения, затем нажмите «Подключиться».Вы перейдете на экран входа в систему (фиктивный) пользователя/пароля. Введите любой адрес электронной почты и пароль для входа.
Вас перенаправят обратно в MCP Inspector, и теперь вы сможете просматривать и вызывать любые определенные инструменты!
Использование Workers AI Playground (потоковый HTTP)
Для тестирования с использованием новейшего транспортного протокола Streamable HTTP:
Посетите игровую площадку Workers AI
При появлении запроса на подключение к серверу MCP введите URL-адрес конечной точки:
https://remote-mcp-server.robertjboulos.workers.dev/mcpили для локального тестирования:
http://localhost:8787/mcpПри появлении соответствующего запроса введите учетные данные для аутентификации:
auth_token : Ваш токен аутентификации Xano
user_id : Ваш идентификатор пользователя Xano
Playground будет автоматически управлять сеансами с использованием нового протокола.
Подключите Claude Desktop к локальному серверу MCP
Устаревший транспорт SSE
Чтобы подключиться с использованием старого транспорта SSE, следуйте краткому руководству Anthropic и в Claude Desktop перейдите в Настройки > Разработчик > Изменить конфигурацию, чтобы найти файл конфигурации.
Откройте файл в текстовом редакторе и замените его следующей конфигурацией:
{
"mcpServers": {
"math": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8787/sse"
]
}
}
}Это запустит локальный прокси-сервер и позволит Клоду взаимодействовать с вашим сервером MCP по протоколу HTTP.
Потоковый HTTP-транспорт (рекомендуется)
Чтобы использовать новый, более эффективный потоковый HTTP-транспорт с Claude Desktop, обновите конфигурацию, чтобы вместо этого использовать конечную точку /mcp :
{
"mcpServers": {
"xano": {
"remoteUrl": "http://localhost:8787/mcp",
"auth": {
"type": "bearer",
"token": "YOUR_XANO_AUTH_TOKEN"
},
"headers": {
"x-user-id": "YOUR_USER_ID"
}
}
}
}Замените YOUR_XANO_AUTH_TOKEN и YOUR_USER_ID своими реальными учетными данными.
Когда вы открываете Claude, должно открыться окно браузера, позволяющее вам войти в систему. Вы должны увидеть доступные инструменты в правом нижнем углу. Получив правильный запрос, Claude должен попросить вызвать инструмент.
Интеграция Xano
Этот сервер MCP использует Xano в качестве бэкэнда для:
Управление инструментами : определите инструменты в таблице
____mcp_toolsXano, и они будут автоматически зарегистрированы на сервере MCP.Отслеживание сеансов : все сеансы MCP отслеживаются в таблице
___mcp_sessionsс уникальными идентификаторами сеансов.Аутентификация OAuth : токены и состояния OAuth хранятся в таблицах Xano
___oauth_tokensи___oauth_statesВедение журнала : все запросы MCP регистрируются в таблице
___mcp_logs
Реализация потокового HTTP
На этом сервере реализована новейшая модель контекстного протокола потоковой передачи HTTP (2024-11-05) со следующими функциями:
Методы аутентификации
Сервер поддерживает несколько механизмов аутентификации для максимальной совместимости:
Параметры URL :
?auth_token=xxx&user_id=yyy(устаревший метод)Заголовок авторизации :
Authorization: Bearer xxxс заголовкомx-user-id(современный метод)Текст запроса : параметры аутентификации могут быть включены в полезную нагрузку инициализации.
Управление сеансом
Сервер обрабатывает идентификаторы сеансов в соответствии с последней спецификацией:
Создание сеанса : сервер генерирует уникальный идентификатор сеанса для новых подключений.
Отслеживание сеанса : клиенты сохраняют этот идентификатор и включают его в будущие запросы как
?sessionId=xxxСохранение состояния : каждый сеанс сохраняет свое состояние в Xano, которое сохраняется между запросами.
Соответствие протоколу
Реализация включает в себя надлежащую поддержку:
Унифицированная конечная точка сообщения : поддержка шаблона конечной точки
/mcp/messageЗаголовки протокола : все ответы включают соответствующие заголовки, такие как
MCP-Available-TransportsSSE Streaming : улучшенная поддержка SSE для потоковых ответов
Формат ответа : стандартный формат JSON-RPC 2.0 с расширениями, специфичными для протокола.
Настройка Xano
Создайте проект Xano с необходимыми таблицами (см. схему базы данных)
Создайте конечные точки API для:
/api/tools- GET - Список всех инструментов/api/tools/execute/{tool_name}- POST - Выполнить определенный инструмент/api/sessions- POST - Создать новый сеанс/api/sessions/update-activity- PUT - Обновление активности сеанса/api/oauth/tokens- POST - Сохранить токены OAuth/api/oauth/tokens/{user_id}/{provider}- GET - Получить токены OAuth/api/oauth/states- POST - Сохранение состояний OAuth/api/oauth/states/{state}- GET - Проверка состояний OAuth/api/logs- POST - Журнал запросов MCP
Развертывание в Cloudflare
npx wrangler kv namespace create OAUTH_KVСледуйте инструкциям, чтобы добавить идентификатор пространства имен kv в
wrangler.jsoncДобавьте свой ключ API Xano в переменную
XANO_API_KEYвwrangler.jsoncnpm run deploy
Вызовите недавно развернутый удаленный сервер MCP с удаленного клиента MCP
Так же, как вы делали выше в разделе «Локальная разработка», запустите инспектор MCP:
npx @modelcontextprotocol/inspector@latest
Затем введите URL-адрес workers.dev (например: worker-name.account-name.workers.dev/sse ) вашего Worker в инспекторе в качестве URL-адреса сервера MCP для подключения и нажмите «Подключиться».
Теперь вы подключились к своему серверу MCP с удаленного клиента MCP.
Подключите Claude Desktop к удаленному серверу MCP
Обновите файл конфигурации Claude, чтобы он указывал на URL-адрес вашего workers.dev (например: worker-name.account-name.workers.dev/sse ), и перезапустите Claude.
{
"mcpServers": {
"math": {
"command": "npx",
"args": [
"mcp-remote",
"https://worker-name.account-name.workers.dev/sse"
]
}
}
}Отладка
Если что-то пойдет не так, может быть полезно перезапустить Claude или попробовать подключиться напрямую к вашему серверу MCP через командную строку с помощью следующей команды.
npx mcp-remote http://localhost:8787/sseВ некоторых редких случаях может помочь очистка файлов, добавленных в ~/.mcp-auth
rm -rf ~/.mcp-authThis server cannot be deployed
Maintenance
Related MCP Connectors
Cloudflare Workers MCP server: ai-model-router
Cloudflare Workers MCP server: claude-skill-validator
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that runs on Cloudflare Workers with OAuth login, allowing AI assistants like Claude to execute tools remotely through HTTP connections.-
- FlicenseNot gradedqualityCmaintenanceA Model Context Protocol server implementation that runs on Cloudflare Workers with OAuth login, allowing Claude and other AI models to access tools via the MCP standard.-
- FlicenseNot gradedqualityCmaintenanceA Cloudflare Workers-based Model Context Protocol server that enables AI assistants like Claude to access external tools via OAuth authentication.14 npm-
- -licenseNot gradedqualityNot gradedmaintenanceA Cloudflare Workers-based implementation of Model Context Protocol server that enables integration with Claude AI through OAuth login, allowing Claude to access and execute custom tools.-