mcpField
C
campus-cli

campus-cli

ローカル
campuscli.com科学・教育121 日前に更新

campus-cli について

campus-cliは、Campusリレー経由で大学のBlackboardデータにアクセスするコマンドラインクライアントです。学生はコース、課題、成績、教材を参照でき、MCPクライアントからリレーのツールやリソースを利用できます。

主な機能

  1. 01リレー経由のBlackboardデータアクセス
  2. 02コース、課題、成績のコマンド
  3. 03MCPツールの検索と呼び出し
  4. 04コースファイルのダウンロード
  5. 05OAuthログインと大学MFAの手順

活用シーン

  1. 01コースや課題の一覧確認
  2. 02成績やコース内容の確認
  3. 03公開済み大学ツールの検索と実行
  4. 04教材のローカルフォルダーへのダウンロード

MCP 対応

stdio MCPプロセスは、ツール、リソース、指示、結果、確認要求などのプロトコル通信を認証済みCampusリレーへ転送します。MCP対応クライアントはOAuthを使ってリモートエンドポイントへ直接接続することもできます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"alejooroncoy-campus-cli": {
"command": "npx",
"args": [
"-y",
"campus-cli"
]
}
}
}
起動コマンドnpx -y campus-cli

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmcampus-cli1.4.1

ツール

19

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

campus-cli

npm version

Campus のリレーを介して、大学のキャンパスをターミナルまたは AI クライアントに接続します。

バージョン 3.0.0。 このバージョンではアーキテクチャが変更され、すべてのデータコマンドと stdio 経由の MCP が、認証済みリレーを使用するようになりました。サーバーは各操作でアカウントのプランと利用枠を適用します。CLI をインストールしても無料でアクセスできるわけではなく、これらの制限を回避することもできません。

現在のリレーのポリシーでは、5 回の試用クエリが維持されています。この移行により、新しい配布版のローカルな代替手段は終了しますが、サーバーの試用ポリシーは変更されず、すでにダウンロード済みのコードやバージョン 2.x を削除することもできません。

Campus は非公式の統合です。Blackboard、UPC、UPN、その他の大学はこのプロジェクトを後援していません。Canvas と Moodle は引き続きロードマップに含まれています。

インストールとログイン

Node.js 22.13 以降と、アカウントを認証するためのブラウザーが必要です。

npm install -g [email protected]
campus login
campus courses list --json
campus assignments list <courseId> --json

campus login は OAuth で Campus アカウントを認証した後、お使いのコンピューター上で Playwright を起動し、大学にログインして MFA を完了します。リレーへの大学の Cookie のみの送信について同意を求めます。パスワードや Microsoft または Google の Cookie は送信されません。リレーはセッションを暗号化して保存し、MCP トークンを有効にする前に Blackboard に対して本人確認を行います。campus account login はエイリアスです。以前の Blackboard のローカルセッションや Google アカウントのローカルセッションでは、リレーにアクセスできません。リレーを利用するには、1 回認証する必要があります。

Playwright はクライアントの依存関係に含まれており、ローカルの Chrome/Edge を検索します。必要に応じて、ログイン用に Chromium をインストールします。ブラウザーは一時的なコンテキストを使用し、セッションの取得後に閉じられます。クライアントは、リレーへの認証情報のみを ~/.blackboard-cli/relay/ に保存します。この情報は、プライベートなアクセス権限で保護され、サービス URL ごとに分けて保存されます。

CLI

バージョン 3.x をインストールすると、これらのコマンドを campus、campus-cli、blackboard、blackboard-upc として利用できます。

campus login
campus login --university upn-pe
campus status --json
campus whoami
campus courses list --json
campus courses contents <courseId> --parent <contentId> --json
campus courses grades <courseId> --json
campus assignments list <courseId> --json
campus assignments attempts <courseId> <columnId> --json
campus assignments feedback <courseId> --json
campus messages --course <courseId> --json
campus upn profile
campus upn grades <courseCode>
campus miupc courses
campus miupc grades --course <courseCode>
campus logout

