Skip to main content
Glama
Stupidoodle

instagram-mcp

by Stupidoodle

get_thread

Fetch a specific Instagram DM thread and its messages by thread ID, with an optional limit on the number of messages returned.

Instructions

Get a specific thread with its messages.

Args: thread_id: ID of the thread to fetch. amount: Maximum number of messages to fetch (default: 20).

Returns: Thread object with thread_id, thread_title, users, is_group, and a messages array (message_id, sender, text, media_type, timestamp, ...).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
amountNo
thread_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full behavioral burden, yet it only restates the return shape (which the output schema already covers). It never states that this is a read-only operation, whether messages are returned newest-first, whether 'amount' truncates the oldest or newest messages, or any auth/rate-limit considerations.

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?

The docstring-style layout is front-loaded with the one-line purpose, then Args and Returns. The Returns block largely duplicates the output schema, which is minor waste, but overall it is tight and readable.

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 two-parameter read tool with an output schema, the core essentials are present, and the return explanation is not strictly needed. However, the lack of any ordering/pagination semantics for 'amount' and the absence of usage context against sibling tools leave meaningful gaps.

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 description coverage is 0%, so the description must compensate, and it does document both parameters: thread_id ('ID of the thread to fetch') and amount ('Maximum number of messages to fetch (default: 20)'). It adds little beyond the names and default, but coverage of the two params is complete.

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 ('Get a specific thread with its messages'), which clearly separates it from list_threads and search_threads. It does not explicitly contrast with get_messages, which fetches messages alone, so the boundary with that sibling is left to inference.

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 says nothing about when to call this versus the many sibling alternatives (list_threads, search_threads, get_messages, get_chat_log) and gives no prerequisites or conditions. It is pure capability statement with no routing guidance.

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