Paxaver MCP Server
OfficialPaxaver MCP Server
ИИ-ориентированный адаптер для школьной платформы сообщества Paxaver. Реализует Model Context Protocol (MCP) на Cloudflare Workers с проверкой RS256 JWT, авторизацией на основе возможностей и транспортом Streamable HTTP.
Что это такое
Сервер Paxaver MCP позволяет ИИ-ассистентам (ChatGPT, Claude, Perplexity и любому MCP-совместимому клиенту) действовать от имени пользователя Paxaver: просматривать меню обеда, заказывать обед, пополнять кошелёк, регистрироваться на благотворительные мероприятия, жертвовать школе, участвовать в волонтёрстве и — для администраторов школ — управлять ресторанами, пунктами меню, событиями и ежедневными заказами.
Это тонкий адаптер. Он не содержит бизнес-логики и никогда напрямую не обращается к базе данных, Stripe или электронной почте. Каждое действие делегируется частному внутреннему API Paxaver через сервисную привязку Cloudflare (тот же регион, без перехода через публичную сеть). Единственные обязанности MCP-сервера:
Обработка протокола MCP (JSON-RPC 2.0, Streamable HTTP)
Проверка RS256 JWT через JWKS из централизованного auth-воркера Paxaver
Политика возможностей и ограничение по ролям для каждого инструмента
Санитизированное, безопасное для пользователя сопоставление ошибок
Аутентификация обрабатывается auth-воркером Paxaver (auth.paxaver.com), который служит сервером авторизации OAuth 2.0 / OIDC. MCP-сервер проверяет полученные RS256 JWT и пересылает их в бэкенд. Сам MCP-сервер не является сервером авторизации.
Related MCP server: IIITH Mess MCP
Архитектура
┌───────────────┐ MCP (Streamable HTTP) ┌──────────────────────┐
│ AI Client │ ─────────────────────────────▶ │ Paxaver MCP Worker │
│ ChatGPT/Claude│ ◀───────────────────────────── │ (this repo) │
│ /Perplexity │ RS256 JWT + JSON-RPC 2.0 │ Hono + jose │
└───────────────┘ └──────────┬───────────┘
│
Cloudflare service binding
(PAXAVER_API, same region)
│
▼
┌──────────────────────┐
│ Paxaver API Worker │
│ (private backend) │
│ D1 · Stripe · SES │
└──────────────────────┘MCP-воркер никогда не привязывается к D1, Stripe или SES. Сервисная привязка несёт кратковременный JWT (TTL 120 секунд, аудитория paxaver-internal), которому бэкенд доверяет как внутреннему вызову, при этом действие всё равно приписывается аутентифицированному пользователю Paxaver. Полную картину см. в docs/architecture.md.
Быстрый старт
Установка
npm install @paxaver/mcpЛокальная разработка
# 1. Install dependencies (Node >= 22)
npm install
# 2. Configure local secrets
cp .dev.vars.example .dev.vars # then fill in JWT_SECRET, OAUTH_STATE_SECRET, ...
# 3. Run the worker locally (Miniflare)
npm run dev
# 4. Typecheck, lint, and test
npm run typecheck
npm run lint
npm testЛокальный dev-сервер запускается на http://localhost:8787. Эндпоинты обнаружения находятся в /.well-known/; MCP-эндпоинт — POST /mcp.
Примечание: Локальная разработка без сервисной привязки
PAXAVER_APIиспользует аутентифицированный HTTPS кAPI_BASE_URL(по умолчаниюhttp://localhost:8787). Для полного интеграционного тестирования запустите бэкенд-воркер Paxaver локально и укажитеAPI_BASE_URLна него.
Развёртывание
Две среды, каждая — отдельный Worker со своим собственным доменом:
Среда | Имя воркера | Домен |
|
|
|
|
|
|
Продакшн-воркер обслуживает пользователей из CA и US через единый эндпоинт (mcp.paxaver.com). Регион пользователя определяется из утверждения tenant_id в JWT, и воркер маршрутизирует запросы в правильный региональный бэкенд через сервисные привязки (PAXAVER_API_CA, PAXAVER_API_US). Валюта определяется школой пользователя, а не MCP-эндпоинтом.
npm run deploy:staging # wrangler deploy --env staging
npm run deploy:prod # wrangler deploy --env productionСекреты должны быть установлены с помощью wrangler secret put --env production: JWT_SECRET, OAUTH_STATE_SECRET, GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, CHATGPT_VERIFY_TOKEN. См. docs/deployment.md.
Инструменты
Сервер предоставляет 31 инструмент, сгруппированных в шесть категорий. Видимость в tools/list фильтруется по ролям вызывающего; каждый вызов повторно авторизуется перед отправкой, а бэкенд дополнительно проверяет доступ на уровне данных (защита в глубину).
Категория | Инструменты |
Пользователь / аккаунт |
|
Кошелёк |
|
Заказы и меню |
|
События |
|
Администрирование / ресторан |
|
Финансовые и деструктивные инструменты помечены и требуют подтверждения пользователя. Полная справка: docs/tools.md. Политика авторизации: docs/authorization.md.
Документация
Документ | Тема |
Системная архитектура, граница сервисной привязки, региональная изоляция | |
Проверка JWT, JWKS, делегирование auth-воркера, формат токена | |
Таблица политики возможностей, ограничение по ролям, защита в глубину | |
Полная справка по инструментам с входными схемами и классификациями | |
Конфигурация Wrangler, среды, секреты, пользовательские домены | |
Модель безопасности, CORS, CSRF, санитизация ошибок, заголовки | |
Версия протокола MCP, транспорты, поддерживаемые ИИ-клиенты | |
Миграция с устаревшего | |
История релизов | |
Политика сообщения об уязвимостях | |
Настройка разработки и процесс внесения вклада |
Технологический стек
Среда выполнения: Cloudflare Workers (
compatibility_date: 2026-08-01,nodejs_compat)Фреймворк: Hono v4
JWT: jose v6 (RS256 через JWKS)
Протокол: MCP
2025-06-18, Streamable HTTPАутентификация: проверка RS256 JWT через централизованный auth-воркер (
auth.paxaver.com)Сборка/развёртывание: Wrangler v4
Тестирование: Vitest v2 (пул Workers + пул Node)
Лицензия
Apache-2.0. Авторские права (c) 2026 Smartoire. См. LICENSE.
This server cannot be installed
Maintenance
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with the IIIT Hyderabad Mess Management System through natural language, allowing students to view menus, manage meal registrations, check bills, submit feedback, and configure preferences.2911MIT
- AlicenseAqualityDmaintenanceEnables LLMs to interact with the IIIT Hyderabad Mess System to manage meal registrations, view menus, and track billing. It supports conversational commands for tasks like cancelling meals, estimating nutrition, and checking account balances.455AGPL 3.0
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with the Classavo education platform via natural language for course management, assignments, grading, attendance, polling, and discussions, with strict privacy controls for students.
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with the IIIT-H mess dining and marketplace systems through resources, tools, and prompts for meal planning, billing analysis, and registration modifications.GPL 3.0
Related MCP Connectors
Read and update your Everway trips and itineraries from any MCP-compatible AI assistant.
AI-native restaurant discovery: verified/menu-indexed/discovered tiers + signed allergy-safety data.
Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Smartoire/paxaver-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server