Skip to main content
Glama

edubase_post_organizations_members

Assign users to organizations and update existing memberships, including optional job roles, departments, permissions, and notifications.

Instructions

Assign user(s) to organization(s). Updates memberships if already member of an organization.

Input Schema

NameRequiredDescriptionDefault
jobNooptional name of job role (or its external identifier if no job role has this name), empty string removes the job role, the job role is kept when not specified or unknown in an organization, the competency assignments of the members with another job role are updated, the competencies they only had through their previous job role are lost
usersYescomma-separated list of user identification strings
notifyNonotify users (default: false)
departmentNooptional name of department (or its external identifier if no department has this name), the competency assignments of the members moved to another department are updated, the competencies they only had through their previous department are lost
organizationsYescomma-separated list of organization identification strings
permission_customNocustomize the permission levels of the members inside the department (only used together with department, the permission_ fields not specified default to the ones of the department), members with custom permission levels keep them when the permission levels of the department are changed, set to false to make the members follow the permission levels of the department again, when not specified, custom permission levels are kept for the members staying in the same department and removed when moved to another department
permission_contentNooptional permission level to contents in organization (none / view / report / control / modify / grant / admin) (default: none)
permission_membersNooptional permission level to members in organization (none / department / organization) (default: none)
restriction_libraryNorestrict the members from managing the library of the organization (documents, versions and types), even with a sufficient permission level (only available if the library is enabled in the organization, ignored otherwise), left unchanged when not specified (default for new members: false)
permission_organizationNooptional permission level to organization (member / teacher / reporter / supervisor / admin) (default: member)
restriction_competenciesNorestrict the members from managing the competencies of the organization and its members (competencies, requirements, assignments, completions, expiry dates and attachments), even with a sufficient permission level (only available if the library is enabled in the organization, ignored otherwise), left unchanged when not specified (default for new members: false)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv2.0.9
    • addedInput schema / properties / job
      Added value: +{
      +  "description": "optional name of job role (or its external identifier if no job role has this name), empty string removes the job role, the job role is kept when not specified or unknown in an organization, the competency assignments of the members with another job role are updated, the competencies they only had through their previous job role are lost",
      +  "type": "string"
      +}
    • addedInput schema / properties / permission_custom
      Added value: +{
      +  "description": "customize the permission levels of the members inside the department (only used together with department, the permission_ fields not specified default to the ones of the department), members with custom permission levels keep them when the permission levels of the department are changed, set to false to make the members follow the permission levels of the department again, when not specified, custom permission levels are kept for the members staying in the same department and removed when moved to another department",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / restriction_competencies
      Added value: +{
      +  "description": "restrict the members from managing the competencies of the organization and its members (competencies, requirements, assignments, completions, expiry dates and attachments), even with a sufficient permission level (only available if the library is enabled in the organization, ignored otherwise), left unchanged when not specified (default for new members: false)",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / restriction_library
      Added value: +{
      +  "description": "restrict the members from managing the library of the organization (documents, versions and types), even with a sufficient permission level (only available if the library is enabled in the organization, ignored otherwise), left unchanged when not specified (default for new members: false)",
      +  "type": "boolean"
      +}
  2. Changed1 schema field changedv1.2.17
    • changedInput schema / properties / department / description
      Previous value: -"optional name of department, the competency assignments of the members moved to another department are updated, the competencies they only had through their previous department are lost"New value: +"optional name of department (or its external identifier if no department has this name), the competency assignments of the members moved to another department are updated, the competencies they only had through their previous department are lost"
  3. Changed1 schema field changedv1.2.16
    • changedInput schema / properties / department / description
      Previous value: -"optional name of department"New value: +"optional name of department, the competency assignments of the members moved to another department are updated, the competencies they only had through their previous department are lost"
  4. Addedv1.2.9
  5. Removedv1.2.8
  6. Changed3 schema fields changedv1.1.2
    • addedInput schema / $schema
      Added value: +"http://json-schema.org/draft-07/schema#"
    • addedInput schema / properties / permission_content / enum
      Added value: +[
      +  "none",
      +  "view",
      +  "report",
      +  "control",
      +  "modify",
      +  "grant",
      +  "admin"
      +]
    • addedInput schema / properties / permission_organization / enum
      Added value: +[
      +  "member",
      +  "teacher",
      +  "reporter",
      +  "supervisor",
      +  "admin"
      +]
  7. First observedv1.0.22

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare non-read-only, non-idempotent, non-destructive, open-world behavior. The description adds genuine value by disclosing upsert semantics ('updates memberships if already member'), which matters because repeat calls change state without erroring. It stays silent on the more consequential side effects documented only in the schema, such as job/department moves causing loss of competencies, and on bulk behavior across comma-separated lists.

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

Conciseness4/5

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

Two short sentences, front-loaded with the action and immediately followed by the non-obvious upsert condition. There is no filler, though the extreme brevity leaves important complexity unaddressed rather than trimming excess.

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

Completeness3/5

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

The rich schema and annotations carry most of the load, so an agent can call the tool correctly. However, for an 11-parameter bulk mutation that can silently alter job roles, departments, and permission levels, the description only covers the upsert case and omits any warning about side effects or the meaning of the optional permission/restriction fields as a group.

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

Parameters3/5

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

Schema description coverage is 100% and all 11 parameters, including enums and defaults, are fully documented in the schema. The description adds no parameter-level detail (bulk lists, job/department, permissions, notify) beyond what the schema already says, so the baseline 3 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 ('Assign user(s) to organization(s)') and adds the key behavior that existing memberships are updated rather than duplicated. It is clear what the tool does, though it never distinguishes itself from the near-identical siblings edubase_post_user_organizations or edubase_delete_organization_members.

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

Usage Guidelines3/5

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

Implies usage from the verb and gives one useful condition — if the user is already a member, membership is updated. It does not say when to use this organization-side tool versus edubase_post_user_organizations (user-side equivalent), nor any prerequisites such as admin rights or whether notification is expected.

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

Deploy Server

Other Tools