LearnPress abilities, governed through the Bridge

An agent can browse and read a school's courses, lessons, quizzes and student progress, and can create, update, or delete courses, lessons, sections, quizzes and quiz questions, plus enroll students and update their enrollment status.

Abilities
258 read12 write5 destructive
Active installs
70K+
Rating
86% (597 ratings)
Version
4.4.9
Requires
WP 6.0+, PHP 7.4+
Last updated
2026-09-28 2:08am GMT

What has to be true first

LearnPress must be installed and active, and the site needs WordPress 6.9 or newer for the Abilities API itself (the plugin's own readme lists a lower floor of 6.0, which only covers LearnPress's non-AI features). Each ability's permission check is resolved per ability name by the plugin's own capability map, generally an editing capability for course/lesson/quiz management and a broader teaching or admin capability for enrollment changes.

  • Every ability's permission callback calls AuthContext::is_api_key_auth() first and returns 'missing_auth' if false, regardless of the caller's WordPress capability; that flag is only set true by LearnPress's own ApiKeyAuthenticator when the request hits its own REST route (/mcp/mcp-adapter-default-server or /lp/v1/mcp) with a LearnPress-issued consumer key/secret over HTTP Basic auth.
  • The base capability checked after that gate defaults to manage_options for every ability (via the learn-press/mcp/api-keys/base-capability filter, default the same string for all abilities, not mapped per ability).

A note on the count below

Matches easymcpai's listed count of 25; verified directly from the id list in learnpress/inc/MCP/Abilities.php. Individual risk levels are inferred from the file's write_annotations()/destructive_annotations() helper pattern matched against each ability's create/update/delete verb, since the evidence extract did not keep each ability name on the same line as its annotation call.

The 25 LearnPress abilities

Grouped by what each one can change. Every one starts off until you enable it.

Read 8

  • Read

    List courses

    Returns a paginated list of LearnPress courses.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-get-courses
  • Read

    Get course details

    Returns full details for one course, including its curriculum.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-get-course-details
  • Read

    List lessons

    Returns the lessons belonging to a course or section.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-list-lessons
  • Read

    Get lesson details

    Returns full details and content for one lesson.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-get-lesson-details
  • Read

    List quizzes

    Returns the quizzes belonging to a course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-list-quizzes
  • Read

    Get quiz details

    Returns full details for one quiz, including its questions.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-get-quiz-details
  • Read

    List enrollments

    Returns the enrollment records for a course or student.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-get-enrollments
  • Read

    Get student progress

    Returns a student's completion progress through a course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-get-student-progress

Write 12

  • Write

    Create a course

    Creates a new LearnPress course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-create-course
  • Write

    Update a course

    Updates fields on an existing course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-update-course
  • Write

    Create a lesson

    Creates a new lesson within a course section.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-create-lesson
  • Write

    Update a lesson

    Updates fields or content on an existing lesson.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-update-lesson
  • Write

    Create a section

    Creates a new curriculum section within a course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-create-section
  • Write

    Update a section

    Updates fields on an existing curriculum section.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-update-section
  • Write

    Create a quiz

    Creates a new quiz within a course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-create-quiz
  • Write

    Update a quiz

    Updates fields on an existing quiz.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-update-quiz
  • Write

    Add a quiz question

    Adds a new question to an existing quiz.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-add-quiz-question
  • Write

    Update a quiz question

    Updates the text, answers, or scoring of an existing quiz question.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-update-quiz-question
  • Write

    Enroll a student

    Enrolls a student in a course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-enroll-student
  • Write

    Update enrollment

    Updates a student's enrollment status and learning result metadata.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-update-enrollment

