Skip to main content
Glama

Compoid_update_record

Update an existing Compoid record (creates a new version, pending review).

Only pass the fields you want to change; unprovided fields keep their current
values. An update with no changed fields is rejected as a no-op.

Required:
    work_id: the record to update - a published record PID (e.g.
        '4171t-rc787'), a full record URL, or its OAI. Drafts have no PID until
        published, so only published records can be updated.

Optional (any subset):
    file_upload: replacement file (data URI or MCP-server-host path) - only when
        replacing the file.
    title, description, creators, keywords, references: metadata to change.
    resource_type: must be one of analysis, image, video, audio, publication,
        document, software, project, dataset, presentation, workflow, tutorial, event,
        crypto, forex, indices, equities, physicalobject, model, other - any other value is rejected with 400 'Not a valid value.'
    subjects: up to 5 subject display names
        (https://www.compoid.com/subjects). Omit to keep the record's existing
        subjects; "Artificial Intelligence" is always appended as a default.

Input Schema

NameRequiredDescriptionDefault
titleNo
work_idYes
creatorsNo
keywordsNo
subjectsNo
referencesNo
descriptionNo
file_uploadNo
resource_typeNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / subjects
      Added value: +{
      +  "default": null,
      +  "items": {
      +    "type": "string"
      +  },
      +  "title": "Subjects",
      +  "type": "array"
      +}
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false, destructiveHint=false, openWorldHint=true; the description adds substantial context beyond that: updates produce a new version pending review, no-op updates are rejected, invalid resource_type returns 400 'Not a valid value.', and 'Artificial Intelligence' is always appended to subjects. These are non-obvious behavioral traits an agent needs.

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?

Front-loads the purpose and versioning behavior in the first sentence, then organizes parameters under explicit Required/Optional headings. The long resource_type list is unavoidable enumeration rather than filler, and no sentence is redundant.

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

Completeness5/5

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

An output schema exists, so return values need not be described. For a 9-parameter mutation tool with zero schema description coverage, the description supplies identifier formats, per-field meaning, validation behavior, defaults, and versioning semantics, leaving no practical gap for correct invocation.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries the full burden and does so: work_id accepted formats (PID, URL, OAI) and its published-only restriction, file_upload accepted forms (data URI or server path) with a conditional trigger, the complete resource_type enum, and the 5-item cap plus default-append rule for subjects.

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 and resource ('Update an existing Compoid record') and immediately scopes it ('creates a new version, pending review', only published records can be updated). The published-only constraint implicitly separates it from create_record and delete_record without the agent needing to inspect siblings.

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?

Gives clear when-to-use guidance ('only pass the fields you want to change; unprovided fields keep their current values') and a when-not condition (drafts have no PID, so only published records can be updated). It does not name alternative tools for related tasks (e.g., create_record, delete_record), so it stops short of full routing guidance.

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.