Встраиваемый OAuth-провайдер для персональных FastMCP серверов на всех платформах Claude

Что это решает
Разработчик создал персональный сервер памяти с помощью mem0, к которому Claude может читать и записывать, формируя персональное хранилище знаний. Хотя наладить работу в Claude Code было просто, обеспечить функционирование на всех платформах Claude.ai (веб, мобильных и десктопных) вызвало проблемы с аутентификацией.
Основная проблема: пользовательские коннекторы Claude.ai требуют полного соответствия OAuth 2.1. FastMCP предоставляет либо тестовый провайдер в памяти (не подходит для продакшена), либо прокси, требующий настройки внешних провайдеров идентификации, таких как Google, GitHub или Auth0. Для сервера, предназначенного только для личного использования, настройка Auth0 была нежелательной дополнительной нагрузкой.
Решение
Разработчик создал провайдер аутентификации в одном файле на Python, который обрабатывает весь OAuth-поток без внешних сервисов. Ключевые особенности включают:
- Динамическую регистрацию клиентов (DCR)
- PKCE (Proof Key for Code Exchange)
- Сохранение токенов
- Полную реализацию OAuth 2.1
Провайдер ограничивает URI перенаправления только claude.ai и localhost, предотвращая несанкционированный доступ, даже несмотря на то, что регистрация клиентов остаётся открытой (требование Claude.ai, которое потребовало времени для понимания).
Детали реализации и подводные камни
В процессе реализации разработчик столкнулся с несколькими недокументированными проблемами:
- BaseHTTPMiddleware от FastAPI молча ломает потоковые ответы, требуя обходных путей
- Конфликты имён инструментов: если инструменты названы обобщённо (например, "add_memory" или "search"), Claude будет использовать свои встроенные функции памяти вместо вызова инструментов вашего сервера. Решение — добавлять уникальные префиксы к именам инструментов
- Подключения к бессерверным базам данных: Neon Postgres (и, вероятно, другие бессерверные БД) разрывают неактивные соединения. Создание одного соединения при запуске приводит к случайным сбоям инструментов через несколько минут
- Конфигурация DCR: Динамическая регистрация клиентов по умолчанию отключена в FastMCP. Без её включения эндпоинт /register возвращает 404, и Claude.ai молча не подключается без каких-либо сообщений об ошибках
Доступность
Решение доступно на GitHub по адресу github.com/crumrine/fastmcp-personal-auth в виде одного файла Python под лицензией MIT. Это предоставляет практическую альтернативу для разработчиков, которые хотят, чтобы их персональные серверы FastMCP работали на всех платформах Claude без сложностей внешних провайдеров идентификации.
📖 Read the full source: r/ClaudeAI
👀 Смотрите также

Выпущен Claude Code Production Grade Plugin v3.0: Автономный конвейер разработки программного обеспечения
Плагин Production Grade Plugin v3.0 для Claude Code теперь доступен как бесплатное программное обеспечение с открытым исходным кодом по лицензии MIT. Плагин создаёт полный конвейер разработки от требований до развёртывания с 13 ИИ-навыками, которые действуют как инженерная команда.

Vellium добавляет настольных питомцев и агентов в стиле CLI для локальных LLM
Vellium — это приложение с открытым исходным кодом для работы с локальными LLM на разных платформах. Теперь в нём появились настольные питомцы, парящие над окнами, и агенты с интеграцией MCP, поддержкой терминальных команд и редактирования файлов.

MCP сервер подключает Claude Code/Desktop к Apple Music — плейлисты, поиск, анализ профиля
Новый MCP-сервер позволяет Claude Code и Claude Desktop управлять Apple Music – просматривать плейлисты, искать песни, создавать плейлисты и анализировать паттерны прослушивания на естественном языке.

Claude Code добавляет систему многопользовательского рецензирования кода
Anthropic запустила Code Review для Claude Code — многозадачную систему, которая распределяет команды ИИ-агентов для проверки пулл-реквестов. Система выявляет ошибки, которые часто пропускают люди-ревьюеры: теперь 54% PR получают содержательные комментарии по сравнению с 16% ранее.