mcpField
S
syllabus-calendar-mcp

syllabus-calendar-mcp

ローカル
brightspacemcp.com生産性01 週間前に更新

syllabus-calendar-mcp について

syllabus-calendar-mcpは、学生向けのローカルMCPサーバーで、貼り付けたシラバスのテキストをカレンダーイベントに変換します。定期授業の展開、.icsカレンダーの作成、カレンダーの統合による競合確認ができ、処理はローカルで行われます。

主な機能

  1. 01シラバス文面から日付付きイベントを抽出
  2. 02祝日を除いて定期授業を展開
  3. 03リマインダー付き.icsカレンダーの作成
  4. 04カレンダーを統合して時間の競合を確認
  5. 05日付のない行を確認用に返却

活用シーン

  1. 01授業の課題日をイベントに変換
  2. 02リーディングウィークを除いて授業日程を作成
  3. 03課題リマインダー付き.icsカレンダーを作成
  4. 04複数の授業カレンダーの重複を確認

MCP 対応

MCPクライアント向けに、extract_schedule_events、expand_recurring_classes、build_ics、merge_calendarsの4つのツールを提供します。カレンダー作成と統合のツールは、出力先を指定するとファイルを書き出せます。

設定

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

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

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

パッケージ
npmsyllabus-calendar-mcp0.1.2

ツール

4

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

パラメーター型必須説明
textstringはい貼り付けたシラバスまたは授業予定です。各行に 1 つのイベントと日付を記載してください。
yearintegerいいえ日付に年がない場合に使用する年です。既定値は現在の年です。
coursestringいいえ各イベントに設定する科目名またはコードです(例:BIO 101)。

詳細

syllabus to calendar mcp

npm downloads license star on github

syllabus to calendar mcp は、npm で syllabus-calendar-mcp として公開されている無料の mcp サーバーです。貼り付けたシラバスのテキストをカレンダーの予定に変換し、予定や繰り返し授業から有効な .ics ファイルを作成できます。祝日や読書週間を除外したり、カレンダーを統合して予定の重複を確認したりすることもできます。計算と解析には、テスト済みのコードを使用しています。お使いのコンピューター上で動作し、インターネット接続もログインも不要です。

Canvas、Brightspace、Moodle、または PDF のエクスポートからコピーしたテキストを解析します。

いつまでも無料です。アカウントは不要です。

比較

brightspace-mcp-server と @exhabition/brightspace-mcp は、情報を読み取る前に Brightspace へのログインが必要です。このサーバーはアカウント、API キー、ネットワーク接続が不要です。貼り付けたシラバスのテキストを処理するため、Brightspace のコースに限らず、どの学校のシラバスにも対応します。

出力例

次のようなテキストを貼り付けます。

Assignment 1 due Sep 15
Midterm exam October 20 at 10:00
Lab report 2 due Dec 8

course を BIO 101、year を 2026 に設定して extract_schedule_events を実行すると、次の結果が返されます。

3 events found.

- Tue, Sep 15, 2026: Assignment 1 (assignment) [BIO 101]
- Tue, Oct 20, 2026 at 10:00: Midterm exam (exam) [BIO 101]
- Tue, Dec 8, 2026: Lab report 2 (lab) [BIO 101]

Next: pass these events to build_ics as events to make an .ics calendar.

貼り付けた行に日付がない場合、その行は削除されません。extract_schedule_events はその行を undated_lines に返し、予定の下にも一覧表示するため、テキストを修正してツールを再実行できます。

build_ics はこれらの予定を、次のように始まるカレンダーに変換します。

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//AnonymousOnyx22//syllabus-calendar-mcp//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:BIO 101

カレンダーにインポートする

.ics ファイルは、どのカレンダーアプリでも使用できます。ファイルを保存してから、インポートしてください。

Google カレンダー

ブラウザーで Google カレンダーを開きます。歯車アイコンをクリックし、設定を開きます。インポートとエクスポートを開き、.ics ファイルを選択して、追加先のカレンダーを選び、インポートをクリックします。

Apple カレンダー

.ics ファイルをダブルクリックします。カレンダーが開き、予定の追加先となるカレンダーを尋ねられます。または、カレンダーを開き、「ファイル」から「読み込む」を選択します。

Outlook

Outlook を開きます。「ファイル」から「開く/エクスポート」、「インポート/エクスポート」の順に選択します。「iCalendar または vCalendar ファイルのインポート」を選び、.ics ファイルを指定してインポートします。

インストール

npx を使って npm から直接実行します。Node.js 20 以降が必要です。詳しくはNode.js のバージョンをご覧ください。

npx -y syllabus-calendar-mcp