応答は JSON として出力されます。--json は互換性のために引き続き使用できます。Mi UPC と Mi Mundo UPN のコードは、Blackboard の ID とは異なります。リレーは、接続されている大学に応じて提供するツールを決定します。ローカルログインでは、Cookie を取得する前に、そのリレーがサポートする大学の一覧を確認します。ホスト型コントラクトの初回公開では UPC と UPN がサポートされます。告知されていない大学は明示的に拒否されます。自動化されたターミナルでは、--consent-session-upload を使って同意を示します。ユーザーは引き続きブラウザーでログインと MFA を完了する必要があります。大学のセッションが期限切れになったら、campus login を再実行してください。

カタログを確認し、公開されている任意のツールを実行するには、次のコマンドを使用します。

campus tools list
campus tools call banner_get_weekly_schedule
campus tools call blackboard_get_course --args '{"courseId":"_100004_1"}'
campus tools call campus_archimate_guidance --args '{"topic":"overview"}'
campus tools call campus_mendeley_connect

tools call は、リンク、メタデータ、支払いに関するメッセージなど、MCP の完全な結果を保持します。Blackboard の他の公開エンドポイントを読み取るには、次のコマンドを使用します。

campus api GET /learn/api/public/v1/users/me

現在のリレーでは、Blackboard の読み取りを利用できます。課題の提出と下書きの作成は Aula Virtual で行います。CLI から提出や直接的な変更を実行することはできません。互換性と変更されたコマンドについては、リレーへの移行をご覧ください。

ダウンロード

campus download <courseId> <contentId> --out curso/semana1
campus download-folder <courseId> <folderId> --out curso --filter diapositivas

ファイルは、リレーが認証後に発行する一時的なリンクを使用して取得されます。ファイルは ~/Downloads/campus-cli または CAMPUS_DOWNLOAD_DIR の下に、相対サブディレクトリで保存されます。サイズ制限が適用され、既存のファイルは上書きされません。MCP の結果には、サービスが公開するリンクとリソースが保持されます。

stdio 経由の MCP

まず campus login を実行してください。その後、このバージョンの実行ファイルを使って MCP クライアントを接続します。

{
  "mcpServers": {
    "campus": {
      "command": "campus",
      "args": ["mcp"]
    }
  }
}

チェックアウトからテストする場合は、command に node を指定し、run.js の絶対パスと mcp 引数を使用してください。このプロセスは、指示、ツール、リソース、結果、キャンセル、クライアントからの確認要求を含むプロトコルをリレーに転送します。大学のローカルツールを登録することはなく、支払い、セッション、ネットワークの拒否があった場合にローカルプロバイダーへ切り替えることもありません。

リモート MCP に対応したクライアントは、OAuth フローを使って https://mcp.campuscli.com/mcp に直接接続できます。

設定

変数用途
CAMPUS_RELAY_URLMCP エンドポイントの完全な URL。デフォルトは https://mcp.campuscli.com/mcp です。開発用のループバックを除き、HTTPS が必須です。
CAMPUS_DOWNLOAD_DIRCLI ダウンロードのルートディレクトリ。

OAuth/MCP 認証ではネットワークリダイレクトに従わず、別のオリジンにトークンを送信することもありません。リレーの URL を変更するには、個別の認証が必要です。campus logout はそのリレーのローカル認証情報を削除しますが、アカウントの他の接続は取り消しません。

開発

npm run build
node --import tsx --test tests/relay-client.test.ts
npm pack --dry-run

以前のプロバイダーのソースコードは、プライベートなコアとそのテストを維持するために保持されています。npm 3.x の配布物には、リレーのクライアントとダウンロードユーティリティのみが含まれ、大学クエリエンジン、旧式のセッション、以前のライブラリサブパスは含まれません。クライアントに含まれる唯一の大学モジュールは、一時的なログインキャプチャを行います。ホスト型バックエンドは、引き続きバージョン固定されたコアのアーティファクトを使用します。このクライアントパッケージで置き換えてはいけません。

過去の 2.x ドキュメント、3.x への移行、変更履歴を参照してください。

ライセンスは ISC です。ホスト型サービスの利用規約とアクセス制御は、クライアントのライセンスとは別です。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。