Skip to main content
Glama

Absorb LMS MCP Server and API by Cotlet

Approve enrollment request in Absorb LMS

absorb_lms_approve_enrollment_request
Read-onlyIdempotent

Approve enrollment request in the user's own Absorb LMS account from ChatGPT, Claude or any AI agent. Returns how to do it in Absorb LMS step by step (screens, buttons, fields) and opens nothing by itself; then do it with the cotlet_browser_* tools in the user's Absorb LMS Cloud Browser. Absorb LMS's official API: Absorb LMS has an Integration API, a REST API with JSON for learners, courses, departments and grades, but it needs a private key tied to your portal that your Absorb account team provides, and your own code (checked 20 Oct 2026).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "absorb_lms_approve_enrollment_request"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds real value beyond the annotations by saying the tool 'opens nothing by itself' and returns screens/buttons/fields, which is consistent with readOnlyHint=true. The closing paragraph about Absorb's Integration API and private-key provisioning is background about why browser automation is required rather than behavior of this tool, so it dilutes rather than deepens the behavioral picture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The first sentence is front-loaded and useful, but the third sentence about the official API, private keys, and a dated check is long, tangential, and does not help an agent invoke this tool. It could be cut or compressed to a clause.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters and no output schema, the description carries the load, and it does explain what comes back (step-by-step screens, buttons, fields) and the required follow-up. It stops short of stating prerequisites such as the user being signed in to the Cloud Browser session.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to disambiguate; an agent can call it with an empty object without further reading. Baseline 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Approve enrollment request in ... Absorb LMS') and then clarifies the surprising truth that it returns step-by-step instructions rather than performing the approval. It distinguishes itself from the browser tools it hands off to, though the name/title alone would mislead an agent into expecting a mutation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a clear usage path: call this to get the click-by-click procedure, then execute it with the cotlet_browser_* tools. It does not state when to prefer a sibling such as enroll_users_in_a_course or list_course_enrollments instead, but the workflow context is explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources