upload media for DM
post_base_apitools_uploadMediaDMupload media for DM Group: DMS. Billing per call: 1 Credits.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ct0 | No | ||
| tweet | No | ||
| apiKey | No | ||
| proxyUrl | No | ||
| resFormat | No | ||
| auth_token | No |
post_base_apitools_uploadMediaDMupload media for DM Group: DMS. Billing per call: 1 Credits.
| Name | Required | Description | Default |
|---|---|---|---|
| ct0 | No | ||
| tweet | No | ||
| apiKey | No | ||
| proxyUrl | No | ||
| resFormat | No | ||
| auth_token | No |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only mentions billing credits, which is not behavioral information. There is no disclosure of side effects, authentication requirements, rate limits, or what happens after upload. The description fails to inform about any behavioral traits beyond the bare action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short (one sentence), but this is under-specification rather than conciseness. It omits crucial information and does not earn its place by adding value. The structure is minimal but inadequate for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 6 undocumented parameters, no output schema, and no annotations, the description is grossly incomplete. The tool appears to be a media upload for DMs, but the agent cannot understand the input requirements, the expected behavior, or the result. The description is far from sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 6 parameters (ct0, tweet, apiKey, proxyUrl, resFormat, auth_token) have zero description coverage in the schema and are not mentioned in the description. The description does not add any meaning to these parameters, leaving the agent without guidance on required values or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'upload media for DM' which conveys the basic action and resource (uploading media for direct messages). However, it does not distinguish from sibling tools like uploadMedia, uploadMediaFile, or sendDMSMedia, nor does it specify what 'DM' entails beyond a category label. The purpose is clear but not differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. Given the proliferation of similar upload and DM-related tools in the sibling list, the absence of any usage context or exclusions makes it impossible for an agent to select this tool appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
The set is full of confusing variants such as get_/post_ prefixed duplicates of the same endpoints, competing V1/V2 versions of the same action (e.g., followersList vs. followersListV2), and poorly described tools like CommunitiesSearchV2 and getCt0 that give no clear unique purpose. Agents would frequently need to guess between similar tools for a single task.
Naming is chaotic, mixing camelCase (getDMS, likeV2), PascalCase (CreateNoteTweet, CommunitiesMemberV2), and inconsistent prefixes (gettools_*, get_*, post_*) with duplicated operations. The 'get_/post_' prefixes appear to indicate API method rather than action, but they are applied inconsistently, with some tools appearing under both and others only once. There is no predictable verb_noun pattern throughout.
With 107 tools, the server is extremely large, far exceeding the 50+ threshold for extreme mismatch, and this count is inflated by duplicates (many get_/post_ twins) and overlapping V1/V2 variants. Even the unique tool set is likely around 60-70, which is still an unwieldy surface for an agent to negotiate. This severely disrupts coherence.
The tool set covers most core Twitter/X domains: tweets, likes, retweets, follows, DMs, search, communities, lists, and profile management. However, it is cluttered with duplicates and lacks some obvious pieces like mute/unmute operations or a direct 'update tweet' action, and several tools appear to be thin wrapper variations of the same endpoint. Coverage is broad but not cleanly organized.