AcademyOcean MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.3.4Updated Nov 7, 2026

List learners, courses, teams, progress, quiz results and certificates in AcademyOcean.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableProductivity & WorkflowData & Analytics

Overview

AI-generated overview

Hosted read-only MCP server that lets an assistant query AcademyOcean academies, courses, teams, learners, progress, quiz results and certificates.

What you can do
  • List academies, courses and teams, including team course assignments
  • List learners and filter them by email, country, score, registration date or repeated logins
  • Read one learner's progress across courses, with lesson and quiz breakdowns
  • Report on a course: who completed it, every learner's progress, and where learners stopped
  • Retrieve certificates, custom learner variables, quiz attempt details and invitation status
  • Check monthly usage, request a feature, or manage a Pro subscription
When to use it
Useful when you want to ask questions about an AcademyOcean account in natural language, such as who has not logged in recently, who completed a course, which learners stalled at a lesson, or how a group scored, without exporting data by hand.
Requirements
Remote streamable HTTP endpoint; no local install. Connect with the endpoint URL only, then sign in through OAuth with AcademyOcean credentials. On first connect you supply an AcademyOcean Client ID and Client Secret from an OAuth application registered in Settings → API; the server stores them per user.
Before you install
The login flow asks for AcademyOcean API credentials (Client ID and Client Secret); these are stored by the third-party host. Learner data, including emails, countries, scores and quiz answers, is sent to that host. Free plan allows 50 tool calls a month; paid plans cost money and the upgrade tool returns a Stripe Checkout link, so confirm before paying. Subscription tools change billing state.

Installation

In SourceWeft

  1. Open AcademyOcean MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Facademyocean/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "academyocean-by-usefulapi": {
      "type": "http",
      "url": "https://academyocean.usefulapi.io/mcp"
    }
  }
}

README

AcademyOcean MCP by usefulapi

Use your AcademyOcean account from Claude, Cursor, or any MCP client. Read learners, courses, teams, progress, quiz results and certificates. Hosted, no local install: connect with your own credentials.

Live endpoint: https://academyocean.usefulapi.io/mcp · Homepage: https://usefulapi.io

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://academyocean.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http academyocean https://academyocean.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "academyocean": {      "url": "https://academyocean.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your AcademyOcean credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/academyocean/

On first connect you provide the AcademyOcean Client ID and AcademyOcean Client Secret, copied from Settings → API after you register a new OAuth application. The server validates it and stores it per user. No keys go in config files.

Tools

ToolTypeWhat it does
academyocean_list_academiesreadList academies
academyocean_list_coursesreadList courses
academyocean_list_teamsreadList teams
academyocean_list_learnersreadList learners
academyocean_get_learner_progressreadGet a learner's course progress
academyocean_learners_registeredreadLearners registered on a date
academyocean_learners_repeated_loginsreadLearners with repeated logins
academyocean_learners_completed_coursereadLearners who completed a course
academyocean_course_progress_by_learnersreadLearners' progress in a course
academyocean_learners_by_scorereadLearners by score
academyocean_passive_learnersreadPassive learners
academyocean_learners_churn_at_contentreadLearners who stopped at a lesson
academyocean_learners_by_countryreadLearners from a country
academyocean_learner_certificatesreadGet a learner's certificates
academyocean_learner_variablesreadGet learners' custom variables
academyocean_learner_quiz_statisticsreadGet learners' quiz statistics
academyocean_check_learner_invitesreadCheck learner invitations
academyocean_usage_statusmetaUsage status (free-tier meter)
academyocean_request_featuremetaRequest a missing feature
academyocean_upgrademetaUpgrade to Pro or Pro+
academyocean_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per user)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with academyocean_upgrade (it returns a Stripe Checkout link). Cancel any time with academyocean_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running academyocean_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT — see LICENSE. Documentation only; the server is hosted.

Source: servers/academyocean/README.md at commit 4046075

Tools

17

academyocean_list_academies

List academies

List the academies in the account with their learner counts, publish state and custom domain. Good first call to find an academy id. Action: academies.

Takes no parameters.

academyocean_list_courses

List courses

List the courses in the academy with their id, slug, description, group flag and SCORM flag. Use the id in the course tools. Action: courses.

Takes no parameters.

academyocean_list_teams

List teams

List the teams in the academy. Set include_course_assignments to add the courses each team is assigned. Action: getTeams.

Parametersinclude_course_assignments

academyocean_list_learners

List learners

List learners registered in the academy with their score, lesson counts, last login and country. Filter by one email. Action: learners.

Parametersemaillimitwith_teamswith_academy

academyocean_get_learner_progress

Get a learner's course progress

Return one learner's progress in every course or group, with a breakdown of each lesson and quiz (passed, score, times). Action: courseProgress.

Parametersemailrequiredwith_teamscourse_typewith_academyonly_displayed_courses

academyocean_learners_registered

Learners registered on a date

List learners who registered on one date (with an operator such as >=) or within a start and end date range. Dates are UTC. Action: learnersRegisteredAt.

Parametersenddatestartoperator

academyocean_learners_repeated_logins

Learners with repeated logins

List learners who logged in more than once, optionally within a date range (UTC). Action: learnersRepeatedLogIns.

Parametersendstart

academyocean_learners_completed_course

Learners who completed a course

List learners who completed one course. Use the course id or URL slug from the course list. Action: learnersCourseComplete.

Parameterscourse_idrequired

academyocean_course_progress_by_learners

Learners' progress in a course

Return every learner's progress in one course, page by page. Give course_id or course_slug (course_id wins if both are set). Action: learnersProgressByCourse.

Parameterspageamountcourse_idcourse_slugonly_assigned_learnersshow_not_started_learners

academyocean_learners_by_score

Learners by score

List learners whose score matches a value, for example >= 80. Action: learnersWithScore.

Parametersscorerequiredoperator

academyocean_passive_learners

Passive learners

List learners who registered but never opened a lesson. Action: passiveLearners.

Takes no parameters.

academyocean_learners_churn_at_content

Learners who stopped at a lesson

List learners who stopped progressing at one content item (lesson or quiz) of a course. Action: learnersChurnAtContent.

Parameterscourse_idrequiredcontent_idrequired

academyocean_learners_by_country

Learners from a country

List learners from one country by its ISO code, for example NL. Action: learnersFromCountry.

Parameterscountry_iso_coderequired

academyocean_learner_certificates

Get a learner's certificates

List the certificates issued to one learner, with course name, issue date and PDF or image links. Action: certificates.

Parametersemailrequired

academyocean_learner_variables

Get learners' custom variables

Return custom variable values for learners. Pass an object keyed by learner email, each value a list of variable names. System fields are not returned. Action: getLearnerVariable.

Parametersrecordsrequired

academyocean_learner_quiz_statistics

Get learners' quiz statistics

Return detailed quiz attempts for learners. Pass an object keyed by learner email, each value a list of encoded quiz ids. Includes scores, timing and per-question answers. Action: getLearnersQuizStatistic.

Parametersrecordsrequired

academyocean_check_learner_invites

Check learner invitations

Check whether invitations exist for some emails, and whether each one has been used. Returns one entry per email. Action: checkLearnerInvite.

Parametersemailsrequired

Version history

6
  1. v1.3.4LatestNov 7, 2026
  2. v1.2.3Nov 5, 2026
  3. v1.2.2Nov 5, 2026
  4. v1.2.1Nov 4, 2026
  5. v1.2.0Nov 3, 2026
  6. v1.1.1Nov 3, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations