Skip to main content
Glama
Smartoire

Paxaver MCP Server

Official

Paxaver MCP 서버

Paxaver 학교 커뮤니티 플랫폼을 위한 AI 지향 어댑터. RS256 JWT 검증, 기능 우선(capability-first) 권한 부여, Streamable HTTP 전송을 갖춘 Cloudflare Workers에서 Model Context Protocol(MCP)을 구현합니다.

npm version License: Apache-2.0


이게 무엇인가

Paxaver MCP 서버는 AI 어시스턴트(ChatGPT, Claude, Perplexity 및 모든 MCP 호환 클라이언트)가 Paxaver 사용자를 대신하여 작업을 수행할 수 있게 합니다: 점심 메뉴 확인, 점심 주문, 지갑 충전, 기금 모금 이벤트 등록, 학교 기부, 자원봉사, 그리고 학교 관리자의 경우 레스토랑, 메뉴 항목, 이벤트 및 일일 주문 관리.

이는 얇은 어댑터입니다. 비즈니스 로직을 포함하지 않으며 데이터베이스, Stripe 또는 이메일에 직접 접근하지 않습니다. 모든 작업은 Cloudflare 서비스 바인딩(동일 리전, 공용 네트워크 홉 없음)을 통해 비공개 Paxaver 백엔드 API에 위임됩니다. MCP 서버의 유일한 책임은 다음과 같습니다:

  • MCP 프로토콜 처리(JSON-RPC 2.0, Streamable HTTP)

  • 중앙 집중식 Paxaver 인증 워커의 JWKS를 통한 RS256 JWT 검증

  • 도구별 기능 정책 및 역할 게이팅

  • 정화된 사용자 안전 오류 매핑

인증은 OAuth 2.0 / OIDC 권한 부여 서버 역할을 하는 Paxaver 인증 워커(auth.paxaver.com)에서 처리됩니다. 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(120초 TTL, 대상 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

로컬 개발 서버는 http://localhost:8787에서 시작됩니다. 검색 엔드포인트는 /.well-known/ 아래에 있으며, MCP 엔드포인트는 POST /mcp입니다.

참고: PAXAVER_API 서비스 바인딩이 없는 로컬 개발은 API_BASE_URL(기본값 http://localhost:8787)에 대한 인증된 HTTPS로 대체됩니다. 전체 통합 테스트를 위해 Paxaver 백엔드 워커를 로컬에서 실행하고 API_BASE_URL을 해당 주소로 지정하세요.


배포

두 개의 환경, 각각 고유한 사용자 정의 도메인을 가진 별도의 Worker:

환경

Worker 이름

도메인

staging

paxaver-mcp-staging

mcp.paxaver.dev

production

paxaver-mcp

mcp.paxaver.com

프로덕션 워커는 단일 엔드포인트(mcp.paxaver.com)를 통해 CA 및 US 사용자 모두에게 서비스를 제공합니다. 사용자 리전은 JWT tenant_id 클레임에서 확인되며, 워커는 서비스 바인딩(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를 참조하세요.


도구

서버는 6개 범주로 그룹화된 31개의 도구를 제공합니다. tools/list에서의 가시성은 호출자의 역할에 따라 필터링되며, 모든 호출은 디스패치 전에 다시 권한이 부여되고 백엔드는 데이터 수준 접근을 다시 확인합니다(심층 방어).

카테고리

도구

사용자 / 계정

get_user_info, update_student

지갑

get_wallet_balance, get_wallet_status, add_funds, top_up_balance, donate_to_school

주문 및 메뉴

order_lunch, get_orders, get_daily_menu, get_updates, get_daily_orders, get_monthly_orders, get_published_menu, create_draft_order, finalize_order, cancel_order

이벤트

get_upcoming_events, create_event, update_event, cancel_event, register_event, request_volunteer

관리자 / 레스토랑

list_school_restaurants, create_restaurant, list_menu_items, create_menu_item, update_menu_item, set_menu_item_price, delete_menu_item, set_daily_menu

금전 및 파괴적 도구는 라벨이 지정되며 사용자 확인이 필요합니다. 전체 참조: docs/tools.md. 권한 부여 정책: docs/authorization.md.


문서

문서

주제

docs/architecture.md

시스템 아키텍처, 서비스 바인딩 경계, 리전 격리

docs/authentication.md

JWT 검증, JWKS, 인증 워커 위임, 토큰 형식

docs/authorization.md

기능 정책 테이블, 역할 게이팅, 심층 방어

docs/tools.md

입력 스키마 및 분류를 포함한 전체 도구 참조

docs/deployment.md

Wrangler 구성, 환경, 시크릿, 사용자 정의 도메인

docs/security.md

보안 모델, CORS, CSRF, 오류 정화, 헤더

docs/compatibility.md

MCP 프로토콜 버전, 전송, 지원되는 AI 클라이언트

docs/migration.md

비공개 모노레포의 레거시 mcp-server/에서 마이그레이션

CHANGELOG.md

릴리스 기록

SECURITY.md

취약점 신고 정책

CONTRIBUTING.md

개발 설정 및 기여 프로세스


기술 스택

  • 런타임: Cloudflare Workers (compatibility_date: 2026-08-01, nodejs_compat)

  • 프레임워크: Hono v4

  • JWT: jose v6 (JWKS를 통한 RS256)

  • 프로토콜: MCP 2025-06-18, Streamable HTTP

  • 인증: 중앙 집중식 인증 워커(auth.paxaver.com)를 통한 RS256 JWT 검증

  • 빌드/배포: Wrangler v4

  • 테스트: Vitest v2 (Workers 풀 + Node 풀)


라이선스

Apache-2.0. Copyright (c) 2026 Smartoire. LICENSE를 참조하세요.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

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

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables 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.
    29
    11
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables 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.
    45
    5
    AGPL 3.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables 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

View all related MCP servers

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.

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/Smartoire/paxaver-mcp'

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