Skip to main content
Glama

Moodle MCPサーバー

Model Context Protocol (MCP)サーバー + REST APIであり、Claude、ChatGPT、Google Gemini、およびあらゆるAIモデルをMoodle LMSインスタンスに接続します。Go言語で構築されています。

学生は、お気に入りのAIを通じてMoodleアカウントと対話できます。コースの表示、成績の確認、期限の追跡、課題の提出、通知の確認が可能です。

対応AI:

  • Claude (デスクトップ、Code) - MCP経由 (最も簡単!)

  • ChatGPT (Plus) - REST API + Actions経由

  • Google Gemini - REST API + Apps Script経由

  • あらゆるAI - REST API (HTTPエンドポイント) 経由

機能

ツール

説明

login

Moodleサイトにインタラクティブに認証する

get_site_info

Moodleサイトとユーザー情報を表示する

get_user_profile

プロフィール詳細を表示する

list_courses

履修中の全コースを一覧表示する

get_course_contents

セクション、リソース、アクティビティを表示する

get_course_details

コースのメタデータを表示する

get_grades

特定のコースの成績を表示する

get_grades_overview

全コースの成績概要を表示する

get_assignments

コースの課題を表示する

get_upcoming_assignments

全コースの今後の課題を表示する

submit_assignment

課題のテキストコンテンツを提出する

get_calendar_events

今後のカレンダーイベントを表示する

get_upcoming_deadlines

緊急度順に整理された期限を表示する

get_notifications

メッセージと通知を表示する

要件

  • Claude Desktop (macOS、Windows、またはLinux)

  • 所属機関のMoodleアカウント

クイックスタート

AIプラットフォームを選択してください:

AIプラットフォーム

ガイド

時間

🤖 Claude (推奨)

Windows / macOS

2分

💬 ChatGPT

ChatGPTセットアップ

15分

🔍 Google Gemini

Geminiセットアップ / Gemini Windows

20分

🌐 複数のAI

全モデルガイド

1時間

ここから開始: Claudeを使用する場合は、上記のWindows/macOSガイドに従ってください(2分で完了します!)。

プログラミング未経験の方へ: すべてのガイドには、技術的な知識が不要なステップバイステップの手順が記載されています。


インストール(最も簡単)

Windowsの場合 (PowerShell)

PowerShellを開き、以下を実行します:

irm https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.ps1 | iex

これにより、バイナリが自動的に C:\Users\YourName\moodle-mcp\moodle-mcp.exe にダウンロードおよびインストールされます。

macOS / Linuxの場合 (Bash)

ターミナルを開き、以下を実行します:

curl -fsSL https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.sh | bash

これにより、バイナリが自動的に ~/.moodle-mcp/moodle-mcp にダウンロードおよびインストールされます。

手動インストール (開発者向け)

ソースからビルドしたい場合:

# Clone the repository
git clone https://github.com/Jawadh-Salih/moodle-mcp-server.git
cd moodle-mcp-server

# Build the binary
go mod tidy
go build -o moodle-mcp ./cmd/moodle-mcp/

使用方法

オプション1: インタラクティブログイン (推奨)

設定なしでサーバーを起動します。Claudeとチャットする際に、loginツールを使用して認証します:

"Log in to my Moodle at https://online.uom.lk with username student@uom.lk"

Claudeがパスワードを尋ね、認証を行います。

オプション2: 環境変数

自動ログインのために、認証情報を環境変数として設定します:

export MOODLE_URL=https://online.uom.lk
export MOODLE_USERNAME=your-username
export MOODLE_PASSWORD=your-password

または、Moodle APIトークンをお持ちの場合:

export MOODLE_URL=https://online.uom.lk
export MOODLE_TOKEN=your-api-token

Claude Desktopの設定

自動インストーラーを使用した場合:

インストーラーが正確なパスを表示します。それをコピーしてください!

手動設定

Claude Desktopの設定ファイルを見つけます:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json

オプションA: インタラクティブログイン (推奨 - 設定ファイルに認証情報を含めない)

{
  "mcpServers": {
    "moodle": {
      "command": "/path/to/moodle-mcp"
    }
  }
}

その後、Claudeでloginツールを使用してインタラクティブに認証します。

オプションB: 認証情報を保存する場合

{
  "mcpServers": {
    "moodle": {
      "command": "/path/to/moodle-mcp",
      "env": {
        "MOODLE_URL": "https://online.uom.lk",
        "MOODLE_USERNAME": "your-username",
        "MOODLE_PASSWORD": "your-password"
      }
    }
  }
}

Windowsのパス例:

  • 自動インストーラー: C:\Users\YourName\moodle-mcp\moodle-mcp.exe

  • 手動ビルド: C:\Users\YourName\Go\bin\moodle-mcp.exe

macOSのパス例:

  • 自動インストーラー: /Users/yourname/.moodle-mcp/moodle-mcp

  • 手動ビルド: /Users/yourname/moodle-mcp-server/moodle-mcp

複数のAIプラットフォームに対応

MCP経由 (Claudeのみ)

  • ✅ Claude Desktop (macOS, Windows, Linux)

  • ✅ Claude Code (VSCode, ターミナル)

REST API経由 (ChatGPT, Gemini, あらゆるAI)

  • ✅ ChatGPT (カスタムGPTアクションを使用)

  • ✅ Google Gemini (Apps Scriptを使用)

  • ✅ HTTPクライアントアクセスが可能なあらゆるAI

  • ✅ カスタムスクリプトおよび統合

各プラットフォームの詳細な手順については、全モデルセットアップを参照してください。

REST APIサーバーの実行

ChatGPT、Gemini、またはその他のAIモデルの場合は、REST APIモードを実行します:

# Start REST API server
go run ./cmd/moodle-mcp/ -mode rest -port 8080

# Or if you built the binary:
./moodle-mcp -mode rest -port 8080

# View API docs
curl http://localhost:8080/api/docs

サーバーは http://localhost:8080 でリッスンし、以下のRESTエンドポイントを公開します:

  • POST /api/login - 認証

  • GET /api/courses - コース一覧

  • GET /api/grades?course_id=123 - 成績取得

  • GET /api/assignments/upcoming - 今後の課題

  • その他多数!

本番環境(ChatGPT/Gemini)向けには、クラウドにデプロイします:


会話例

接続後、Claudeに以下のように尋ねることができます:

  • "履修中のコースを表示して"

  • "CS101の成績はどうなっている?"

  • "今週締め切りの課題は何?"

  • "データ構造コースの内容を表示して"

  • "未読の通知はある?"

  • "今後7日以内に締め切りのものはある?"

仕組み

このサーバーは、MoodleのWebサービスREST APImoodle_mobile_app サービス・トークンを使用しています。このサービスはほとんどのMoodleインストールでデフォルトで有効になっているため、管理者の設定は不要です。

トラブルシューティング

「Invalid login」エラー: ユーザー名とパスワードを再確認してください。機関によっては、ユーザー名としてメールアドレスを使用する場合と、別のIDを使用する場合があります。

「Web service not available」エラー: Moodle管理者がモバイルWebサービスを無効にしている可能性があります。サイト管理 > プラグイン > Webサービス > モバイル から有効にするよう依頼してください。

成績が表示されない: 成績レポートAPIには gradereport/user:view 権限が必要です。これは学生にとって標準的なものですが、一部のサイトでは制限されている場合があります。

ライセンス

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/Jawadh-Salih/moodle-mcp-server'

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