Skip to main content
Glama

download-wiki-attach-file

Downloads a file from a Dooray wiki using its attach file ID, with an option to save it to a local path or return it as base64 for small files.

Instructions

Download a file from a Dooray wiki using attach file ID.

Required Parameters:

  • wikiId: The wiki ID

  • attachFileId: The attach file ID (get from wiki page detail API: $.result.files.attachFileId or $.result.images.attachFileId)

Optional:

  • savePath: Local path to save the file. Can be a directory (filename auto-detected) or full file path. Recommended for large files.

Examples:

  • Save to file: { "wikiId": "123", "attachFileId": "456", "savePath": "/tmp/downloads/" }

  • Base64 (small files): { "wikiId": "123", "attachFileId": "456" }

Note: The attachFileId is different from fileId. Use this endpoint when you have an attachFileId from the page detail API's $.result.files.attachFileId or $.result.images.attachFileId field.

Input Schema

NameRequiredDescriptionDefault
wikiIdYesWiki ID
savePathNoLocal path to save (directory or full path). Recommended for large files.
attachFileIdYesAttach file ID (from page detail API)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.2.0

TDQS

A4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, and the description is consistent: it explains that the tool writes to a local savePath when provided, which accounts for the non-read-only hint. It adds useful behavior detail beyond the annotations (auto-detected filename, base64 fallback), though it says nothing about auth or size limits.

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?

Front-loaded first sentence carries the core purpose, and the section headers plus examples are scannable. The 'Note' at the end partially restates the attachFileId/fileId point already made up top, which is minor redundancy.

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?

With no output schema, the description covers the return shape implicitly through the base64 example when savePath is omitted, which is the one return detail an agent needs. Remaining gaps (error behavior on bad IDs, binary vs. text response) are modest for a three-parameter download tool.

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 baseline is 3; the description earns above that by documenting where attachFileId originates (the exact JSON paths in the page-detail response) and by explaining savePath's dual semantics (directory with auto-detected filename vs. full file path).

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 ('Download a file from a Dooray wiki using attach file ID') and calls out the key disambiguation between attachFileId and fileId. It does not, however, differentiate itself from the nearby sibling download-wiki-page-file, which is the most likely confusion point.

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 explicit precondition for use ('use this endpoint when you have an attachFileId from the page detail API's $.result.files.attachFileId'), plus a clear rule of thumb: savePath for large files, base64 for small ones. It lacks an explicit alternative branch for when only a fileId is available, but the guidance is otherwise actionable.

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