Skip to main content
Glama

x_research_topic

Run an autonomous X research pass for a topic, with retries and receipts, extracting posts, threads, profiles, and communities.

Instructions

Run an autonomous X research pass for a topic, with retries, receipts, post/thread/profile extraction, and community sampling.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
saveNoSave the full research bundle to disk under ~/.surfagent/receipts/x-research or a custom outputDir.
queryYesTopic or search query to research on X.
outputDirNoOptional output directory for saved research bundles.
postLimitNoInitial search result extraction limit (1-20).
threadDepthNoVisible post count to extract per sampled thread (1-25).
profileLimitNoHow many author profiles to extract from the search set (1-5).
communityLimitNoHow many matching communities to sample (1-5).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries full behavioral burden. It usefully discloses retries, receipts, and a sampling strategy, which is real behavior beyond the schema. However, it omits permissions/auth requirements, expected duration or rate limits, and failure behavior beyond retries for what is clearly a long-running autonomous operation.

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?

A single front-loaded sentence with dense but relevant content; each listed capability (retries, receipts, extractions, sampling) maps to actual behavior. It is efficient, though the trailing list is somewhat run-on.

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 complex 7-parameter autonomous tool with no annotations and no output schema, the definition is adequate but incomplete. It never explains what the research pass returns or what a 'receipt' bundle contains, which matters since output_schema is absent and return values go undocumented.

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%, so every parameter (save, outputDir, postLimit, threadDepth, profileLimit, communityLimit) is already documented in the schema. The description adds no syntax, defaults, or format detail beyond what the schema provides. Baseline 3 is appropriate.

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+resource ('Run an autonomous X research pass for a topic') and enumerates the composite sub-operations (post/thread/profile extraction, community sampling) that differentiate it from atomic siblings like x_search_posts or x_extract_post. It reads as a higher-level orchestrator rather than any single sibling, which is a meaningful distinction. It stops short of explicitly declaring itself the composite of those siblings.

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

Usage Guidelines3/5

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

The word 'autonomous' and the multi-step framing imply this is for comprehensive research passes rather than one-off fetches, but no when-to-use/when-not is stated and no alternatives (e.g. x_search_posts + x_extract_post) are named. Usage is only inferable from the scope wording.

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