アプリが起動できるように、AI アプリの MCP 設定に追加します。アプリごとに設定ファイルが異なるため、お使いのアプリを選んでください。

claude desktop

claude_desktop_config.json に次の内容を追加します。

{
  "mcpservers": {
    "syllabus-calendar": {
      "command": "npx",
      "args": ["-y", "syllabus-calendar-mcp"]
    }
  }
}

ファイルを保存した後、claude desktop を再起動します。

コマンドライン

ターミナルで次のコマンドを実行します。

npx -y @modelcontextprotocol/inspector syllabus-calendar-mcp
cursor

cursor は、プロジェクトフォルダーの .cursor/mcp.json、またはホームフォルダーの ~/.cursor/mcp.json から mcp.json を読み込みます。

{
  "mcpservers": {
    "syllabus-calendar": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "syllabus-calendar-mcp"]
    }
  }
}

ファイルを保存した後、cursor を再起動します。

vs code copilot

プロジェクトフォルダーの .vscode/mcp.json、またはユーザープロファイルの mcp.json ファイルに次の内容を記述します。

{
  "servers": {
    "syllabus-calendar": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "syllabus-calendar-mcp"]
    }
  }
}

vs code は、プロジェクトのルートにあるポータブルな .mcp.json ファイルも読み込みます。このファイルでは、servers の代わりに mcpservers という名前を使います。

{
  "mcpservers": {
    "syllabus-calendar": {
      "command": "npx",
      "args": ["-y", "syllabus-calendar-mcp"]
    }
  }
}

ファイルを保存した後、vs code を再起動します。

これら4つのプロンプトをお試しください

  1. シラバスのテキストを予定に変換する

    "このシラバスをカレンダーの予定に変換してください:課題1の期限は9月15日、中間試験は10月20日10:00です。"

    モデルは extract_schedule_events を呼び出し、種類と時刻を含む日付付きの予定を返します。

  2. 定期開催の授業を追加する

    "生物学の授業は2026年9月8日から12月10日まで、火曜日と木曜日の10:00にあります。10月12日から10月16日までのリーディングウィークは除外してください。"

    モデルは expand_recurring_classes を呼び出し、授業日と除外日を返します。

  3. ICSカレンダーを作成する

    "各課題の1日前にリマインダーを設定したコース用の.icsファイルを作成してください。"

    モデルは予定とリマインダーを指定して build_ics を呼び出し、有効なカレンダーを作成します。

  4. 予定の重複を確認する

    "3つのコースカレンダーを統合して、授業が重複する日を教えてください。"

    モデルは merge_calendars を呼び出します。カレンダーを統合し、UIDで重複する予定を除外したうえで、時間が重なる予定を一覧表示します。

ツール

ツールは4つあります。これらの名前はAIアプリから参照できます。

ツールパラメーター機能プロンプトの例
extract_schedule_eventstext、course、year、term_start貼り付けたシラバスのテキストから、日付のある行ごとに日付付きの予定を抽出します。term_start を設定すると、「第5週:中間試験」のような行も予定になります。日付がない行は undated_lines に返されます。次の手順として build_ics を提案します。"このシラバスをカレンダーの予定に変換してください:課題1の期限は9月15日、中間試験は10月20日10:00です。"
expand_recurring_classescourse、title、weekdays、start_date、end_date、start_time、end_time、location、holidays、reading_weeks祝日とリーディングウィークを除外して、定期開催の授業日を生成します。次の手順として build_ics を提案します。"生物学の授業は2026年9月8日から12月10日まで、火曜日と木曜日の10:00にあります。10月12日から10月16日までのリーディングウィークは除外してください。"
build_icsevents、classes、reminders_minutes、calendar_name、timezone、output_path予定と授業から、リマインダー付きの有効な.icsカレンダーを作成します。時間指定の予定の時刻が別のタイムゾーンにいる学生にも維持されるよう、timezone には America/Toronto などのIANA名を指定してください。output_path を指定するとファイルに書き込みます。"各課題の1日前にリマインダーを設定したコース用の.icsファイルを作成してください。"
merge_calendarscalendars、calendar_name、output_pathカレンダーを統合し、UIDで重複する予定を除外して、時間が重なる予定を一覧表示します。output_path を指定するとファイルに書き込みます。"3つのコースカレンダーを統合して、授業が重複する日を教えてください。"

すべてのツールはテキストと構造化データを返します。build_ics と merge_calendars はファイルを書き込む場合がありますが、その他のツールは読み取り専用です。

トラブルシューティング

イベントが1件も返されません。 extract_schedule_events は、日付が記載された各行からイベントを1件作成します。結果の undated_lines を確認してください。ここに表示されているのが、スキップされた行です。予定を1行に1項目ずつ貼り付け、日付はタイトルと同じ行に「sep 15」や「9/15」のように記載してください。テキストが長い段落1つになっている場合は、まず行ごとに分割してから、もう一度お試しください。

日付の年が間違っています。 年が指定されていない日付には、ツールが現在の年を使用します。結果には、使用した year が表示されます。extract_schedule_events に year(例:2026)を渡すか、日付に年を記載してください。expand_recurring_classes の場合は、年を含む start_date と end_date を指定してください。

ファイルが書き込まれません。 build_ics と merge_calendars は、output_path を渡した場合にのみファイルを書き込みます。サーバーはフォルダーを作成しないため、フォルダーがすでに存在している必要があります。フォルダーが見つからない場合、必要なフォルダーの名前が応答に表示されます。ホームディレクトリ内のフォルダーなど、書き込み可能なフルパスを使用してください。相対パスはサーバーの起動時のフォルダーを基準に解決されるため、想定とは異なる場所になることがあります。output_path を省略すると、カレンダーのテキストが返されるので、自分で .ics ファイルとして保存できます。

アプリにサーバーが表示されません。 node.js がバージョン20以降であることを確認し、設定を編集した後にアプリを再起動してください。上記のインストール手順に、各アプリで使用する正確な設定項目が記載されています。

node のバージョン

ここには2つの下限がありますが、同じ数字ではありません。

作業内容node.js
公開済みサーバーの実行20以降
クローンのビルドとテスト22および24のリリース系列では22.12以降、または26以降

サーバー自体は node.js 20 で問題なく動作し、package.json の engines にもそのように記載されています。テストツールにはより新しい node.js が必要なため、開発時の下限は同じファイルの devengines に記載されています。npm はインストール前とテスト前に devengines を確認します。サービスのバージョンは package.json に記載されています。

開発

npm install
npm run build
npm test

テストでは、実際の mcp クライアントを介してツールを呼び出します。アカウントもネットワーク接続も必要ありません。

プライバシー

すべての処理はローカルで行われます。データは保存されません。ネットワークへの接続もありません。ログインやキーも必要ありません。

学生向けの無料MCPサーバーをもっと見る

すべて無料でオープンソースです。アカウントに接続する場合も、読み取り専用です。全リストはbrightspacemcp.com/more-mcpsをご覧ください。

サーバー機能
Brightspace MCPAI 向けの D2L Brightspace です。実際の提出状況を反映した締め切り、成績、目標成績計算ツール、コースのファイルを確認できます。
Canvas MCPAI 向けの読み取り専用 Canvas LMS です。締め切り、未提出の課題、成績、お知らせを確認できます。
Moodle MCPAI 向けの読み取り専用 Moodle です。締め切り、期限超過の課題、成績、お知らせを確認できます。
Google Classroom MCPAI 向けの読み取り専用 Google Classroom です。ToDo、締め切り、未提出の課題、成績を確認できます。
GPA Calculator MCPAI 向けの GPA、成績換算、期末試験で必要な成績を計算できます。オフラインで動作し、アカウントは不要です。
Citations MCPDOI、ISBN、または入力した詳細情報から APA、MLA、Chicago 形式の引用を作成できます。アカウントは不要です。
Study Planner MCP試験の学習スケジュール、間隔反復の日程、ポモドーロ計画、課題のマイルストーンを作成できます。オフラインで動作します。
Paper Finder MCPOpenAlex を通じて学術論文を検索し、オープンアクセス版や関連研究を見つけられます。API キーは不要です。
BibTeX Reference Manager MCPBibTeX、RIS、CSL JSON の参考文献リストを整理、変換、重複排除、検査し、引用キーを作成できます。オフラインで動作します。
Open Textbook Finder MCPOpenStax、DOAB、Open Library で合法かつ無料の教科書を探し、ISBN で版を調べ、より安価な旧版を提案します。
STEM Calculator MCP化学や物理の宿題の計算に対応します。モル質量、化学反応式の係数合わせ、グラムからモルへの換算、単位換算、有効数字を扱えます。オフラインで動作します。
Essay Stats MCPエッセイのオフライン文章指標を確認できます。単語数とページ数、読みやすさスコア、受動態、文頭表現の繰り返し、つなぎ言葉、長文、文字数制限を検査できるため、課題の要件に照らして提出物を確認できます。アカウントもネットワーク接続も不要です。
Job Application Tracker MCP求人応募管理用の MCP サーバーです。インターンシップ、求人、面接、締め切りをオフラインで管理し、今後の予定を確認して、一覧を CSV または Markdown でエクスポートできます。アカウントも API キーも不要です。

ライセンス

mit

コメント

MCP は初めてですか?

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

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