679,729 tools. Updated 2026-10-20 02:18
"LMMS" matching MCP tools:
- Delete a course from this site. If other sites share the course it is only detached from this one and nothing is deleted. Otherwise it is permanently deleted with its content versions, enrollments, learner progress, issued certificates, discussions, payment records (they drop out of purchase history and revenue reports), applications, learning-path steps and group course links, which cannot be undone; while it has enrolled (non-waitlisted) learners the call is refused unless force:true. To hide a course but keep everything, set isVisibleInCatalog:false with course_update instead. Returns whether the course was deleted or detached. Check who is enrolled with enrollment_list (courseId) before forcing a delete.ConnectorDestructiveAPI key
- Replace a course's lessons by saving a complete new content version, which enrolled learners see immediately; settings such as price or visibility are changed with course_update instead. Earlier versions stay readable with course_content_get, so a bad write can be rolled back. This is not a patch: send the whole course every time, as `blocks` (EditorJS) or `markdown` (prose only), with H2 headers as section titles and H3 headers as unit titles. Keep each existing block's `id` from course_content_get: learners' answers, submissions and completion records are tied to block ids, so a block saved without its id (and every block written as markdown) no longer shows its learners' history. Get block shapes from block_type_list; its `courseAssessments` blocks (quiz, assignment, form, poll and similar) are valid ONLY in course content. Every call adds a version, even an identical one; returns the new version number and block count.ConnectorDestructiveAPI key
- List a course's saved content versions, newest first, as metadata only: version number, createdAt, updatedAt and blockCount (plus authorName when the key also holds members:read). Use it to find an earlier version to inspect or restore, then read that version's blocks with course_content_get(version:N); to read the current lessons you do not need it, since course_content_get returns them by default. The first row is the current version, so limit:1 tells you its number and when it was saved. Every save adds a version and none are pruned: page back from the newest by raising offset in steps of limit. Returns {courseId, total, count, versions}. To restore a version, save its blocks with course_content_set; that adds a new version and keeps the history.ConnectorAPI key
- Return the EditorJS block catalog: the block types you can write as `blocks` and the exact `data` shape of each. It is static reference data and reads nothing from your site. Prose needs no catalog: `markdown` (headings, paragraphs, lists, quotes, tables, code) is converted to blocks for you. Call it with no arguments for a compact index (each type, its tier and when to use it), then again with `types` set to only the blocks you will emit. Tiers: prose = in-column text, section = full-width layout, visual = charts and summaries, media = embeds needing an external id or URL. Sections: `blocks` suit any content unless an entry's note says otherwise (`courses` is for pages and the homepage only); `courseAssessments` (quiz, assignment, form, poll and other graded or interactive blocks) are valid ONLY in course content; `notForBlogContent`, despite its name, lists types never to emit anywhere. course_content_set accepts these blocks to replace a course's lessons.ConnectorAPI key
- List enrollment records on this site, newest enrollment first: who is enrolled or waitlisted in which course, and how far along they are. Narrow it to one learner by email or userId (every course they are in, or with courseId their single enrollment; an unknown email returns an empty list), by course, by exact status label, or to the waitlist queue (waitlisted:true) or everyone off it (waitlisted:false); status:"pending" with waitlisted:false finds enrolled learners who still see an enrollment step instead of Start/Continue (for example, ones unlocked from the waitlist in the dashboard). Course applications awaiting a decision are not enrollments: see application_list. Each row has courseId, userId, status, isWaitListed, enrolledAt, expiresAt, user {id, name, email, username}, progressPercentage (0 if not started) and completedAt (set when the learner first completes the course). Returns {total, enrollments}; page with offset until it reaches total. To change or revoke one learner's enrollment, pass their email straight to enrollment_update or enrollment_revoke.ConnectorAPI key
- Change one existing enrollment in place, keeping it and the learner's progress: set or clear its access expiry, move the learner off or onto the waitlist, or relabel its status. Use it for every change to an enrollment that exists; to add one use enrollment_create, to remove one enrollment_revoke. Identify the learner by email or userId; a learner not enrolled in that course is a not-found error, and omitted fields stay unchanged. To let a waitlisted learner in, send isWaitListed:false with status:"completed": self-waitlisted learners hold "pending", and learner pages show Start/Continue only for "completed". No email is sent. Returns the updated enrollment {courseId, userId, status, isWaitListed, enrolledAt, expiresAt, user}.ConnectorAPI key
Matching MCP Servers
- AlicenseBqualityBmaintenanceEnables AI agents to create, modify, and save LMMS music projects programmatically, including tracks, notes, mixer control, effects, and song settings.521MIT
- AlicenseNot gradedqualityCmaintenanceEnables MCP-capable agents to control a running LMMS session to compose, arrange, mix, and export music, including creating tracks, editing notes, loading presets and samples, automating parameters, and rendering audio or MIDI.GPL 2.0
Matching MCP Connectors
Crawls any documentation or SaaS site and compiles a standards-compliant /llms.txt manifest and J.
Crawls any website and generates a standards-compliant /llms.txt file and JSON-LD schema bundle.
- List applications to courses that require applying before enrollment (requiresApplication), newest first, each with the applicant and their answers; an applicant is not enrolled until the application is approved. For enrolled or waitlisted learners use enrollment_list instead. status:"pending" is the review queue; add courseId for one course's queue. Learners apply from the course page, one application per learner per course; a rejected learner can apply again, which reopens the same application as pending with new answers. applicationData is {responses: [{label, value}]}, one entry per application question, or {message} when the course asks no questions (older applications may hold a flat question-to-answer object). Returns {total, count, applications: [{id, status, applicant {id, name, email}, course {id, name}, applicationData, decisionNote, reviewedAt, createdAt, updatedAt}]}. Approve or reject one with application_review, using its id.ConnectorAPI key
- Revoke one learner's enrollment in a course: the enrollment record is deleted and their access ends (a waitlisted learner leaves the waitlist); to change an expiry, waitlist place or status label instead, use enrollment_update. Revoking ends access without deleting the learner's history: their progress, graded work and any issued certificate are kept, so re-enrolling them later with enrollment_create restores access with that history. No email is sent, and the account and its site membership stay. Identify the learner by `email` or `userId`, as shown in enrollment_list rows; a learner who is not enrolled in that course is a not-found error. Returns the text "Enrollment revoked." Get course ids from course_list.ConnectorDestructiveAPI key
- Update a course's settings, from catalog text, slug, price, dates and visibility to tags, instructors, prerequisites, the application form and certificateConfig (completion and certificate rules), and return the updated course object (same shape as course_get). Scalar fields patch: only those you send change, and null clears a nullable one. Lists are replaced whole (subjects, topics, instructors, prerequisites, applicationFields): send the complete list; course_get with includeConfig:true returns the current ones. An invalid value rejects the call and leaves the course unchanged. Saves are recorded in the course's change log; they email no one and fire no webhook. Lessons are not settings: replace them with course_content_set. accessDurationDays applies only to new enrollments; change existing learners' expiry with enrollment_update.ConnectorAPI key
- Get a course's lessons as EditorJS blocks (H2 headers are sections, H3 headers are units): the current version, or an older saved revision when you pass `version` (list revisions with course_version_list). This is the authoring source with each block's id and data; course_get returns the course's settings and `fetch` only its catalog summary. Returns {courseId, version, blocks}, plus savedAt for an older revision; version 0 with no blocks means nothing has been written yet, and a version number that does not exist is a not-found error. Read the current version before course_content_set so you can keep each block's id. To roll back, read the old version and write its blocks with course_content_set, which saves a new version rather than erasing history.ConnectorAPI key
- Copy a course into a new hidden course named "<name> (Copy)" on this site, the fastest way to start a new cohort or a variant of a template; use course_create for a blank course. The copy gets the source's settings, its current lessons as version 1 (graded blocks get fresh ids so learner records stay separate), SCORM/xAPI packages, discussion topics and prompts, tags, certificate template and instructors, plus authorId (default: the site's first admin), who is added to its instructors and recorded as the author of version 1. It does NOT copy enrollments or other learner data, the slug, or the certificate statement-code prefix and numbering, so give the copy a slug with course_update before learners can reach it. Large SCORM/xAPI packages make the copy slow; if the call times out, check course_list before retrying so you do not create a second copy (a copy that fails is rolled back). Returns the new course object.ConnectorAPI key
- Crawls any documentation or SaaS site and compiles a standards-compliant /llms.txt manifest and JSON-LD schema bundle. WHEN TO USE: Call `generate_site_llms_txt` when your task requires deterministic `llms-generator` analysis for `url`; use `get_agent_wallet_status` to check your remaining free trial quota or prepaid balance. WHEN NOT TO USE: Do not use for unrelated domains or binary media. PARAMETER INTERACTIONS: Pass the target `url` as a non-empty string; omit `agent_id` and `tx_hash` during your 5 free trial calls, or supply `agent_id` (`agd_pass_...`) / `tx_hash` for paid execution. Read-only and idempotent; results are cached for 1 hour (<5ms cache hit). $0.01 per call. Pricing: the first 5 calls per agent_id are free and failed calls are never charged. After 5 calls, the tool returns a payment-required quote (not a fatal error) with a $2 Stripe top-up link and Base/Solana USDC addresses; complete payment, then retry with your agd_pass_ key in agent_id or pass tx_hash. Example: generate_site_llms_txt(url='https://docs.stripe.com/api')ConnectorNo auth
- Approve or reject one course application from application_list. Approving ENROLLS the applicant right away (prerequisites skipped, the course's access period applied) and emails them an approval with a link into the course; rejecting records the decision and emails them your decisionNote, enrolling no one. Repeating the decision an application already has does nothing (no second enrollment or email), and rejecting an application that was already approved does not remove the enrollment: use enrollment_revoke for that. To enroll someone who never applied, use enrollment_create. Returns {id, status, decisionNote, reviewedAt}.ConnectorAPI key
- Get one course's settings record by id: the same course object course_list returns (catalog fields, flags, subjects, topics, enrollmentCount). Pass includeConfig:true to also get its instructors, prerequisites and application form, which the course object leaves out; that needs the courses:write permission, and a read-only connection gets an error rather than silently missing fields. For the course's lessons use course_content_get; for a citable plain-text summary with its public page URL use `fetch`. Returns the course object, or {course, config} with includeConfig; a course that is not on this site is a not-found error.ConnectorAPI key
- Enroll one learner in a course by email, finding or creating their account (new accounts are passwordless students on this site); use enrollment_bulk_create for many learners, and application_review to approve someone who applied. Price, the application requirement and enrollment dates are not checked; prerequisites are checked for a new enrollment unless skipPrerequisiteCheck:true, and an account is still created when they refuse it. Cubite emails no one unless sendInvite:true; by default you get magicLinkUrl, a single-use sign-in link for your own welcome email. A new enrollment gets the status label "completed" and the course's access period, and fires the site's enrollment.created webhook. Use it to add enrollments; to change an existing one, use enrollment_update. Calling it for a learner who is already enrolled creates nothing new (created:false) and keeps the expiry and waitlist flag, but resets the status label to "completed". Returns {enrollment, user, magicLinkUrl, created, emailSent, externalReference}. Get course ids from course_list.ConnectorAPI key
- Enroll up to 100 learners in one course in a single call, under the same rules as enrollment_create (accounts found or created, prerequisites checked unless skipped, no email unless sendInvite:true); use enrollment_create for one learner or to pass redirectTo or externalReference. Learners are processed one at a time: an invalid email or unmet prerequisites fails only that learner, so the call can partly succeed, but an unexpected server error stops the batch with no per-learner results (learners enrolled before it stay enrolled, so re-run the call). Already-enrolled learners keep their enrollment (created:false, status label reset to "completed"), so a retry duplicates nothing, though it re-sends invites when sendInvite is on and replaces earlier sign-in links. Returns "Enrolled N, failed M" and a result per learner (email, ok, created, emailSent, magicLinkUrl, enrollment; or error and missingPrerequisites); if every learner fails, the call errors with those results. Get course ids from course_list.ConnectorAPI key
- List every course on this site with its settings, most recently updated first, including courses hidden from the public catalog and courses without a slug: the full inventory and the place to look up course ids. It has no keyword filter and returns no page URLs: to find courses by keyword, with their public page URLs, use `search`; for one course's record use course_get. Returns a JSON array of course objects: id, name, slug, description, price, discount, level, duration, dates, catalog flags such as isVisibleInCatalog, subjects, topics, and enrollmentCount (this site's enrollments, waitlisted included). To page, raise offset by limit until a page holds fewer than limit courses.ConnectorAPI key
- Search this Cubite site's courses by keyword and get each match's public page URL, for linking to or citing it. This is the search half of the search/fetch pair that ChatGPT connectors and deep research require. The whole query is matched as one case-insensitive phrase, so use one or two distinctive words. Courses match on name or description and are listed in name order; a course without a URL slug has no public page and is never returned, while courses hidden from the catalog are. Returns up to 10 results as {id, title, url}; pass a result's id to `fetch` for its citable text. It is not an inventory: to list, count or manage courses use course_list, which has no keyword filter but returns every course, with or without a slug, with its id, settings and enrollment count.ConnectorAPI key
- Read one result found via `search` as plain text with its public page URL, for quoting or citing it in an answer; this is the fetch half of the search/fetch pair. Pass the result's id exactly as search returned it (e.g. "course:..."). Returns {id, title, text, url, metadata}. A course's text is its public catalog summary (name, description, level, duration in hours, price, subjects, topics), not its lessons. A missing document, another site's content, and a type this connection cannot read all return the same not-found error; an id without a type prefix is rejected as invalid. To work with a course rather than quote it, use course_get for its settings record (ids, flags, dates, enrollment count) and course_content_get for its lessons as EditorJS blocks.ConnectorAPI key
- Inspect an agent's account ledger: remaining free trial calls (out of 5), prepaid USD balance, cumulative spend, total API calls, and total LLM tokens saved. WHEN TO USE: Call before a batch of paid tool executions or after completing a Stripe or USDC top-up to confirm your balance. WHEN NOT TO USE: Do not use to process web content, execute marketplace tools, or submit payments; use the other tools on this server for execution. PARAMETER INTERACTIONS: Omit agent_id to inspect the default trial account derived from your client IP, or pass your explicit agent_id or agd_pass_ session key to check a specific funded wallet. Free and read-only: never charges a fee or consumes a free trial call. Example: get_agent_wallet_status(agent_id='example')ConnectorNo auth
- Create a new course on this site: settings only, no lessons yet; to copy an existing course with its lessons, use course_duplicate. The public catalog lists a course once it has a slug and isVisibleInCatalog is true (the default), so build with isVisibleInCatalog:false and publish later with course_update. Prerequisites, application questions and certificateConfig (completion and certificate rules) are not accepted here; set them afterwards with course_update. New courses start with the reading-time gate on, so a text unit counts as complete only after a minimum reading time (course_update's certificateConfig turns it off). Creating a course emails no one and fires no webhook. A rejected call (bad value, unknown instructor, taken slug) creates nothing, but names need not be unique, so every successful call adds another course. Returns the new course's name, id and slug; add lessons next with course_content_set.ConnectorAPI key