LMS Toolkit MCP server — authoring tools for Canvas course packages. MCP endpoint: /mcp (Streamable HTTP) Access: a Gingham account with the MCP tier. Sign in with OAuth (nothing to paste) or use an API key minted in the web app. Add this server — Claude Code. Works on every plan, no org-level setup: claude mcp add --transport http gingham https://mcp.ginghamlearning.com/mcp then /mcp inside a session (or `claude mcp login gingham`) and approve. Add --scope user to load it in all your projects. Add this server — claude.ai or the Desktop chat app: Settings → Connectors → Add custom connector → the endpoint above. On Team/Enterprise an Owner must first enable custom connectors for the org. If "Add custom connector" is missing or greyed out, use the Claude Code route above — it is configured per user and is unaffected by that org setting. Per-tool control: Claude Code prompts before every tool call, and permission rules name tools individually, e.g. mcp__gingham__soft_reset_canvas_course. Deny the destructive ones (soft_reset_canvas_course, push_to_canvas, delete_canvas_item, delete_workspace_file) if you want them to always stop and ask. Canvas tools (push/pull/diff/edit) read the Canvas connection held server-side for your Gingham account — this server NEVER accepts a Canvas token as a tool argument. Connect Canvas once, then the Canvas tools work here with no further setup. Two ways: - Ask your agent to run the connect_canvas tool; it returns a browser link to finish (Canvas sign-in, or a one-time token-paste page). - Or connect in the web app at app.ginghamlearning.com (account page → "Canvas connection", or a course's "Connect" tab). Agent skills (public — curl into ~/.claude/skills/): /skill.md how to run the toolkit MCP tools (toolkit-mcp) /authoring-skill.md the bulk-INI course format (canvas-course-authoring) /authoring-example.ini a complete worked INI course