Skip to main content
Glama

Update contact list

lnkdrp_update_contact_list
Idempotent

Renames a contact list or changes its description; a field left out stays as it is, description: null clears it. Members are changed with lnkdrp_add_contact_list_members and lnkdrp_remove_contact_list_members. A name already used is validation with details.code name_taken. dryRun and dryRunBandText mark it a dry-run list or set its band; only a workspace owner's or admin's connection may change them (forbidden otherwise). dryRun true from an agent's connection is forbidden: the person marks a dry-run list in LinkDrop; dryRun false and the band may be set here. A list over 25 people cannot be a dry-run list (list_members_limit). visibility makes the list private to its owner or shares it with the team, on every plan (not a document's visibility, lnkdrp_set_doc_visibility); it is sent with no other field (visibility with another field is validation). Making it private takes its owner or a workspace owner or admin, and an owner or admin making someone else's list private makes it private to that person; sharing a private list takes its owner; anyone else is forbidden. projectIds files the list under projects, on every plan; it replaces the projects this person can see.

Input Schema

NameRequiredDescriptionDefault
nameNoThe new name (1-80 characters).
dryRunNoA dry-run list: its people may get dry-run copies (lnkdrp_dry_run_email to recipients) with no confirmation. Owners and admins only; true from an agent's connection is forbidden: an owner or admin marks a dry-run list in LinkDrop. A dry-run list holds up to 25 people.
listIdYesContact list id (24 hex chars), from lnkdrp_list_contact_lists.
projectIdsNoThe projects the list is filed under (up to 20 ids; [] for none). It replaces the projects this person can see; projects they cannot see stay as they are.
visibilityNoprivate: only its owner sees the list. team: everyone in the workspace sees it. Not a document's visibility (lnkdrp_set_doc_visibility).
descriptionNoThe new description (up to 500 characters); null clears it.
dryRunBandTextNoThis list's dry-run band, plain text up to 300 characters; null uses the workspace's. Owners and admins only.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / dryRun
      Added value: +{
      +  "description": "A dry-run list: its people may get dry-run copies (lnkdrp_dry_run_email to recipients) with no confirmation. Owners and admins only; true from an agent's connection is forbidden: an owner or admin marks a dry-run list in LinkDrop. A dry-run list holds up to 25 people.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / dryRunBandText
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 300,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "This list's dry-run band, plain text up to 300 characters; null uses the workspace's. Owners and admins only."
      +}
    • addedInput schema / properties / projectIds
      Added value: +{
      +  "description": "The projects the list is filed under (up to 20 ids; [] for none). It replaces the projects this person can see; projects they cannot see stay as they are.",
      +  "items": {
      +    "pattern": "^[a-fA-F0-9]{24}$",
      +    "type": "string"
      +  },
      +  "maxItems": 20,
      +  "type": "array"
      +}
    • addedInput schema / properties / visibility
      Added value: +{
      +  "description": "private: only its owner sees the list. team: everyone in the workspace sees it. Not a document's visibility (lnkdrp_set_doc_visibility).",
      +  "enum": [
      +    "private",
      +    "team"
      +  ],
      +  "type": "string"
      +}
  2. Added

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses that only an owner/admin connection may change dryRun fields, that dryRun=true from an agent connection is forbidden, that a list over 25 people cannot be dry-run, and names specific failure codes (name_taken, list_members_limit, validation, forbidden). It also discloses non-obvious side effects — visibility must be sent alone, and projectIds replaces only the projects this person can see.

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

Conciseness3/5

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

The opening clause is front-loaded and most sentences carry real rules, but the body is one dense run-on paragraph with no grouping by parameter, and the dryRun permission story is repeated from the schema description. Readable only with effort for a 7-parameter tool.

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?

For a mutation tool with no output schema, it covers permissions, validations, limits, and field-omission semantics thoroughly. What is missing is the outcome side: it never indicates what the update returns or whether partial failures are possible, and it does not state the baseline ownership requirement for ordinary name/description edits.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds cross-field semantics the schema cannot express: omitted fields are preserved, description:null clears, and visibility combined with any other field is a validation error. It largely restates the schema on dryRun/dryRunBandText permissions, so it lands above baseline rather than at the top of the range.

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?

Opens with a specific verb+resource+scope: renames a contact list or changes its description, and later enumerates the other mutable facets (dryRun, visibility, projectIds). It explicitly disambiguates from the near-miss sibling ("not a document's visibility, lnkdrp_set_doc_visibility"), so an agent can separate it from set_doc_visibility and update_doc without opening a 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?

Names the alternatives for membership changes (lnkdrp_add_contact_list_members / lnkdrp_remove_contact_list_members) and the confusing near-sibling for document visibility, which is exactly the routing guidance an agent needs. It does not state a general when-not for the tool as a whole (e.g. versus create_contact_list or archive), which keeps it short of a 5.

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