Skip to main content
Glama

Invitation

invitation
Read-only

Fastio workspace and share invitations (read): list invitations, filter by state. Writes are on invitation_manage.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
stateNoInvitation state filter.
actionYesOperation; 'describe' lists the actions.
entity_idNoWorkspace or share ID (19-digit numeric or custom name). Must match entity_type.
entity_typeNoWorkspace or share.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • changedInput schema / properties / action / description
      Previous value: -"Operation. Use 'describe' for full action reference."New value: +"Operation; 'describe' lists the actions."
    • changedInput schema / properties / action / enum
      Previous value: -[
      -  "describe",
      -  "list",
      -  "list-by-state",
      -  "update",
      -  "delete"
      -]New value: +[
      +  "describe",
      +  "list",
      +  "list-by-state"
      +]
    • removedInput schema / properties / expires
      Removed value: -{
      -  "description": "Updated expiration — `YYYY-MM-DD HH:MM:SS UTC`. ISO 8601 is NOT documented as accepted.",
      -  "type": "string"
      -}
    • removedInput schema / properties / invitation_id
      Removed value: -{
      -  "description": "Invitation opaque ID or invitee email.",
      -  "type": "string"
      -}
    • removedInput schema / properties / new_state
      Removed value: -{
      -  "description": "New invitation state.",
      -  "enum": [
      -    "pending",
      -    "accepted",
      -    "declined",
      -    "expired",
      -    "revoked"
      -  ],
      -  "type": "string"
      -}
    • removedInput schema / properties / notifications
      Removed value: -{
      -  "description": "Notification preference (workspace).",
      -  "type": "string"
      -}
    • removedInput schema / properties / notify_options
      Removed value: -{
      -  "description": "Notification preference (share).",
      -  "type": "string"
      -}
    • removedInput schema / properties / permissions
      Removed value: -{
      -  "description": "Updated permission level.",
      -  "type": "string"
      -}
  2. Changed1 schema field changed
    • changedInput schema / properties / expires / description
      Previous value: -"Updated expiration (ISO 8601 or YYYY-MM-DD HH:MM:SS)."New value: +"Updated expiration — `YYYY-MM-DD HH:MM:SS UTC`. ISO 8601 is NOT documented as accepted."
  3. Changed1 schema field changed
    • changedInput schema / properties / entity_id / description
      Previous value: -"Opaque ID of a specific object (file, comment, worklog entry, etc.). Pair with entity_type to disambiguate. 19-digit ID or custom name."New value: +"Workspace or share ID (19-digit numeric or custom name). Must match entity_type."
  4. Changed12 schema fields changed
    • changedInput schema / properties / action / description
      Previous value: -"Operation: list (all), list-by-state (workspace only), update, delete"New value: +"Operation. Use 'describe' for full action reference."
    • changedInput schema / properties / action / enum
      Previous value: -[
      -  "list",
      -  "list-by-state",
      -  "update",
      -  "delete"
      -]New value: +[
      +  "describe",
      +  "list",
      +  "list-by-state",
      +  "update",
      +  "delete"
      +]
    • changedInput schema / properties / entity_id / description
      Previous value: -"19-digit workspace or share ID, or custom name"New value: +"Opaque ID of a specific object (file, comment, worklog entry, etc.). Pair with entity_type to disambiguate. 19-digit ID or custom name."
    • changedInput schema / properties / entity_type / description
      Previous value: -"Whether managing workspace or share invitations"New value: +"Workspace or share."
    • changedInput schema / properties / expires / description
      Previous value: -"Updated membership expiration date (ISO 8601 or YYYY-MM-DD HH:MM:SS) (used by: update)"New value: +"Updated expiration (ISO 8601 or YYYY-MM-DD HH:MM:SS)."
    • changedInput schema / properties / invitation_id / description
      Previous value: -"Invitation opaque ID or invitee email (required for: update, delete)"New value: +"Invitation opaque ID or invitee email."
    • changedInput schema / properties / new_state / description
      Previous value: -"New invitation state (used by: update)"New value: +"New invitation state."
    • changedInput schema / properties / notifications / description
      Previous value: -"Updated notification preference (workspace only). For share, use 'notify_options'. (used by: update)"New value: +"Notification preference (workspace)."
    • changedInput schema / properties / notify_options / description
      Previous value: -"Updated notification preference (share only). For workspace, use 'notifications'. (used by: update)"New value: +"Notification preference (share)."
    • changedInput schema / properties / permissions / description
      Previous value: -"Updated permission level (workspace: admin/member/guest; share: admin/member/guest/view) (used by: update)"New value: +"Updated permission level."
    • changedInput schema / properties / state / description
      Previous value: -"Invitation state filter. Workspace supports all states; share supports pending/accepted/declined. (required for: list-by-state; optional for: list)"New value: +"Invitation state filter."
    • changedInput schema / required
      Previous value: -[
      -  "action",
      -  "entity_type",
      -  "entity_id"
      -]New value: +[
      +  "action"
      +]
  5. First observed

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description reinforces '(read)' and adds the write-path routing, but discloses nothing about pagination, result size, or output shape. Consistent with annotations, no contradiction.

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

Conciseness5/5

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

Two short sentences with the read scope front-loaded and the delegation to invitation_manage immediately after. Zero waste.

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?

A read-only list tool with fully documented parameters and no output schema; the description plus schema covers what an agent needs to invoke it. Minor gap on intra-action selection (describe vs list-by-state) keeps it short of a 5.

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%, so all four parameters (action, state, entity_id, entity_type) are already documented inline, including enum values. The description only restates the state filter, adding no syntax or format detail beyond the schema; baseline 3 applies.

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

Purpose5/5

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

States a specific verb+resource ('list invitations, filter by state') scoped to workspace and share invitations, and explicitly marks it as the read-side tool. An agent can distinguish it from invitation_manage without opening either schema.

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?

Explicitly routes write operations to `invitation_manage`, which is a clear when-not-to-use signal. It does not explain when to choose 'describe' vs 'list' vs 'list-by-state', so the intra-tool routing is left to inference.

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