Skip to main content
Glama

Moodle MCP Server

by moodleMCP
params.test.ts949 B
import { buildParams } from '../src/moodleClient'; describe('buildParams/flatten', () => { test('simple params', () => { process.env.MOODLE_TOKEN = 'tok'; const p = buildParams('core_course_get_courses', { a: 1, b: 'x' }); expect(p.get('wstoken')).toBe('tok'); expect(p.get('wsfunction')).toBe('core_course_get_courses'); expect(p.get('a')).toBe('1'); expect(p.get('b')).toBe('x'); }); test('array params', () => { process.env.MOODLE_TOKEN = 'tok'; const p = buildParams('mod_assign_get_assignments', { courseids: [2,3] }); expect(p.get('courseids[0]')).toBe('2'); expect(p.get('courseids[1]')).toBe('3'); }); test('nested params', () => { process.env.MOODLE_TOKEN = 'tok'; const p = buildParams('core_user_get_users', { criteria: [{ key: 'email', value: 'a@b.c' }] }); expect(p.get('criteria[0][key]')).toBe('email'); expect(p.get('criteria[0][value]')).toBe('a@b.c'); }); });

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/moodleMCP/mcpmoodle'

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