- 28 typed tools over /api/v1/bm: list, show, create and update for courses and meetings, plus delete for class sessions, readings, deadlines and materials (save upserts on title and course) - inputs mirror Fillable and Rules; enums, lengths and date formats in the field descriptions; no seed, me or dry_run tool - materials accept meeting_id (absent keeps, null clears, must exist) and the managed material JSON shows it - README: MCP tools section
17 lines
566 B
Go
17 lines
566 B
Go
package bm
|
|
|
|
import (
|
|
"git.golem15.com/golem15/summercms/modules/pact"
|
|
)
|
|
|
|
var _ pact.HasMCP = (*Plugin)(nil)
|
|
|
|
// MCP declares the plugin's MCP tools. They are exposed with the bm_ prefix,
|
|
// bind token-guarded routes only (the token twins of the student API under
|
|
// TokenPrefix and the management API under ManagePrefix), run as the
|
|
// signed-in user under golem15.user's "user" guard, and their titles and
|
|
// descriptions are static text, never built from data.
|
|
func (p *Plugin) MCP() pact.MCP {
|
|
return pact.MCP{Tools: append(studentTools(), manageTools()...)}
|
|
}
|