Skip to main content
Glama

nseap-mcp

NSEAP 教育プラットフォーム × Cogseed コネクタ —— stdio MCP サーバー。プラットフォームの HTTP エージェントプロトコル(x-api-key)をラップし、ローカル成果物チェック提出-レビュー-通知のクローズドループツールを提供します。

位置づけ

  • ローカルツール(オフライン利用可、非権威):nseap_check_deliverables —— チャレンジの成果物要件(* ワイルドカード対応)に基づき、ローカルワークスペースでファイルの完全性をチェック

  • プラットフォームツール(権威、監査可能):チャレンジ照会 / 自分の提出 / タスクポーリング / プロジェクト提出

  • アーキテクチャ上の制約(プラットフォームの制約を継承):

    • 提出は必ずプラットフォームのメッセージバス(エージェントチャネル)経由(ダウングレード不可)

    • 飛書(Feishu)テーブルへの直接書き込みツールは一切公開しない

    • from_agentstudent-companion-<学号> に固定され、ツール引数による偽装は受け付けない

    • 長時間処理は必ず submit → task_id → ポーリング

Related MCP server: MCP Security Server

ツール一覧(13 個、ロール別に絞り込み)

学生ロール(12 個):

ツール

説明

nseap_check_deliverables

ローカル成果物のワイルドカードチェック(オフライン)

nseap_prepare_submission

ローカル提出前チェックレポート(アクション項目+提出ドラフト)

nseap_list_challenges

公開済みチャレンジ一覧

nseap_get_challenge

単一チャレンジ詳細(成果物/rubric/評価軸/制約)

nseap_list_my_submissions

自分の提出履歴

nseap_get_task

非同期タスク状態(提出後のポーリング)

nseap_submit_project

プロジェクト提出(事前チェック→Envelope→task_id)

nseap_get_evaluation

レビュー詳細(AI/教師/ピア、項目別スコア+長所短所)

nseap_submit_review

レビュー提出(peer はプラットフォームで割り当て検証 / teacher はメッセージバス経由)

nseap_get_dashboard

進捗統計(チャレンジ/提出/完了/レビュー待ち)

nseap_notify

飛書通知をトリガー(学生 DM/クラスグループ)

nseap_health

プラットフォーム接続チェック(遅延/モード)

教師ロール(+1):nseap_publish_challenge — チャレンジ公開(メッセージバス経由、飛書グループ告知)

インストールと実行

pnpm install          # Node ≥20
pnpm dev              # 开发模式(tsx 直跑)
pnpm build && pnpm start   # 生产模式(dist/)
pnpm bundle           # 单文件打包(dist-bundle/nseap-mcp.mjs,自包含无 node_modules)

配布(M1、推奨)

pnpm bundle
# 产物 dist-bundle/nseap-mcp.mjs(1.1MB 自包含),任意有 Node ≥20 的机器:
node dist-bundle/nseap-mcp.mjs

CogSeed コネクタの command はこのファイルを直接指すため、nseap-mcp プロジェクト環境は不要です。

環境変数は .env.example を参照。

ローカル開発(mock モード、プラットフォーム認証情報不要)

NSEAP_MOCK=1 NSEAP_STUDENT_ID=test-student pnpm dev

CogSeed への接続

  1. CogSeed でコネクタ設定を開く → カスタム MCP を追加(custom transport, stdio)

  2. 以下を入力:

    • display_name: NSEAP 学習プラットフォーム

    • command: npx tsx /path/to/nseap-mcp/src/index.ts(またはビルド後の node /path/to/nseap-mcp/dist/index.js

    • env(API キーは secrets_enc 暗号化ストレージに保存):

      • NSEAP_SERVER_URL = プラットフォームのアドレス

      • NSEAP_API_KEY = 学生の api_key(プラットフォームログイン後、NSEAP-config-{学号}.json をダウンロードして取得)

      • NSEAP_STUDENT_ID = 学号

      • NSEAP_COHORT = クラス

  3. 確認ダイアログ(実行される正確なコマンドを表示)→ ユーザーが同意すると有効化

  4. モデルは list_connector_tools / call_connector_tool 経由でこれらのツールを使用

テスト

pnpm typecheck   # tsc 零错误
pnpm test        # 33 个单元测试(含 5 个契约测试)
pnpm smoke       # 冒烟(握手/12工具注册/预检/拦截)
pnpm demo:student  # 学生全流程预演(9 步,mock 模式,无需凭证)
pnpm demo:teacher  # 教师全流程预演(5 步,mock 模式,无需凭证)

エラーコード

code

意味

AUTH_FAILED

api_key が無効/期限切れ

FORBIDDEN

操作権限なし

CONFLICT

重複提出(60 秒の再送防止ウィンドウ)

BUS_UNAVAILABLE

メッセージバスが利用不可

NOT_FOUND

タスクが存在しない/期限切れ

NETWORK_ERROR

プラットフォームに接続できない

BAD_REQUEST

検証エラー(成果物不足など)

INTERNAL

不明なエラー

ディレクトリ構造

src/
  index.ts        # MCP Server 主入口(6 工具注册)
  config.ts       # 环境变量加载 + 脱敏 + 身份固定
  errors.ts       # NseapError + 错误码表
  client.ts       # 平台 HTTP 客户端(重试/限流/mock)
  tools/
    local.ts      # 交付物检查(纯本地)
    read.ts       # 只读工具
    submit.ts     # 提交工具
test/             # 单元测试
scripts/smoke-m0.sh  # M0 冒烟

ライセンス

MIT

A
license - permissive license
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

View all related MCP servers

Related MCP Connectors

  • MCP server for the Inistate platform: module discovery, entry management, and activity submission.

  • Create, co-edit, analyze, publish, and export collaborative step-sequencer sessions through MCP.

  • Remote MCP for Kiro release readiness, evidence binders, signoff, and CI approval receipts.

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/a976xw7td/nseap-mcp'

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