Destructive 5

  • Destructive

    Delete a course

    Permanently deletes a course.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-delete-course
  • Destructive

    Delete a lesson

    Permanently deletes a lesson.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-delete-lesson
  • Destructive

    Delete a section

    Permanently deletes a curriculum section and its lessons.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-delete-section
  • Destructive

    Delete a quiz

    Permanently deletes a quiz.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-delete-quiz
  • Destructive

    Delete a quiz question

    Permanently deletes a question from a quiz.

    Permission
    Custom checkrequires LearnPress's own API-key auth (AuthContext::is_api_key_auth()), plus manage_options (learn-press/mcp/api-keys/base-capability filter)
    MCP tool
    aafm-bridge-learnpress-delete-quiz-question

How to switch these on

Four steps from two active plugins to a governed connection.

  1. Install LearnPress and Agent Abilities for MCP

    Both plugins need to be active on the same WordPress site. LearnPress registers its own abilities; this plugin discovers and governs them.

  2. Open the Other plugins screen

    In Agent Abilities for MCP, open the Bridge tab (labeled "Other plugins" in the admin). Abilities from every registered plugin appear there, grouped by the plugin that registered them.

  3. Enable one ability at a time

    Every ability from LearnPress starts off. Turn on only the ones you want an agent to reach, or enable the whole set in one click.

  4. Connect as a least-privilege user

    Approve the connection as a WordPress account scoped to what you actually want the agent to do. Each call still re-checks that account’s capability before it runs.

Read more in how bridging works or the full documentation.

Frequently asked questions

Does LearnPress work with the Bridge?

Conditionally. LearnPress registers 25 real abilities with per-ability capability checks, but its shared permission callback also hard-requires LearnPress's own API-key authentication (AuthContext::is_api_key_auth()) tied to its own REST route, so a call reaching the ability any other way, including the Bridge's normal connected-user execution path, is rejected before the capability check runs.

What has to be true for LearnPress's abilities to register?

Every ability's permission callback calls AuthContext::is_api_key_auth() first and returns 'missing_auth' if false, regardless of the caller's WordPress capability; that flag is only set true by LearnPress's own ApiKeyAuthenticator when the request hits its own REST route (/mcp/mcp-adapter-default-server or /lp/v1/mcp) with a LearnPress-issued consumer key/secret over HTTP Basic auth.. The base capability checked after that gate defaults to manage_options for every ability (via the learn-press/mcp/api-keys/base-capability filter, default the same string for all abilities, not mapped per ability)..

Does LearnPress need anything special to work with the Bridge?

LearnPress must be installed and active, and the site needs WordPress 6.9 or newer for the Abilities API itself (the plugin's own readme lists a lower floor of 6.0, which only covers LearnPress's non-AI features). Each ability's permission check is resolved per ability name by the plugin's own capability map, generally an editing capability for course/lesson/quiz management and a broader teaching or admin capability for enrollment changes.

More LMS & membership plugins

An agent can list, read, create, update, and delete courses, sections, lessons, memberships, and access plans, enroll or unenroll students, grade quiz attempts, track lesson-completion progress, and manage orders and awarded certificates.

LMS & membership10K+ active installs
31 read36 destructive
View abilities

An agent can list courses, lessons, quiz questions, and enrolled students, each scoped to what the connected user is allowed to see.

LMS & membership9K+ active installs
4 read
View abilities

An AI agent can create, read, update, delete and restore courses, sections, lessons, quizzes, questions, taxonomies, reviews and Q&A, save whole course/quiz structures in one call, manage enrollments and learner progress, and read or update orders, users and most plugin settings.

LMS & membership6K+ active installs
32 read35 write14 destructive
View abilities

Verified from LearnPress's own free wordpress.org code on 28 September 2026, not from its marketing claims. Not every ability listed here has been run end to end against a live site. Plugin authors change their code, so a name, a capability, or a condition can be different in a later release. This site is not affiliated with, or endorsed by, ThimPress or LearnPress. Back to the full directory.

Back to the plugin directory

Bridge LearnPress, keep the same control.

Every ability starts off, is scoped to the user you connect, and is written to the same audit log as core. Turn on only what you need.

Off by default. Capability checked on every call.