Skip to main content
Glama

oferty-spike-mcp

Спайк №1 проекта «Oferty Online»: сможет ли встроенный сервер OAuth 2.1 Supabase Auth (бета) сработаться с приложением Claude через Dynamic Client Registration.

Код одноразовый. Никаких тестов, никакой обработки ошибок, кроме того, что диагностирует сам спайк, никаких настоящих инструментов MCP. После выполнения остаётся только заметка с выводами.

Что здесь

Файл

Роль

src/server.js

маршрутизация HTTP, валидация Host, ленивая аутентификация, discovery

src/mcp.js

сервер MCP v2 + инструмент ping(), возвращающий идентичность из токена

src/verifier.js

два пути: статический Bearer (Claude Code) и токен Supabase (приложение Claude)

src/consent.js

страница согласия — единственное, что мы пишем сами

src/supabase-metadata.js

получение метаданных AS при старте, fail fast

Используем SDK v2 (@modelcontextprotocol/server + @modelcontextprotocol/node). @modelcontextprotocol/sdk — это устаревшая v1 — большинство туториалов в сети описывают именно её.

Related MCP server: Remote MCP Server on Cloudflare

Переменные окружения

Смотри .env.example. Все четыре обязательны, процесс не запустится без них.

Локальный запуск

npm ci
APP_ORIGIN=http://localhost:3000 SUPABASE_URL=https://twoj.supabase.co \
  SUPABASE_ANON_KEY=... SPIKE_STATIC_TOKEN=... npm start

Эндпоинты

  • POST /mcp — Streamable HTTP, без состояния

  • GET /.well-known/oauth-protected-resource/mcp — RFC 9728

  • GET /.well-known/oauth-authorization-server — метаданные Supabase, переданные дословно

  • GET /oauth/consent?authorization_id=… — страница согласия

  • GET /healthz — жизнеспособность процесса, намеренно не пингует Supabase

Диагностика

Без токена POST /mcp отвечает 401 с заголовком WWW-Authenticate, указывающим на Protected Resource Metadata — по этому ты поймёшь, что ленивая аутентификация работает.

При подозрении на проблему с реконнектом коннектора (самая подозрительная точка спайка) пригодятся supabase.auth.oauth.listGrants() и revokeGrant({ clientId }) — они позволяют увидеть и удалить сохранённое согласие, не трогая базу вручную.

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude.ai to connect to a Hermes MCP server via OAuth 2.1 authorization code flow with PKCE, acting as a reverse proxy and single-user authorization gateway.
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables remote MCP server deployment on Cloudflare Workers with OAuth login, supporting tool calling via SSE from clients like MCP Inspector or Claude Desktop.
  • F
    license
    Not graded
    quality
    B
    maintenance
    A proof-of-concept HTTP MCP server requiring OAuth 2.0 authentication before tool use. Demonstrates the full authentication flow with Claude Code, including discovery, client registration, PKCE authorization, and bearer token verification.

View all related MCP servers

Related MCP Connectors

  • MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.

  • MCP server for interacting with the Supabase platform

  • MCP server for verifying EUDI/Talao wallet data via OIDC4VP (pull) for AI agents.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AIBiz-Automatyzacje/oferty-spike-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server