grok-cookie-mcp
grok-cookie-mcp
Cookie-based MCP tools for Grok Imagine experiments.
This is an unofficial reverse-engineered local MCP server. It uses your own browser cookies from grok.com; it does not use an xAI API key.
Status
Working:
check_quotagenerate_imagevia/rest/media/post/createcreate_media_postcreate_share_linkupscale_videowrapperpost/getpolling for media postsCookie launcher UI for opening an isolated Chrome session
Experimental / not fully working yet:
App-chat
/responsesrequests can be rejected by Grok anti-bot rules.Full video generation is still under investigation. Direct
MEDIA_POST_TYPE_VIDEOcreates a post, but may not start the actual video render.Imagine Agent tools are present but depend on the app-chat path.
Related MCP server: grok-imagine-mcp
Install
uv syncCookies
Copy the example and paste your Cookie-Editor export values:
cp cookies.example.json cookies.jsonNever commit cookies.json.
Run MCP server
uv run python server.pyRun cookie launcher
uv run python launcher.pyOpen:
http://127.0.0.1:8765Paste Cookie-Editor JSON and launch an isolated Chrome session.
Tools
check_quota— read Grok Imagine quota infogenerate_image— create image media post and return image URLsgenerate_video— experimental video post creation and pollingimage_to_video— experimental, depends on video flowcreate_media_post— low-level media post create wrappercreate_share_link— create media post share linkupscale_video— call video upscale endpointimagine_agent_start/imagine_agent_send/imagine_agent_read— experimental app-chat agent tools
Security
This project is intended for local, authorized use with your own Grok account. Do not commit cookies, tokens, generated session data, or private outputs.
Available Tools
35 toolsagent_readC
Load recent responses of a Grok Imagine Agent conversation.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| conversation_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must disclose behavioral traits. It only mentions 'load recent responses' but does not state whether it is read-only, any side effects, authentication needs, or rate limits. Inadequate for a tool with no annotations.
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 a single short sentence, which is concise but lacks necessary detail. It is structured as a single line but could benefit from more information without losing brevity.
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 no output schema and 3 parameters (including a nested object), the description is incomplete. It does not explain the output format or behavior details, leaving the agent with insufficient context.
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?
The description adds no meaning beyond the input schema. Schema coverage is 67% (account and cookies have descriptions; conversation_id lacks one). The description does not explain parameters or their roles.
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 uses a specific verb ('load') and resource ('responses of a Grok Imagine Agent conversation'), clearly indicating the tool's function. However, it does not distinguish from the similar sibling 'imagine_agent_read', which may cause confusion.
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?
The description provides no guidance on when to use this tool versus alternatives, nor any prerequisites or context for invocation. It simply states what it does without usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agent_sendC
Send a follow-up prompt to a Grok Imagine Agent conversation.
| Name | Required | Description | Default |
|---|---|---|---|
| extra | No | ||
| prompt | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| conversation_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description provides minimal behavioral disclosure. It does not mention whether the tool is read-only, modifies state, requires authentication, or has side effects. The word 'send' implies it is a mutation, but no details are given.
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 a single concise sentence that is front-loaded with the tool's purpose. It is efficient, though it could benefit from slightly more structure.
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?
The tool has 5 parameters, no annotations, and no output schema, yet the description only states its basic purpose. It lacks information on return values, error conditions, required authentication, and behavioral details, making it incomplete for effective use.
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?
Schema coverage is only 40%, but the description adds no information about parameters. It does not compensate for missing schema descriptions or clarify the meaning of 'extra', 'prompt', or 'conversation_id'. The description fails to add value beyond the schema.
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?
Description states 'Send a follow-up prompt to a Grok Imagine Agent conversation', clearly specifying the action and resource. It distinguishes from siblings like agent_start or agent_read, but could be more specific about the scope (e.g., that it is for continuing existing conversations).
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 on when to use this tool versus alternatives like agent_read, imagine_agent_send, or agent_start. Lacks context on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agent_startC
Start Grok Imagine Agent conversation (optionally inside a project).
| Name | Required | Description | Default |
|---|---|---|---|
| extra | No | ||
| prompt | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| project_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states the basic purpose, omitting details like authentication requirements, side effects, or return values. Critical for a conversation starter.
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?
Single sentence is concise and front-loaded with the main purpose. However, it could benefit from brevity while adding more context; missing structure for clarity.
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?
Given 5 parameters, no output schema, and many siblings, the description is too sparse. It fails to cover return values, prerequisites, or how to proceed after starting.
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?
Schema coverage is only 40%, and the description adds no parameter explanations. It does not clarify the purpose of 'extra' or 'project_id', which are essential for proper usage.
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 clearly states the action ('start') and resource ('Grok Imagine Agent conversation'), and mentions the optional project context. However, it does not explicitly differentiate from the similarly named 'imagine_agent_start' tool.
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?
The description implies the tool is for initiating a conversation, contrasting with siblings like agent_read and agent_send. But no explicit guidance on when to use or not use this tool, nor mention of prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_quotaB
Return Grok Imagine quota_info.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description bears full responsibility for behavioral disclosure. It only states the return value but does not mention whether the operation is read-only, requires authentication, or has any side effects.
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 concise with a single sentence that is front-loaded. There is no wasted text; it efficiently conveys the core purpose.
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?
Given the tool's simplicity (0 required parameters, no output schema), the description is minimally adequate. However, it does not explain what the quota_info contains or its format, which could be helpful.
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?
Schema coverage is 100%, so baseline is 3. The description adds no extra meaning to the parameters beyond what the schema already provides. The schema descriptions are clear, so the description does not lack, but neither does it enhance.
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 clearly states the tool returns quota info for Grok Imagine. The verb 'Return' and resource 'Grok Imagine quota_info' are specific. However, it could be slightly improved by specifying the type of quota (e.g., remaining usage).
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 usage guidelines are provided. The description does not indicate when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_media_postC
Create a Grok media post from mediaType/prompt/mediaUrl.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | No | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| media_url | No | ||
| media_type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior but only implies creation. It omits details on authentication, side effects, authorization needs, or what happens during the operation. The optional account/cookies parameters are not explained in terms of their behavioral impact.
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 a single short sentence, which is concise but at the expense of essential details. It front-loads the action but omits two parameters, making it incomplete.
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?
The tool has 5 parameters, no output schema, and no annotations. The description is too minimal to provide a complete understanding of usage, return values, error handling, or required context. Sibling tools further underscore the need for more context to distinguish this tool.
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?
Schema description coverage is only 40% (account and cookies have descriptions). The description lists mediaType, prompt, mediaUrl but adds no semantics about their formats, constraints, or allowed values. It also omits the account and cookies parameters entirely, failing to compensate for the schema gaps.
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 it creates a 'Grok media post' from three components, which gives a basic idea but is vague about what 'Grok media post' entails. It does not differentiate well from sibling tools like 'create_project' or 'agent_send' that may also create posts.
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 siblings, nor on prerequisites or conditions. The description lacks any context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_projectB
Create a new Grok Imagine project (canvas).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description only says 'create' without detailing side effects, authentication needs, rate limits, or error behavior. Insufficient for a mutation tool.
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?
Single sentence, clear and concise, but lacks depth. Not overly verbose, but could benefit from more structure.
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?
No output schema and minimal description. Does not explain return values, success/failure behavior, or how to use optional params effectively. Incomplete for a tool with nested objects.
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?
Schema description coverage is 67%, with 'account' and 'cookies' having descriptions. The tool description adds no additional meaning beyond schema. Baseline 3 is appropriate.
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?
Description clearly states 'Create a new Grok Imagine project (canvas)' with specific verb and resource. It distinguishes from sibling 'create_project_node' which adds nodes to existing projects.
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?
Implied usage for creating new projects, but no explicit guidance on when to use vs alternatives or prerequisites. No mention of when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_project_nodeC
Attach a node (media post) to a project canvas.
| Name | Required | Description | Default |
|---|---|---|---|
| node | Yes | Node payload merged with canvasId, e.g. {"postId": ..., "x":0,"y":0} | |
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| project_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits. It does not mention whether the node must already exist, if it overwrites existing attachments, or any side effects. The description is too brief for a mutation tool.
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 concise at one sentence. It gets the main point across without verbosity. However, it could be slightly more informative without losing conciseness.
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?
For a tool with 4 parameters, nested objects, no output schema, and no annotations, the description is insufficient. It does not explain return values, error conditions, or prerequisites. More context is needed for safe and correct usage.
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?
Schema coverage is 75%, so the schema already describes most parameters. The description adds no additional meaning beyond the schema. Baseline 3 is appropriate since the description does not compensate for any gaps.
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 clearly states the action 'Attach a node (media post) to a project canvas.' It specifies the verb and resource, and distinguishes from siblings like create_media_post which creates a new post. However, it could more explicitly state that it attaches an existing media post rather than creating one.
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 on when to use this tool versus alternatives. Given many sibling tools, the description should indicate prerequisites or context, such as needing an existing media post and project. Lacks any usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_postC
Delete a Grok media post.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description labels this as a destructive action ('Delete'), but does not disclose behavioral traits such as irreversibility, required permissions, or what happens if the post is not found. No annotations are provided to supplement this.
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 a single concise sentence with no superfluous words. However, it may be too brief for a tool with multiple parameters.
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?
Given the lack of output schema and three parameters, the description is incomplete. It does not explain return values, error handling, or prerequisites like needing ownership or authentication, which a delete tool typically requires.
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?
The description does not add any meaning beyond the input schema. While schema coverage is 67%, the param 'post_id' lacks a description, and the optional account/cookies are not explained in context. The schema already provides basic descriptions, so the description adds no value.
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 clearly states 'Delete a Grok media post' with a specific verb and resource, and it distinguishes itself from sibling tools like like_post, create_media_post, and get_post.
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, such as when the post is deletable or if there are restrictions. The description lacks context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_imageC
Generate images through the working Grok media endpoint and return parsed image URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | fast or expert | fast |
| count | No | ||
| extra | No | Optional payload fields merged into the Grok request. | |
| prompt | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| timeout | No | ||
| enable_nsfw | No | ||
| aspect_ratio | No | Examples: 16:9, 9:16, 1:1, 2:3, 3:2 | |
| send_to_telegram | No | ||
| telegram_caption | No | ||
| telegram_chat_id | No | ||
| telegram_bot_token | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits like authentication requirements, NSFW handling, or side effects. The one-line description fails to mention any behavioral aspects, offering no insight into what happens during generation or side effects.
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 concise, fitting in one sentence, but it lacks structure for a tool with 13 parameters and nested objects. While front-loaded, it does not earn full marks as it omits critical details.
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?
Given the tool's complexity (13 parameters, no output schema, nested objects), the description is woefully incomplete. It does not explain the return format, authentication, or behavior of key parameters like enable_nsfw or send_to_telegram.
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?
Schema coverage is only 38%, and the description does not clarify any parameters beyond what the schema already provides. The description adds no meaning to parameters like mode, count, extra, or authentication fields, leaving the agent with incomplete understanding.
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 clearly states the tool generates images and returns parsed URLs, distinguishing it from video tools like generate_video. However, it does not explicitly differentiate from similar image-related tools or specify the domain (Grok), which is acceptable but could be more precise.
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?
The description provides no guidance on when to use this tool versus alternatives such as generate_video or image_to_video. It lacks any context about prerequisites, use cases, or constraints, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_videoC
Generate video through the working Grok media endpoint and return parsed video URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | custom | |
| extra | No | Optional payload fields merged into the Grok request. | |
| share | No | ||
| prompt | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| timeout | No | ||
| duration | No | ||
| resolution | No | 480p or 720p | 480p |
| aspect_ratio | No | Examples: 16:9, 9:16, 1:1, 2:3, 3:2 | |
| upscale_720p | No | ||
| parent_post_id | No | ||
| send_to_telegram | No | ||
| telegram_caption | No | ||
| telegram_chat_id | No | ||
| telegram_bot_token | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only mentions generating video and returning URLs, omitting crucial details like generation time, rate limits, auth requirements, or that it uses Grok's endpoint.
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?
Very concise at 15 words, but sacrifices critical information. The single sentence is front-loaded but insufficient for a tool with 16 parameters and no annotations.
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?
Tool has 16 parameters, no output schema, and no annotations. Description fails to explain return format, authentication (account/cookies), or common failure modes. Completely inadequate for an AI agent to use correctly.
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?
Schema coverage is low (31%), yet description adds no parameter-level context beyond what the schema already provides. Key parameters (prompt, mode, extra) are not explained in the description, leaving the agent to infer usage.
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?
Description clearly states 'Generate video through the working Grok media endpoint and return parsed video URLs.' This specifies the action (generate), resource (video), and distinguishes from siblings like generate_image and image_to_video.
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 on when to use this tool versus siblings like image_to_video, upscale_video, or generate_image. Lacks context about prerequisites (e.g., needing account/cookies) or scenarios where this is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_postB
Get a Grok media post by post_id.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only says 'Get', implying a read-only operation, but no annotations are provided. It does not disclose what happens if the post_id doesn't exist, authentication requirements (despite having cookies/account parameters), or any side effects. Minimal behavioral detail.
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 a single sentence of 8 words, directly stating the tool's function. It is front-loaded with the verb and resource, making it easy to scan. Every word is essential.
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?
Given no annotations, no output schema, and only moderate schema coverage, the description lacks information about return format, error handling, authentication prerequisites, and parameter usage nuances. The agent would need additional context to use the tool safely and correctly.
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?
The input schema provides descriptions for account and cookies but not for post_id. The description adds that post_id identifies the post, but does not explain the role of account or cookies in authentication. With 67% schema coverage, the description partially compensates for the missing post_id description but falls short.
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 clearly states 'Get a Grok media post by post_id', specifying the verb (Get), resource (Grok media post), and the key parameter (post_id). This distinguishes it from sibling tools like list_posts (listing) and create_media_post (creation) without ambiguity.
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?
The description implies usage when the user has a post_id and wants the corresponding post object, but it does not explicitly state when to use this tool versus alternatives like list_posts or get_post_folders. No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_post_foldersC
List folders that a post belongs to.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits beyond the basic purpose. It fails to mention read-only nature, permissions, or side effects, which is a significant gap.
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 a single, clear sentence with 7 words. It is maximally concise and front-loaded with the core purpose.
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?
Lacks output schema and does not describe the return format (e.g., list of folder names or objects). Also omits context about authentication parameters and how they influence the operation. Given the presence of sibling tools, more detail is warranted.
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?
With 67% schema description coverage, the baseline is 3. The description adds no parameter semantics beyond the schema; it does not explain how account and cookies affect the result or the format of post_id.
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 the verb (List), resource (folders), and scope (that a post belongs to). It is specific and distinguishes from sibling tools like list_folders or get_post, though it could explicitly contrast with them.
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 on when to use this tool versus alternatives like list_folders or get_post. The description does not mention prerequisites, limitations, or context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_conversationsC
List agent conversations attached to a project.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| project_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates a read operation ('List'), but with no annotations, it fails to disclose behavior like permission requirements, pagination, rate limits, or any side effects. It is minimally transparent.
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 a single, front-loaded sentence that efficiently states the purpose. It avoids unnecessary words, but could benefit from slight expansion for context.
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 three parameters (one required, nested objects in cookies), no output schema, and no annotations, the description is too brief. It omits authentication context, parameter relationship, and return value details, leaving significant gaps for an agent.
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?
While schema description coverage is 67% (account and cookies have descriptions), the tool description adds no meaning beyond the schema. The project_id parameter lacks description in both schema and description, and the description does not clarify how parameters relate to the operation.
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 clearly states the tool lists agent conversations attached to a project, using a specific verb and resource. It distinguishes from siblings like agent_read (likely single entity) and list_projects (projects vs conversations). However, it could be more specific about what constitutes an agent conversation.
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?
The description provides no guidance on when to use this tool versus alternatives like agent_read, or any prerequisites. There is no mention of when not to use it or any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_seriesC
Return the full series JSON by id.
| Name | Required | Description | Default |
|---|---|---|---|
| series_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It mentions 'Return the full series JSON' but does not disclose any behavioral traits such as whether it is read-only, requires authentication, or has rate limits. The output format is not described.
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 concise with a single sentence and no wasted words. However, it is under-informative; brevity here sacrifices valuable context.
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?
Given no output schema and no annotations, the description is insufficiently complete. It does not explain what the 'full series JSON' contains, how to handle errors, or any special cases. For a simple retrieval tool, more detail would be beneficial.
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?
Schema description coverage is 0%, so the description must compensate. It adds 'by id' which maps to series_id, but provides no additional meaning beyond what the schema already indicates (string type). No format or usage hints are given.
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 clearly states the action ('Return') and resource ('full series JSON by id'). It implies a specific series retrieval, distinguishing it from list_series (which likely returns a list) and plan_series (which plans). However, it does not explicitly differentiate from siblings.
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 on when to use this tool versus alternatives like list_series or plan_series. The description does not mention prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_templateA
Get a Grok Imagine template summary by templateId.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| template_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It only states the action without disclosing whether the operation is read-only, any side effects, authentication requirements, or output characteristics.
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?
Single sentence with no redundancy. Front-loaded with key information: action, resource, parameter.
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 no output schema and no annotations, the description is minimal. It fails to specify return format, prerequisites, or any behavioral constraints, leaving significant gaps for an agent.
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?
Schema coverage is 67% (account and cookies described, template_id missing). Description adds context for template_id as the identifier but does not explain optional parameters account and cookies beyond what schema provides.
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?
Description clearly states the verb 'Get', the resource 'template summary', and the identifier 'by templateId'. It effectively distinguishes from sibling tool 'list_templates' which lists all templates.
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?
The description implies usage for retrieving a specific template by ID. It doesn't explicitly state when not to use it, but the context is clear and alternatives like list_templates are evident from sibling tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_to_videoC
Create or reuse an image post, then generate a video from it.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | custom | |
| extra | No | Optional payload fields merged into the Grok request. | |
| share | No | ||
| prompt | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| duration | No | ||
| image_url | No | ||
| resolution | No | 480p | |
| aspect_ratio | No | Examples: 16:9, 9:16, 1:1, 2:3, 3:2 | |
| parent_post_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must fully disclose behavior. It only mentions a two-step process but omits side effects (e.g., post creation), authentication needs, rate limits, or any disclaimers.
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 a single sentence, which is concise but not well-structured or sufficiently informative. It could be split into clearer points without losing brevity.
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?
For a tool with 11 parameters, no output schema, and no annotations, the description is severely incomplete. It fails to explain the return value, parameter interactions, or any post-generation behavior.
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?
Schema coverage is only 36% (low), yet the description adds no information about the 11 parameters. Key parameters like 'mode', 'extra', 'share', 'account', 'cookies', etc., remain unexplained beyond their schema definitions.
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 'Create or reuse an image post, then generate a video from it' hints at the tool's function but is vague about whether it creates a new post or uses an existing one. It does not clearly distinguish from siblings like 'generate_video' or 'create_media_post'.
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 such as 'generate_video' or 'create_media_post'. The description lacks context on prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
imagine_agent_readC
Read responses from a Grok Imagine Agent conversation.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| conversation_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It only states 'read responses' without disclosing authorization requirements, the effect of optional parameters (account/cookies), error behavior for missing conversations, or that the operation is read-only and non-destructive.
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 a single, clear sentence that front-loads the action and resource. No wasted words.
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?
Without an output schema, the description does not explain what the response data contains (e.g., message objects, timestamps). It is adequate for a simple read but could be more complete given the complexity of the sibling toolset.
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?
Schema description coverage is 67%; the required 'conversation_id' parameter has no description. The tool description adds no parameter information beyond what is in the schema, leaving the agent uncertain about the meaning or format of the conversation ID.
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 clearly states the tool reads responses from a Grok Imagine Agent conversation, using a specific verb and resource. It distinguishes from siblings like imagine_agent_send and imagine_agent_start, but lacks detail on scope (e.g., does it read all responses or a specific one?).
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 on when to use this tool versus alternatives. Given the many sibling tools (agent_read, agent_send, etc.), the description should indicate that this is for retrieving existing responses, not for sending or starting conversations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
imagine_agent_sendC
Send a follow-up prompt to an existing Grok Imagine Agent conversation.
| Name | Required | Description | Default |
|---|---|---|---|
| extra | No | ||
| prompt | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| conversation_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden for behavioral disclosure. It only says 'Send a follow-up prompt' without mentioning safety, idempotency, authentication needs, or error behavior. This is insufficient for a tool with optional account/cookies parameters.
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 a single 12-word sentence, which is concise but too minimal for a tool with five parameters. While not verbose, it sacrifices necessary detail.
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?
Given the tool has five parameters including a nested object, no output schema, and no annotations, the description is inadequate. It does not explain return values, prerequisites, or behavior when parameters are omitted (e.g., account/cookies). Significant gaps remain.
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?
Schema description coverage is only 40% (two of five parameters have descriptions). The tool description does not compensate by explaining the meaning of prompt, conversation_id, or extra. The agent cannot infer correct values from this information.
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 clearly states the verb 'Send' and the resource 'follow-up prompt to an existing Grok Imagine Agent conversation'. It distinguishes this tool from siblings like imagine_agent_start (starts new conversation) and imagine_agent_read (reads conversation).
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?
The description implies use when you have an existing conversation, but does not explicitly state when to use this tool versus alternatives like imagine_agent_start or agent_send. No when-not or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
imagine_agent_startB
Start a Grok Imagine Agent conversation and send the first prompt.
| Name | Required | Description | Default |
|---|---|---|---|
| extra | No | Optional payload fields merged into the Grok request. | |
| prompt | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| aspect_ratio | No | Examples: 16:9, 9:16, 1:1, 2:3, 3:2 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description only says 'start' and 'first prompt', omitting crucial behaviors like session creation, return values, or prerequisites.
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?
Single sentence, highly efficient, but lacks any structural elements like bullet points or sections.
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 5 parameters, no output schema, and nested objects, the description fails to explain optional parameters or expected results, leaving significant gaps.
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?
Schema covers 80% of parameters; description adds no extra meaning beyond schema, so baseline is appropriate.
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?
Description clearly states the tool starts a 'Grok Imagine Agent conversation' and sends the first prompt, distinguishing it from siblings like 'agent_start' and 'imagine_agent_send'.
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 on when to use this tool versus alternatives (e.g., 'agent_start' for different agents, 'imagine_agent_send' for subsequent prompts).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
like_postC
Like a Grok media post.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description must fully disclose behavior. It only states 'Like', implying a non-destructive action, but provides no details on side effects, return values, or required permissions.
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 concise at one sentence, which is positive for conciseness, but it sacrifices necessary detail. It lacks structure and fails to include useful information.
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?
Given the tool has 3 parameters (one required), no output schema, and no annotations, the description is incomplete. It does not explain what happens after liking, return format, or error cases.
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?
The input schema has 3 parameters with 67% description coverage. The tool description adds no parameter information beyond the schema, but the schema itself provides decent context. Baseline 3 is appropriate given coverage between 50-80%.
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 clearly states the action ('Like') and the resource ('a Grok media post'), making the purpose evident. However, it does not differentiate from sibling tools like 'delete_post' or 'create_media_post', which could share similar contexts.
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, nor any prerequisites or context. The description lacks any usage recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_accountsB
List Grok accounts available in cookies/.json.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only states the action (list) and source, without confirming read-only nature, authentication needs, or side effects. For a simple list tool, this is minimally acceptable but lacks detail.
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 a single concise sentence with no wasted words. It conveys the essential purpose. However, it could be slightly more structured by explicitly mentioning output or format, but overall it is appropriately brief.
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?
Given the tool has no parameters and no output schema, the description adequately states what it does and the data source. However, it does not describe the output format or clarify the placeholder '<name>' in the path, leaving room for ambiguity. It is minimally complete.
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?
There are no parameters, and schema coverage is 100% by default. Per calibration, 0 parameters earns a baseline of 4. The description does not add parameter information, which is appropriate since none exist.
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 clearly states the tool lists 'Grok accounts' from a specific location 'cookies/<name>.json'. The verb 'list' and resource 'accounts' are precise, and it differentiates from sibling tools like list_folders or list_posts.
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. There is no mention of prerequisites, conditions, or exclusions. Given many sibling tools, explicit usage context would be helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_foldersC
List Grok Imagine folders.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description does not disclose read-only status, authentication needs, or whether folders are organized hierarchically.
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?
Extremely concise single sentence, no wasted words. Could be more informative without sacrificing brevity.
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?
Without output schema, description should clarify return structure. Fails to explain what 'folders' are or how they relate to posts.
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?
Schema has 100% description coverage for both parameters (account, cookies). Description adds no extra meaning beyond schema.
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?
Description clearly states verb 'list' and resource 'Grok Imagine folders'. However, it does not differentiate from sibling tools like get_post_folders or list_accounts.
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 on when to use this tool vs alternatives (e.g., get_post_folders). Lacks context about prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_postsC
List Grok Imagine posts owned or liked by the account.
| Name | Required | Description | Default |
|---|---|---|---|
| safe | No | ||
| limit | No | ||
| source | No | MEDIA_POST_SOURCE_OWNED | |
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states a basic read operation but omits details about authentication, rate limits, pagination, output structure, or behavior for different sources. The agent lacks essential information to invoke the tool correctly.
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 a single sentence, which is concise and front-loaded, but it is also under-specified. While every word serves a purpose, the overall structure lacks necessary detail, making it more minimal than optimally concise.
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?
Given the tool has 5 parameters, no annotations, and no output schema, the description is very incomplete. It fails to cover output format, parameter usage, authentication, or constraints, leaving the agent with insufficient context to use the tool effectively.
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?
Schema description coverage is only 40% (account and cookies have descriptions). The description adds no parameter information beyond the schema, failing to compensate for the low coverage. It does not explain 'safe', 'limit', or 'source' semantics.
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 clearly states the verb 'List' and the resource 'Grok Imagine posts' with the scope 'owned or liked by the account.' It effectively conveys the tool's function, but it does not differentiate from sibling tools like list_project_posts.
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?
The description provides no guidance on when to use this tool versus alternatives or any context for use. It does not mention prerequisites, exclusions, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_project_postsB
Get a Grok project canvas (nodes + attached posts).
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| project_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only operation via 'Get', but with no annotations, it relies on implication. It does not disclose side effects, authentication needs, or rate limits. Adequate but not explicit.
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?
Single sentence, 9 words, highly concise and front-loaded with the core purpose. No wasted text.
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?
Given the lack of output schema and annotations, the description is too sparse. It does not explain return format, pagination, or structure of the canvas, leaving the agent to guess the response shape.
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?
The description provides no parameter context beyond the input schema. The schema itself has 67% description coverage, but the description adds no value for the three parameters, leaving project_id undocumented.
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 clearly states the verb 'Get' and the resource 'Grok project canvas' with explicit clarification 'nodes + attached posts'. It distinguishes from sibling tools like list_posts and list_projects by specifying the scope.
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 usage guidelines, when-to-use, or when-not-to-use are provided. There is no comparison with sibling tools or context about when this tool is preferred over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_projectsB
List Grok Imagine projects (canvases) for the account.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral aspects. It only states a read operation but omits details such as how accounts are resolved, authentication requirements, rate limits, or any side effects.
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?
Single sentence that is front-loaded with action and resource. It is concise and to the point, though it could include additional context without being verbose.
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?
The description lacks detail on output format, pagination, error handling, and behavior when no account is given. Without an output schema, more context is needed for an agent to use it effectively.
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?
Schema coverage is 100% with descriptions for both parameters. The description adds minimal meaning beyond the schema ('for the account' ties to the account parameter). Baseline 3 is appropriate.
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 clearly states the action 'List' and the resource 'Grok Imagine projects (canvases) for the account.' It specifies the scope and distinguishes from sibling list tools by mentioning 'for the account.'
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 like list_project_posts or list_accounts. There is no context on prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_seriesA
List series files stored in series/*.json.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states basic behavior without disclosing security, performance, or error implications.
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?
Single sentence, no redundancy, directly conveys purpose and location.
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?
Given no parameters and no output schema, description sufficiently explains functionality. Could mention return format but acceptable for simple list.
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?
Zero parameters, schema coverage 100%. Description adds no param info but none needed. Baseline 4 applies.
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?
Description clearly states verb 'List', resource 'series files', and location 'series/*.json'. It distinguishes from siblings like get_series and list_folders.
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 on when to use this tool vs alternatives, no prerequisites or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_templatesB
List Grok Imagine pipeline templates (Short Film, UGC Product Stories, etc.).
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits such as read-only nature, authentication requirements, rate limits, or response format. It minimally describes the operation.
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?
Single sentence with no wasted words, effectively front-loaded with the purpose. Ideal conciseness.
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?
For a simple list tool with no output schema or annotations, the description is adequate but lacks behavioral context (e.g., idempotency, caching). It covers the basic purpose but not enough for complete understanding.
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?
Schema description coverage is 100%, so the schema already documents 'account' and 'cookies'. The description adds no additional meaning beyond the schema, earning a baseline score of 3.
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?
Description clearly states the verb 'list', the resource 'Grok Imagine pipeline templates', and provides examples like 'Short Film, UGC Product Stories', effectively distinguishing from siblings like 'get_template'.
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 on when to use this tool vs alternatives (e.g., 'get_template' for a single template). The description simply states what it does without context or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plan_seriesC
Ask Grok to plan a video series (episodes + scenes + prompts) and save it to series/.json.
| Name | Required | Description | Default |
|---|---|---|---|
| style | No | Optional style / audience / tone notes | |
| topic | Yes | ||
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| duration | No | Target scene duration in seconds | |
| episodes | No | ||
| scenes_per_episode | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It only states the tool plans and saves, but does not disclose side effects (e.g., overwriting existing files), authentication requirements, error states, or other behavioral traits.
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 a single concise sentence, which is efficient. However, it is somewhat vague in that it instructs 'Ask Grok' rather than directly describing the tool's action.
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 7 parameters, 1 required, no output schema, and no annotations, the description is insufficient. It does not cover return values, error handling, or parameter interactions, leaving significant gaps for an agent.
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?
The description adds no meaning beyond the input schema. It mentions 'episodes + scenes + prompts' but does not elaborate on parameters like topic, style, duration, or account. Schema coverage is 57%, but description contributes nothing.
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 clearly states the verb 'plan' and the resource 'video series', and specifies the output location 'series/<id>.json'. It distinguishes well from sibling tools like list_series and update_scene.
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. There is no mention of prerequisites, when not to use, or comparisons with sibling tools like update_scene or list_series.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_statusC
Return Grok Imagine media search index status.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
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 states 'Return... status' but does not disclose behavioral traits such as whether it is read-only, requires authentication, has rate limits, or any side effects. The tool's behavior is under-specified.
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 a single, focused sentence that efficiently conveys the core purpose. It is not verbose and gets straight to the point, which aids quick understanding.
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?
For a tool with two optional parameters and no output schema or annotations, the description is too minimal. It fails to explain what the returned status contains, any prerequisites, or how the parameters affect the result. More context is needed for effective use.
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?
Schema coverage is 100% with both 'account' and 'cookies' parameters described. The description adds no additional meaning beyond the schema. Baseline 3 is appropriate since the schema provides adequate documentation.
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 'Return Grok Imagine media search index status' states a specific verb and resource, clearly distinguishing it from sibling tools that handle posts, images, etc. However, the term 'status' is somewhat vague, lacking detail on what exactly is returned (e.g., health metrics, progress).
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. The description does not specify conditions for checking status, nor does it mention limitations or exclusions. Sibling tools like 'check_quota' might be related, but no differentiation is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
send_to_telegramA
Download a Grok media post by post_id using account cookies and send it to Telegram as video/photo.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | video | |
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| post_id | Yes | ||
| telegram_caption | No | ||
| telegram_chat_id | No | Or set env GROK_TG_CHAT_ID. | |
| telegram_bot_token | No | Or set env GROK_TG_BOT_TOKEN. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the burden. It discloses core behaviors (download using cookies, send to Telegram) but omits important details like error handling, security implications, and return format.
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?
A single, well-structured sentence of 15 words. It front-loads the action and resource, wasting no words.
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 no output schema, 7 parameters, and no annotations, the description is too brief. It fails to address error scenarios, authentication details, Telegram credential handling, or expected return values, leaving significant gaps.
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?
Schema description coverage is 57% (4 of 7 params described). The description adds a high-level grouping ('using account cookies') but does not elaborate on individual parameters beyond schema. It provides marginal added value.
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 clearly states the tool downloads a Grok media post and sends it to Telegram, specifying the resource (Grok post) and target (Telegram). It uniquely distinguishes from siblings, none of which mention Telegram.
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?
The description implies usage when transferring Grok content to Telegram but provides no explicit guidance on prerequisites, alternatives, or when not to use this tool. The lack of usage context is a gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_project_thumbnailC
Set the thumbnail post for a project.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| post_id | Yes | ||
| project_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only implies mutation ('Set') but does not disclose effects (e.g., overwrites existing thumbnail), required permissions, or any side effects. The behavioral disclosure is minimal.
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 a single sentence with no fluff. It is front-loaded and concise, though additional informative phrases could improve value without sacrificing conciseness.
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?
Given 4 parameters (2 required), no output schema, and no annotations, the description is insufficient. It lacks information on return values, effects, permissions, or usage context, making the tool under-specified.
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?
Schema coverage is 50% (account, cookies have descriptions; post_id, project_id have none). The description adds no parameter details. It does not compensate for undocumented parameters, leaving the agent to guess required format or constraints.
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 clearly states the action ('Set') and the resource ('thumbnail post for a project'). However, it does not explicitly distinguish from sibling tools like 'create_project' or 'list_project_posts', though the unique verb-noun combination makes the purpose clear.
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, nor any prerequisites or context. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_sceneC
Update fields on a specific scene (status, prompt, aspect_ratio, video_url, ...).
| Name | Required | Description | Default |
|---|---|---|---|
| updates | Yes | ||
| series_id | Yes | ||
| scene_number | Yes | ||
| episode_number | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description must fully disclose behavior. It only says 'update' missing whether it is an overwrite or partial update, what permissions are needed, or if it is destructive. Insufficient.
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?
Single sentence with a list of fields, concise and front-loaded. Slightly more structure could help, but no waste.
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?
Lacks explanation of return values, error cases, or behavior with the complex 'updates' object. Incomplete for a mutation tool with no annotations or output schema.
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?
Schema coverage is 0%, and the description only lists example fields without explaining the structure of the 'updates' object or constraints. Minimal added value.
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 uses the specific verb 'Update' and resource 'scene', and lists example fields, making it clear. Sibling tools do not include another update_scene, so it distinguishes well.
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 on when to use this tool vs alternatives, no prerequisites, and no exclusions are provided. The description only states the action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upload_local_fileA
Upload a local file to Grok storage via /http/upload-file-v2/direct. Returns fileMetadataId to use as @reference in a follow-up chat message.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Absolute path to the local file. | |
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It mentions the endpoint and return value but omits critical details such as file size limits, supported file types, permissions required, whether the operation is idempotent, or if the uploaded file is publicly accessible. This lack of depth limits the agent's understanding of side effects.
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 concise, consisting of two sentences that convey the core purpose and key output. No unnecessary words or redundant information. The structure is front-loaded with the main action.
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?
While the description explains the return value (fileMetadataId), it lacks details on error handling, synchronous vs asynchronous behavior, file size constraints, and behavior when uploading duplicate files. For an upload tool with no output schema, more context is needed to ensure correct agent usage.
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 three parameters are fully described in the input schema (100% coverage). The tool description does not add additional meaning beyond what the schema already provides. For example, the schema already explains that account overrides cookies.json. Baseline score of 3 is appropriate.
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 clearly states the action (upload a local file to Grok storage), specifies the endpoint via path, and explains the return value (fileMetadataId) and its use as a reference in chat messages. It is distinct from sibling tools, none of which are file upload tools.
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?
The description implies usage when a local file needs to be uploaded for later reference in a chat message, but it does not explicitly state when to use this tool versus alternatives like create_media_post. No when-not or exclusion guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upscale_videoC
Ask Grok to upscale a generated video by video_id.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Optional Grok account name from cookies/<name>.json. Overrides cookies.json if provided. | |
| cookies | No | Optional Grok cookies. If omitted, server uses account or cookies.json. | |
| video_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully bears the burden of behavioral disclosure. It does not specify whether the operation is destructive, requires authentication, or produces any output. The description lacks any behavioral context beyond the action itself.
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 a single sentence with no wasted words. However, for a tool with 3 parameters and zero annotations, it is too brief. Conciseness should not sacrifice completeness; an extra sentence or two would improve this dimension.
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?
Given the lack of annotations and output schema, the description is incomplete. It does not explain what the tool returns, how long upscaling takes, or any error conditions. The context is insufficient for an agent to use the tool correctly without prior knowledge.
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?
Schema description coverage is 67% (account and cookies have descriptions; video_id does not). The description clarifies that video_id identifies the video to upscale, adding some meaning beyond the schema. However, it does not elaborate on account or cookies beyond what the schema provides, so value added is moderate.
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 clearly states the action (upscale) and the target resource (a generated video identified by video_id). It distinguishes from video creation tools like generate_video and image_to_video. However, the phrasing 'Ask Grok' is slightly informal and does not add technical clarity.
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 such as generate_video or image_to_video. There are no usage context, prerequisites, or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
35 tool updates
v0.1.0- First observed
agent_read - First observed
agent_send - First observed
agent_start - First observed
check_quota - First observed
create_media_post - First observed
create_project - First observed
create_project_node - First observed
create_share_link - First observed
delete_post - First observed
generate_image - First observed
generate_video - First observed
get_post - First observed
get_post_folders - First observed
get_project_conversations - First observed
get_series - First observed
get_template - First observed
image_to_video - First observed
imagine_agent_read - First observed
imagine_agent_send - First observed
imagine_agent_start - First observed
like_post - First observed
list_accounts - First observed
list_folders - First observed
list_posts - First observed
list_project_posts - First observed
list_projects - First observed
list_series - First observed
list_templates - First observed
plan_series - First observed
search_status - First observed
send_to_telegram - First observed
set_project_thumbnail - First observed
update_scene - First observed
upload_local_file - First observed
upscale_video
TDQS
Scored across 35 tools
Multiple tools have overlapping purposes, notably the 'agent_' and 'imagine_agent_' pairs (read, send, start) which are nearly identical. Additionally, 'generate_image' and 'generate_video' are distinct but 'image_to_video' combines both functions, creating ambiguity. An agent would struggle to choose correctly between these similar tools.
Tool names mostly follow a verb_noun pattern in snake_case, but there are inconsistencies: 'create_media_post' vs 'delete_post' (missing 'media'), 'send_to_telegram' (preposition), and the redundant 'agent_' vs 'imagine_agent_' prefixes. The naming is functional but not fully predictable.
35 tools is above the typical well-scoped range (3-15), making the surface feel heavy. While the domain (Grok Imagine) is complex and may justify many tools, several are redundant (e.g., agent vs imagine_agent), suggesting the count could be reduced without losing capability.
The tool set covers core CRUD operations for posts, projects, agents, and series, plus media generation, sharing, and Telegram integration. Minor gaps exist, such as no 'update_post' tool (only delete and get) and no tool to manage user settings, but the surface is largely sufficient for the domain.
Maintenance
Related MCP Connectors
MCP server for Grok Imagine AI video generation
MCP server for Qwen Image 3 AI image generation
MCP server for QPost — lets AI agents publish video and image posts to YouTube, TikTok, Instagram.
MCP server for Hailuo (MiniMax) AI video generation
Related MCP Servers
- AlicenseAqualityAmaintenanceUse XAI's latest api functionalities with Grok MCP. It supports image understanding and generation, live search, latest models and more.2252MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that automates a headless Chromium browser to generate images using Grok Imagine via text prompts. It supports configurable aspect ratios and saves images directly to disk using cookie-based authentication.5-
- AlicenseAqualityCmaintenanceMCP server for generating and editing images using xAI's Grok image model, supporting text prompts, batch generation, local files, and optional proxy configurations.215 npm29MIT
- AlicenseAqualityFmaintenanceProduction-grade MCP server for image and video understanding and generation across Gemini, OpenAI, and Grok.5564 PyPI4Apache 2.0