Skip to main content
Glama
AnswerDotAI

cordslite-mcp

Official
by AnswerDotAI

fetch_attachment

Retrieve the contents of a Discord attachment from its URL, returning images and text directly or metadata for other file types.

Instructions

An attachment's contents: an image as an image, a text file as text, anything else as its metadata

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesAttachment url, from a message's `[attachment: ...]` marker

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden and does disclose the key behavioral trait: the return form is conditional on the attachment type. However, 'as its metadata' is undefined, and there is no disclosure of error cases, response encoding, or what happens when the attachment is unavailable.

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?

The description is roughly 21 words with the key behavioral distinction (type-dependent return form) front-loaded before the alternate behaviors. Every clause maps to a distinct case, and there is no filler or redundancy.

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?

For a single-parameter tool with no output schema, the description covers the typical invocation path: supply an attachment URL, get a type-appropriate representation. It is incomplete in that the 'anything else' fallback is vague, and error behavior is not hinted. Given the tool is simple and the sibling list provides no alternative attachment tool, the coverage is adequate but not polished.

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 the schema already explains that the url is the attachment link from a message's `[attachment: ...]` marker. The tool description adds nothing about the parameter beyond what the schema provides, so the baseline score of 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?

Describes the tool as returning an attachment's contents, and differentiates the return form by type (image as image, text as text, anything else as metadata). This clearly separates it from sibling tools, which center on guilds, channels, messages, and DMs. The only weakness is that the action verb 'fetch' appears only in the tool name.

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

Usage Guidelines2/5

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

The description gives no explicit when-to-use or when-not-to-use guidance and never mentions alternatives or exclusions. The only contextual clue, that the URL comes from a message's `[attachment: ...]` marker, is provided in the schema parameter description rather than the tool description.

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