Skip to main content
Glama
Decian-Inc

curricula-mcp

by Decian-Inc

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CURRICULA_BASE_URLNoBase URL for the Curricula API. Defaults to https://mycurricula.com/api/v1. Use https://dev.curricula.com/api/v1 for the development sandbox.https://mycurricula.com/api/v1
CURRICULA_ACCESS_TOKENYesThe OAuth access token issued by Curricula with the required scopes.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_accountsA

List accounts available to the authenticated administrator. Calls GET /accounts. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_accountA

Get an account's details. Calls GET /accounts/{accountId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

delete_accountB

Permanently delete an account. Calls DELETE /accounts/{accountId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_assignmentsA

List assignments for an account. Calls GET /accounts/{accountId}/assignments. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_departmentsB

List departments in an account. Calls GET /accounts/{accountId}/departments. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_groupsA

List learner groups in an account. Calls GET /accounts/{accountId}/groups. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_learnersA

List learners in an account. Calls GET /accounts/{accountId}/learners. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_phishing_campaignsA

List phishing campaigns for an account. Calls GET /accounts/{accountId}/phishing-campaigns. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_phishing_scenariosA

List phishing scenarios for an account. Calls GET /accounts/{accountId}/phishing-scenarios. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_admin_usersB

List account administrators. Calls GET /accounts/{accountId}/users. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_summary_reports_for_accountB

List summary reports for an account. Calls GET /accounts/{accountId}/account-summary-reports. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_account_summary_reportsC

List account summary reports. Calls GET /account-summary-reports. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_account_summary_reportA

Get an account summary report. Calls GET /account-summary-reports/{accountSummaryReportId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_assignmentsA

List assignments. Calls GET /assignments. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_assignmentA

Get assignment details. Calls GET /assignments/{assignmentId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_assignment_learnersA

List learners assigned to an assignment. Calls GET /assignments/{assignmentId}/learners. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_assignment_learner_activityB

Get learner activity for an assignment. Calls GET /assignments/{assignmentId}/learner-activity. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_assignment_completion_certificateB

Get a learner's assignment completion certificate. Calls GET /assignments/{assignmentId}/completion-certificate. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_assignment_enrollment_conditionsA

List assignment enrollment conditions. Calls GET /assignments/{assignmentId}/enrollment-conditions. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_assignment_enrollment_extrasB

List assignment enrollment extras. Calls GET /assignments/{assignmentId}/enrollment-extras. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_departmentsB

List departments. Calls GET /departments. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_departmentA

Get department details. Calls GET /departments/{departmentId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_episodesA

List training episodes. Calls GET /episodes. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_episodeA

Get training episode details. Calls GET /episodes/{episodeId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_groupsC

List learner groups. Calls GET /groups. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_groupC

Get learner group details. Calls GET /groups/{groupId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_learnersB

List learners. Calls GET /learners. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_learnerA

Get learner details. Calls GET /learners/{learnerId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_phishing_campaignsC

List phishing campaigns. Calls GET /phishing-campaigns. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_phishing_campaignA

Get phishing campaign details. Calls GET /phishing-campaigns/{phishingCampaignId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_phishing_campaign_attemptsA

List phishing attempts for a campaign. Calls GET /phishing-campaigns/{phishingCampaignId}/attempts. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_phishing_campaign_scenariosA

List scenarios attached to a phishing campaign. Calls GET /phishing-campaigns/{phishingCampaignId}/campaign-scenarios. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_phishing_campaign_scenarioB

Get a campaign-scenario's details. Calls GET /phishing-campaign-scenarios/{phishingCampaignScenarioId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_phishing_campaign_scenario_attemptsB

List attempts for a campaign-scenario. Calls GET /phishing-campaign-scenarios/{phishingCampaignScenarioId}/attempts. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_phishing_campaign_scenario_campaignA

Get the campaign related to a campaign-scenario. Calls GET /phishing-campaign-scenarios/{phishingCampaignScenarioId}/campaign. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_phishing_campaign_scenario_scenarioB

Get the phishing scenario related to a campaign-scenario. Calls GET /phishing-campaign-scenarios/{phishingCampaignScenarioId}/scenario. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

report_phishing_attemptA

Mark a phishing attempt reported using a code or message ID. Calls POST /phishing-attempts/actions/report. Put route IDs in path_params and filtering, pagination, sorting, or include values in query. Provide the JSON:API payload in body.

list_phishing_scenariosB

List phishing scenarios. Calls GET /phishing-scenarios. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

get_phishing_scenarioB

Get phishing scenario details. Calls GET /phishing-scenarios/{phishingScenarioId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

list_admin_usersC

List administrator users. Calls GET /users. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

create_admin_userA

Create an administrator user. Calls POST /users. Put route IDs in path_params and filtering, pagination, sorting, or include values in query. Provide the JSON:API payload in body.

get_admin_userB

Get administrator user details. Calls GET /users/{userId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

update_admin_userA

Update an administrator user. Calls PATCH /users/{userId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query. Provide the JSON:API payload in body.

delete_admin_userA

Permanently delete an administrator user. Calls DELETE /users/{userId}. Put route IDs in path_params and filtering, pagination, sorting, or include values in query.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 44 tools

Disambiguation4/5

Most tools have clear resource-and-scope distinctions, such as list_account_learners vs list_learners. However, list_account_summary_reports_for_account and list_account_summary_reports are nearly identical, and list_account_admin_users vs list_admin_users could easily be confused.

Naming Consistency4/5

Tool names overwhelmingly follow a consistent verb_noun snake_case pattern with list/get/create/update/delete prefixes. The main deviations are report_phishing_attempt, which uses an action verb rather than a CRUD prefix, and the awkward list_account_summary_reports_for_account name.

Tool Count2/5

44 tools is well above the well-scoped range, and many are thin GET wrappers around nested REST endpoints. The surface area could be meaningfully reduced by consolidating account-scoped list variants or using parameters.

Completeness2/5

The tool surface is heavily read-only: only admin users have full create/update/delete coverage, plus one report action. There are no mutation tools for accounts, assignments, departments, groups, learners, phishing campaigns, phishing scenarios, or episodes, so management workflows cannot complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues