Skip to main content
Glama

Server Details

AI-native social media publishing to LinkedIn, Instagram, Threads, TikTok, and X.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsB

Average 3.9/5 across 148 of 148 tools scored. Lowest: 2.4/5.

Server CoherenceC
Disambiguation2/5

With 148 tools, there is significant overlap. For example, generate_content, publish_ai, generate_post_bundle, and request_project_content all generate content; get_analytics, get_unified_analytics, get_post_analytics, get_ad_performance, and get_unified_ad_report all fetch performance metrics; and list_inbox vs list_conversations blur comment and conversation management. Descriptions help, but boundaries between tools are often unclear.

Naming Consistency3/5

Most tools follow a verb_noun pattern (e.g., list_teams, create_goal, delete_post), but there are notable deviations: create_library_item vs save_to_library, publish_content vs publish_ai, schedule_content vs schedule_content_advanced, and connect_platform vs connect_connector. Mixed prefixes like 'autopilot_', 'check_', and 'get_' are fine, but overlapping verbs and a hyphen in 'connect_linkedin-page' reduce consistency.

Tool Count1/5

148 tools is extreme for any server. Even for a broad social media management platform, this is far beyond what an agent can effectively navigate. The count is unwieldy and suggests the surface should be split into multiple focused servers (publishing, analytics, connectors, workflows, etc.).

Completeness3/5

The core social publishing workflow is well covered (create, schedule, publish, edit, delete, retry), and there are extensive features for analytics, workflows, connectors, and AI agents. However, some resources have CRUD gaps: no update/delete for brand voices, no delete_project, no update/delete for Product Hunt goals, and no explicit get_workflow. These are workable but notable omissions.

Available Tools

148 tools
analyze_projectAnalyze ProjectCInspect

Analyze a project for audience, positioning, differentiators, content pillars, and risks.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
projectIdYes
Behavior2/5

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

The annotations indicate readOnlyHint=false and openWorldHint=true, implying potential side effects or external effects, but the description does not clarify what these side effects might be. It also does not mention return format, required permissions, or any behavioral details beyond the basic analysis action, so the agent is left uninformed about the tool's non-read-only nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the action and lists the analysis areas concisely. Every word is useful and there is no unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, and the description does not describe what the analysis returns or what side effects occur. Since annotations suggest a non-read-only and open-world nature, the description should explain what changes or outputs result from the analysis, but it only lists topics without clarifying the outcome or execution context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has only 50% description coverage, with projectId left undocumented. The description does not mention either parameter (projectId or team_id) and provides no guidance on how to specify the project for analysis, offering no added meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool analyzes a project and specifies the dimensions covered (audience, positioning, differentiators, content pillars, risks). However, it does not differentiate from the sibling tool 'get_project_analysis', which likely has a similar purpose, so it misses the opportunity to distinguish itself.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description only implies generic usage for project analysis, with no mention of prerequisites, exclusions, or related tools such as 'get_project_analysis' or 'generate_project_strategy'.

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

approve_postApprove PostAInspect

Approve a scheduled post that is pending approval. Once approved, it will be published at the scheduled time.

ParametersJSON Schema
NameRequiredDescriptionDefault
postIdYesThe scheduled post ID to approve
commentNoOptional approval comment
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior4/5

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

Annotations indicate this is a write operation (readOnlyHint=false) and not idempotent, but the description adds the key behavioral consequence: 'Once approved, it will be published at the scheduled time.' This goes beyond the structured annotations by clarifying the downstream effect, though it does not discuss reversibility or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary action and followed by a concise consequence. Every word earns its place, with no redundant or vague filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple input schema, strong annotations, and no output schema, the description provides sufficient context: it names the resource, the condition ('pending approval'), and the post-approval behavior. It does not mention return values, but for an action-oriented tool this is not a critical gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with clear descriptions for postId, comment, and team_id. The tool description itself adds no parameter details, but because the schema already thoroughly documents each parameter, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action: 'Approve a scheduled post that is pending approval,' identifying both the verb and resource. It also explains the outcome ('published at the scheduled time'), but it does not explicitly differentiate from the sibling tool reject_post, so it stops short of a 5.

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

Usage Guidelines3/5

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

The description implies the usage context: it is for approving pending scheduled posts. However, it does not provide explicit guidance on when to use this tool versus alternatives such as reject_post or list_pending_approvals, nor does it mention exclusions or prerequisites.

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

autopilot_approve_planApprove Autopilot PlanAInspect

Approve all pending items in an autopilot plan, or approve/reject individual items.

After approval, use autopilot_execute_plan to schedule the approved posts.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoAction for individual item (default: approve)
itemIdNoIndividual item ID to approve or reject
planIdNoPlan ID to approve (approves all pending items)
feedbackNoFeedback when rejecting an item
Behavior4/5

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

Annotations already establish this is a mutating operation (readOnlyHint=false) but not destructive (destructiveHint=false). The description adds context that approval can be bulk or per-item and supports rejection with feedback. It also signals the next step in the workflow, giving behavioral context beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence states the core functionality; the second provides a critical next-step pointer. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that alters approval state, the description covers the main actions and next step. It lacks information about the return value or how to inspect pending items, but given the absence of an output schema and the straightforward nature, it's sufficiently complete. It could mention that planId approves all pending, but that's implied.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters are fully described in the schema (100% coverage), so the description doesn't need to repeat them. It does clarify the two usage modes (bulk via planId vs individual via itemId and feedback), which adds semantic meaning to how the parameters should be used together.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool approves all pending items in an autopilot plan or approves/rejects individual items, using specific verbs (approve/reject) and a clear resource (autopilot plan). It distinguishes from siblings by focusing on plan-level approval and mentioning the follow-up execute tool.

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

Usage Guidelines4/5

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

The description explicitly directs the user to use autopilot_execute_plan after approval, providing clear sequential guidance. It implies this tool is for the approval phase, but doesn't explicitly contrast with alternatives like approve_post or list_pending_approvals, though its scope is evident.

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

autopilot_execute_planExecute Autopilot PlanAInspect

Schedule all approved posts in an autopilot plan.

Posts are spaced out over time and scheduled via the standard publishing pipeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
planIdYesPlan ID to execute
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations: posts are spaced out over time and go through the standard publishing pipeline. This explains the side effects implied by openWorldHint and readOnlyHint=false, though it does not detail error cases or confirmation behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loads the core action, and includes only relevant detail about spacing and the pipeline. Every sentence earns its place with no redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with informative annotations, the description covers the essential behavior and pipeline context. It does not explain return values or edge cases like an empty plan, but no output schema exists to set a higher expectation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides full coverage (100%) for the single parameter planId, and the description adds no additional meaning beyond confirming it refers to the autopilot plan. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (schedule) and the resource (all approved posts in an autopilot plan), distinguishing it from sibling tools like autopilot_generate_plan or autopilot_approve_plan. The second sentence clarifies the scheduling behavior.

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

Usage Guidelines4/5

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

The phrase 'approved posts' provides clear context that the plan must be approved before execution, implying a sequential relationship with autopilot_approve_plan. However, it does not explicitly mention when not to use this tool or name alternatives like bulk_schedule.

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

autopilot_generate_planGenerate Autopilot PlanAInspect

Generate a weekly content plan for an autopilot goal.

Chains 5 AI agents: Strategy Planner -> Content Ideation -> Calendar Optimizer -> Multi-Format Composer -> Variant Repurposer. Returns a plan with individual post items for review.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalIdYesThe autopilot goal ID to generate a plan for
weekNumberNoSpecific week number to generate (optional, auto-increments)
Behavior4/5

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

Annotations already indicate this is a mutating, open-world operation. The description adds behavioral context beyond annotations by detailing the 5-agent chain and that the output is for review, not execution. This explains the internal process and intent without contradicting the annotations. No annotation contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loaded with the core action, then adds the agent chain and output purpose. Every sentence earns its place with no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description explicitly states what is returned ('a plan with individual post items for review'), which is essential. It also provides enough process context (agent chain) for an agent to set expectations. It could be more complete by noting that the plan is not yet approved or scheduled, but 'for review' implies this and sibling tools cover approval.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for both parameters (goalId and weekNumber), so the schema already documents their meaning. The description adds minimal parameter context—'weekly' aligns with weekNumber but does not clarify defaults or auto-increment behavior beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Generate a weekly content plan for an autopilot goal.' It clearly indicates the scope (weekly, autopilot goal) and distinguishes from sibling tools like autopilot_execute_plan and autopilot_approve_plan by stating it returns a plan for review. The agent chain further clarifies the purpose.

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

Usage Guidelines4/5

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

The description gives clear context: this is for generating a weekly plan for an autopilot goal, implying use before approve/execute steps. However, it does not explicitly mention alternatives or when not to use it (e.g., for manual content generation, use generate_content instead). This misses the 'explicit alternatives' bar for a 5.

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

autopilot_get_progressGet Autopilot ProgressA
Read-only
Inspect

Get progress metrics for an autopilot goal — weeks planned, posts approved, scheduled, published.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalIdYesGoal ID to check progress for
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds value by specifying the exact kinds of progress metrics returned (weeks planned, posts approved, scheduled, published), which is useful behavioral context beyond the safety flags.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that immediately states the action and object, followed by the metric list. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only getter with one parameter, the description adequately covers the tool's purpose and returns. It lists the specific progress metrics, and given the absence of an output schema, this is sufficient contextual information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for its single parameter goalId, with a straightforward description. The tool description does not add additional semantic detail about the parameter, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource ('get progress metrics for an autopilot goal') and enumerates the metric types (weeks planned, posts approved, scheduled, published). This clearly distinguishes it from sibling tools like autopilot_list_goals or autopilot_execute_plan.

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

Usage Guidelines4/5

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

The description provides clear context: use this tool when you need progress metrics for an autopilot goal. It does not explicitly name alternatives or exclusions, but the purpose is specific enough to infer when to apply it.

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

autopilot_list_goalsList Autopilot GoalsA
Read-only
Inspect

List all autopilot goals for the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description carries little additional burden. It adds the scope 'current user' but does not disclose return format, pagination, or ordering. This is not a contradiction, and the annotations cover safety.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence: 'List all autopilot goals for the current user.' Every word adds value and there is no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has zero parameters, no output schema, and annotations confirming read-only behavior, the description fully captures the action and scope. There is nothing further needed for an agent to use this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the baseline per rubric is 4. The description correctly notes it lists all goals without requiring parameters, but it doesn't need to add further semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List', the resource 'autopilot goals', and the scope 'for the current user'. This unambiguously differentiates it from sibling tools that set, execute, or generate plans.

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

Usage Guidelines3/5

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

The description implies the use case (retrieving all goals for the current user) but provides no explicit comparison to alternatives or when-not-to-use guidance. For a simple read-only list tool, the context is clear, so implied usage is acceptable.

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

autopilot_set_goalSet Autopilot GoalAInspect

Set a social media goal for the AI autopilot to work toward.

The autopilot will use AI agents to plan content, generate posts, and schedule them. Example goals: 'Grow LinkedIn followers by 20%', 'Post 5x/week on Instagram about AI'.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalTextYesThe social media goal to achieve
platformsYesTarget platforms (e.g. ['twitter', 'linkedin', 'instagram'])
durationWeeksNoHow many weeks to run the autopilot (1-52, default 4)
targetMetricsNoTarget metrics (e.g. { followers: 1000, engagement_rate: 0.05 })
Behavior4/5

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

Annotations indicate this is not read-only (readOnlyHint=false) and not destructive (destructiveHint=false). The description adds valuable behavioral context by explaining the side effects: the autopilot will use AI agents to plan and schedule content, which goes beyond the annotation safety profile. It also gives concrete examples of acceptable goals.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a clear first sentence states the purpose, a second explains behavior, and a third provides examples. No redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters (two required), nested objects, and no output schema, the description covers the core purpose and workflow. It does not mention whether approval or planning are separate steps, but the sibling tools (autopilot_generate_plan, autopilot_approve_plan) imply a larger workflow. The description is sufficient for an agent to decide when to use this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of parameters with descriptions, so the schema largely carries the burden. The description adds example goals and names platforms in the example, which slightly enriches the goalText and platforms semantics, but it does not provide additional detail for durationWeeks or targetMetrics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Set a social media goal for the AI autopilot to work toward.' It uses a specific verb and resource, and distinguishes it from related tools like autopilot_list_goals or create_goal by focusing on the autopilot context.

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

Usage Guidelines4/5

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

The description provides clear context by explaining how the autopilot will work toward the goal ('use AI agents to plan content, generate posts, and schedule them'). It gives example goals that illustrate appropriate use, but does not explicitly mention when not to use it or compare with alternative tools like autopilot_generate_plan.

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

bulk_scheduleBulk Schedule PostsAInspect

Schedule multiple posts at once from CSV content.

USE THIS WHEN: • User has a spreadsheet or list of posts to schedule • Planning a content calendar for a month • Migrating content from another tool

CSV FORMAT (required columns): • platform: linkedin, instagram, x, tiktok, threads • scheduled_time: ISO 8601 format (e.g., 2024-02-15T10:00:00Z) • text: Post content/caption

OPTIONAL COLUMNS: • media_url: Image or video URL • first_comment: First comment to add (Instagram/LinkedIn) • hashtags: Additional hashtags to append

PROCESS:

  1. First call with validate_only: true to check for errors

  2. Review validation report with user

  3. Call again with validate_only: false to execute import

ParametersJSON Schema
NameRequiredDescriptionDefault
filenameNoOptional filename for tracking (default: upload.csv)
csv_contentYesCSV content as a string (include header row)
skip_errorsNoIf true, skip rows with errors and schedule valid rows only
validate_onlyNoIf true, only validate without scheduling. Default: true for safety.
Behavior5/5

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

Adds valuable behavioral context beyond annotations: the validation-first workflow (validate_only:true then false), safety default (validate_only defaults true), and skip_errors semantics. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with clear sections (USE THIS WHEN, CSV FORMAT, OPTIONAL COLUMNS, PROCESS). Each section adds necessary information without redundancy; concise and scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Complete for a complex bulk operation: includes use cases, input format expectations, validation steps, and parameter semantics. No output schema is present, but the description does not need to explain returns given the operational focus.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description enhances this by detailing the exact CSV required columns (platform, scheduled_time, text) and optional columns (media_url, first_comment, hashtags). It also clarifies the meaning of validate_only and skip_errors within the workflow.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Schedule multiple posts at once from CSV content' with a specific verb, resource, and scope. The 'USE THIS WHEN' section further clarifies intended use cases, distinguishing it from single-post scheduling tools.

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

Usage Guidelines5/5

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

Explicit 'USE THIS WHEN' section lists concrete scenarios (spreadsheet/list, content calendar, migrating content). The PROCESS section provides step-by-step guidance on validating before executing, offering clear operational recommendations.

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

bulk_update_calendar_eventsBulk Update Calendar EventsAInspect

Apply one bulk action to many calendar events at once, including shifts, explicit reschedules, queue moves, cancellations, or assignments.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesCalendar event IDs or scheduled post IDs to update.
shiftNo
actionYesBulk action to apply.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
timezoneNoOptional IANA timezone for queue-based moves.
applyScopeNoWhether to affect only the selected IDs or their recurrence groups.
assigneeIdNoRequired for the 'assign' action.
scheduledAtNoReplacement ISO 8601 time for the 'set_time' action.
deltaMinutesNoCompatibility shift amount in minutes.
scheduledTimeNoCompatibility alias for scheduledAt.
Behavior3/5

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

Annotations already provide readOnly/destructive hints; the description adds the list of action categories but does not disclose partial-failure behavior, recurrence scope implications, or side effects beyond the action list. It does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently communicates the core purpose without filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 10 parameters and no output schema, the description stays minimal. It doesn't address important contextual aspects like the 200-item cap, potential partial failures, or behavior of actions that require additional fields (e.g., assign). The rich schema compensates somewhat, but the description could provide more high-level guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is high (90%), so parameters are well-documented. The description adds no syntax or constraint details beyond what the schema provides, only mapping the action list. It meets the baseline without adding parameter-specific value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs a single bulk action across many calendar events, enumerating specific action types (shifts, reschedules, queue moves, cancellations, assignments). This distinguishes it from single-event update_calendar_event and bulk_schedule.

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

Usage Guidelines4/5

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

The phrase 'many calendar events at once' implies the use case for bulk operations, contrasting with single-event tools. However, it does not explicitly mention when not to use it or point to alternatives like update_calendar_event for individual updates.

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

cancel_recurring_seriesCancel Recurring SeriesA
Destructive
Inspect

Cancel a recurring series and stop future pending occurrences from publishing.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for seriesId.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
seriesIdNoRecurring series parent scheduled post ID.
Behavior4/5

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

The description adds a meaningful behavioral detail beyond the destructive annotation: it specifically stops 'future pending occurrences' from publishing, implying past occurrences remain unchanged. It does not clarify reversibility or effects on the series record itself, but no contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the action and result. No redundant words or unnecessary details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With full parameter documentation and annotations indicating destructive behavior, the description is adequate for tool selection and invocation. It could be improved by noting that past published posts are unaffected, but the current description is sufficient for a simple cancellation action.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already defines all parameters with descriptions (100% coverage), so the description does not need to explain them. The description adds no parameter-specific semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Cancel') and identifies the resource ('recurring series') along with the precise effect ('stop future pending occurrences from publishing'). This clearly distinguishes it from sibling tools like update_recurring_series and delete_scheduled_post.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It does not mention scenarios, exclusions, or alternative tools such as updating the series or deleting individual occurrences.

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

check_ai_media_statusCheck AI Media StatusA
Read-onlyIdempotent
Inspect

Check the status of an AI media generation job.

Returns current status (pending, processing, completed, failed) and result URL when complete.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesThe AI media job ID to check
Behavior4/5

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

The annotations already declare the tool read-only, idempotent, and non-destructive. The description adds the specific status values returned and the presence of a result URL upon completion, which provides useful behavioral context beyond the annotations. It does not detail error handling or polling behavior, but the core safety and result traits are covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, front-loaded with the action and followed by return details. Every word earns its place, with no unnecessary elaboration or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter read-only tool with no output schema, the description adequately explains the return values (status categories and result URL). It does not mention error cases or how to interpret a 'failed' status, but given the tool's simplicity and the annotations, it is sufficiently complete for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single parameter, including a description ('The AI media job ID to check'). The tool description adds no new information about the parameter beyond what the schema provides, so it meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks the status of an AI media generation job and lists the possible statuses (pending, processing, completed, failed), making its purpose specific and distinct from sibling tools like generate_ai_media. The verb 'check' plus the resource 'status of an AI media generation job' is precise and not tautological.

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

Usage Guidelines3/5

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

The description implies the tool is used to query the status of an AI media generation job, but it does not explicitly state when to use it (e.g., after generate_ai_media) or provide exclusions or alternatives. There is no mention of how to obtain a job_id or when not to use it, so the guidance is implied rather than explicit.

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

complete_goalComplete Product Hunt GoalA
Destructive
Inspect

Mark a Product Hunt goal as complete or incomplete.

REQUIREMENTS: • Must have Product Hunt account connected • Write access requires app whitelisting by Product Hunt

ParametersJSON Schema
NameRequiredDescriptionDefault
goalIdYesThe ID of the goal to update
completedYesSet to true to mark complete, false to mark incomplete
Behavior3/5

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

The description adds requirement context (account connection, whitelisting) beyond the annotations, but it does not disclose side effects or the broader implications of marking a goal complete/incomplete. It does not contradict the destructiveHint annotation, but the added behavioral detail 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, with a clear action statement followed by a bulleted requirements list. Every sentence carries necessary information, and there is no fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter mutation tool with robust annotations and schema, the description covers the essential usage prerequisites. It omits details about return values or side effects, but these are not critical given the available schema and annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the schema descriptions for goalId and completed are clear. The description adds no additional meaning beyond the action itself, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Mark') and resource ('Product Hunt goal'), explicitly covering both complete and incomplete states. This differentiates it from sibling tools like create_goal, which focus on goal creation.

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

Usage Guidelines3/5

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

The description provides prerequisites (connected account, app whitelisting) that are useful for usage, but it does not explicitly indicate when to use this tool versus alternatives like autopilot_set_goal or create_goal. The usage context is implied but not differentiated.

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

connect_blueskyConnect BlueskyA
Read-onlyIdempotent
Inspect

Get the credential setup schema to connect Bluesky using API key or token credentials.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description confirms the tool is a read-only schema retrieval and mentions credential types (API key or token), but it does not add further behavioral context such as prerequisites, rate limits, or side effects. With annotations doing the heavy lifting, this is adequate but not enriched.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, 12-word sentence that front-loads the action ('Get') and resource. Every word is informative, with no filler or redundant phrasing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is very simple: no parameters, no output schema, and strong annotations. The description adequately communicates the purpose and the nature of the returned value (a schema). It could optionally clarify the exact format of the schema, but for a straightforward retrieval tool with safe annotations, this is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so schema description coverage is trivially 100%. According to the rubric, 0 params earns a baseline of 4. The description's mention of 'API key or token credentials' hints at the schema content, but since there are no parameters, no additional parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Get the credential setup schema to connect Bluesky using API key or token credentials.' It uses the specific verb 'Get', names the exact resource (credential setup schema), and identifies the target platform (Bluesky), distinguishing it from other connect_* sibling tools that target different platforms or perform actual connections.

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

Usage Guidelines3/5

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

The description implies this tool is used before connecting Bluesky (since it retrieves the credential schema), but it does not explicitly state when to use it versus alternatives, nor does it mention any exclusions. The context is clear but the guidance is implicit rather than explicit.

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

connect_connectorConnect a ConnectorBInspect

Initiate authentication flow for a connector.

For OAuth2 connectors, returns an authorization URL. For API key connectors, stores the provided key. For webhook connectors, registers the webhook URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
apiKeyNoAPI key (for api_key auth strategy connectors)
botTokenNoBot token (for bot_token auth strategy connectors like Telegram, Discord)
webhookUrlNoWebhook URL (for webhook auth strategy connectors)
connectorIdYesConnector ID to connect
Behavior3/5

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

The description credibly discloses side effects for OAuth2, API key, and webhook connectors: returning an authorization URL, storing the key, and registering the webhook URL. However, the bot_token auth strategy is entirely omitted, leaving a gap in behavioral coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded with the core purpose. The subsequent lines efficiently enumerate auth-type behaviors without redundancy. Every sentence contributes value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a generic connector connection tool, but the description fails to mention the bot_token auth strategy included in the schema. It also does not describe return values for API key or webhook flows, nor does it provide context on idempotency or prerequisites, leaving important operational details unclear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already describes apiKey, botToken, and webhookUrl. The description adds minimal parameter-related meaning by associating auth types with behavior, but it omits the botToken parameter entirely and does not clarify which parameters are mutually exclusive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool initiates an authentication flow for a connector, with specific behavior per auth type. It distinguishes itself from the many connect_* siblings by being generic and connector-driven, rather than platform-specific.

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

Usage Guidelines2/5

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

No guidance is given on when to use this generic connector tool versus the numerous platform-specific connect_* siblings (e.g., connect_slack, connect_telegram). It does not mention prerequisites, exclusions, or alternative tools.

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

connect_devtoConnect DEV.toA
Read-onlyIdempotent
Inspect

Get the credential setup schema to connect DEV.to using API key or token credentials.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds context that it returns a credential setup schema and supports API key or token credentials. However, it does not disclose any further behavioral details such as what the schema structure looks like or any prerequisites, so the added value beyond annotations is limited.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core action ('Get the credential setup schema') and includes only relevant details (platform and credential types). Every word earns its place, with no fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with zero parameters and no output schema, the description fully captures the tool's purpose and scope. It clearly distinguishes that this is a schema retrieval action, not the actual connection process, and specifies the credential types. No further information is necessary for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is empty (0 parameters), so schema coverage is trivially 100%. The description adds meaningful context by explaining that the tool returns a schema for setting up credentials using API key or token, which clarifies the tool's purpose despite having no parameters. This aligns with the baseline of 4 for zero-parameter tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Get the credential setup schema to connect DEV.to'. It uses a specific verb ('Get') and resource ('credential setup schema'), and distinguishes itself from sibling connect_* tools by naming the specific platform (DEV.to) and the credential types (API key or token).

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

Usage Guidelines4/5

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

The description provides clear context: this tool is for retrieving the credential schema needed to connect DEV.to. While it doesn't explicitly exclude alternative tools, the platform-specific naming (DEV.to) among many connect_* siblings makes the intended usage unambiguous. No exclusions or when-not guidance are given, but the context is sufficient.

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

connect_discordConnect DiscordA
Read-onlyIdempotent
Inspect

Get the webhook setup schema to connect Discord.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare non-destructive, idempotent, open-world, and read-only behavior. The description adds that it retrieves a 'webhook setup schema', but does not disclose potential side effects, prerequisites, or what the schema contains. It adds minimal behavioral nuance beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the action ('Get') and object ('webhook setup schema'). Every word contributes to clarity with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple nature (no parameters, no output schema) and rich annotations, the description sufficiently explains the tool's purpose. It could possibly mention that this is a preparatory step and not an actual connection, but the wording already implies that by saying 'to connect Discord'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description adds meaning by framing the return as a schema for webhook setup, which helps the agent anticipate the response even though no parameters exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('webhook setup schema') clearly tied to Discord, distinguishing it from sibling connect_* tools for other platforms. It precisely communicates the tool's function without ambiguity.

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

Usage Guidelines4/5

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

The phrase 'to connect Discord' implies the tool is used as a preparatory step for integrating Discord, and the sibling context suggests it is specific to Discord among similar tools. However, it lacks explicit exclusions or alternative tool mentions.

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

connect_dribbbleConnect DribbbleA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Dribbble account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already communicate readOnlyHint=true and idempotentHint=true, and the description is consistent with these. It adds the behavioral context that it returns a URL for connecting a Dribbble account, but does not disclose additional details such as whether user interaction is required or whether it initiates a background flow. Given the strong annotation coverage, the description adds acceptable but not extensive value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the essential information without any filler. Every word earns its place, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity—no parameters, no output schema, and low complexity—the description is complete. It tells the agent exactly what the tool returns (OAuth URL) and for what purpose (connecting Dribbble). Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so there is nothing to explain. The description adds semantic context by indicating the output type (OAuth URL) and purpose, which is more than the empty schema provides. A score of 4 reflects the baseline for a no-parameter tool with clear description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to 'Get the OAuth URL to connect your Dribbble account.' The verb 'Get' is specific and the resource (OAuth URL) and context (connecting Dribbble) are explicit. It also implicitly distinguishes itself from sibling connect_* tools by naming the platform.

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

Usage Guidelines3/5

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

The description implies usage: when the user wants to connect their Dribbble account, this tool returns the OAuth URL. However, it does not explicitly state when to use this over other connect_* alternatives, nor does it mention any exclusions or prerequisites. The purpose is clear but guidance on when/why it should be chosen is minimal.

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

connect_facebookConnect FacebookA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Facebook account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare the tool as readOnly, idempotent, and non-destructive. The description adds the OAuth URL context but does not disclose additional behaviors such as URL expiration, required redirect handling, or any side effects. It does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the action ('Get the OAuth URL') and states the purpose. Every word serves a function, with no unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description adequately conveys the tool's purpose and expected return (a URL). Given the simple complexity, the description is complete and leaves no ambiguous gaps for an agent to misinterpret.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description adds no parameter semantics, but the baseline for 0 params is 4. The schema already covers all (vacuous) parameters, and the description's mention of 'your Facebook account' implies no extra inputs are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb and resource: 'Get the OAuth URL to connect your Facebook account.' This distinguishes it from sibling connect_* tools for other platforms by explicitly naming Facebook.

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

Usage Guidelines3/5

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

The description implies use for Facebook connection but provides no explicit guidance on when to use vs. alternatives like connect_platform or connect_connector. The purpose is clear from the name, but no when-not-to-use or alternative tools are mentioned, leaving the agent to infer.

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

connect_gmbConnect Google My BusinessA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Google My Business account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare the operation is read-only, idempotent, and non-destructive. The description adds that it returns an OAuth URL, which is consistent. No contradictory or additional behavioral context needed for a simple URL-fetching tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence communicates exactly what the tool does with no wasted words. Ideal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with strong annotations and no output schema, the description fully covers what the tool does and what it returns. No missing context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so schema coverage is trivially 100%. Per rubric, 0 params earns a baseline 4; the description adds nothing needed about parameters since there are none.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and clear resource ('OAuth URL to connect your Google My Business account'), fully distinguishing it from sibling connect_* tools for other platforms.

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

Usage Guidelines4/5

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

The description clearly states the tool connects Google My Business, and given the many sibling platform-specific connect tools, usage context is clear. It doesn't explicitly exclude other tools, but the platform-specific naming makes alternatives unnecessary.

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

connect_hashnodeConnect HashnodeA
Read-onlyIdempotent
Inspect

Get the credential setup schema to connect Hashnode using API key or token credentials.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already mark it as read-only, open-world, idempotent, and non-destructive. The description adds context by specifying the return type (credential setup schema) and accepted credential types (API key/token), going beyond the structured annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, clear sentence that immediately states the purpose and the credential types. No filler, no redundancy, and the key information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only schema retrieval tool, the description is sufficient. It explains the core purpose and output type, though it does not detail the schema's structure; this is acceptable given the tool's simplicity and lack of an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema is an empty object, so there is nothing to document. The description mentions credential types, which provides useful context even though no parameters exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns the credential setup schema for Hashnode, using specific verbs and resource naming. It distinguishes itself from sibling connect_* tools by clarifying it retrieves a schema rather than performing a connection.

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

Usage Guidelines3/5

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

The description implies this tool is used to get credential schema for connecting Hashnode, but provides no explicit when-to-use or alternatives guidance. It does not mention related tools like get_platform_settings_schema or actual connect actions.

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

connect_instagramConnect InstagramA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Instagram account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds that the tool returns a URL (OAuth URL), which is useful context beyond annotations. However, it does not disclose details like whether user interaction is required after obtaining the URL or how the result should be handled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 9 words with no redundant information. It is front-loaded with the action ('Get the OAuth URL') and immediately clarifies the purpose ('to connect your Instagram account'). Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with no parameters, no output schema, and minimal annotations, the description adequately explains the return value (an OAuth URL) and the intended action. It does not explain what to do with the URL, but for a connector tool this is likely self-evident. The description is complete enough for an agent to select and invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters, the input schema is fully covered (100%). The baseline for 0 params is 4, and the description's mention of 'your Instagram account' adds no parameter-specific meaning but is not needed. No further explanation is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Get the OAuth URL to connect your Instagram account.' It uses a specific verb ('Get') and resource ('OAuth URL') and explicitly mentions 'Instagram account,' distinguishing it from other connect_* tools for different platforms.

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

Usage Guidelines4/5

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

The context is clear: this tool is used to obtain an OAuth URL for connecting Instagram. Sibling tools like connect_facebook or connect_twitter exist, but the description implies the use case without explicitly listing exclusions or alternatives. This meets the 'clear context, no exclusions' bar.

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

connect_lemmyConnect LemmyA
Read-onlyIdempotent
Inspect

Get the credential setup schema to connect Lemmy using API key or token credentials.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description is consistent with these. It adds modest context by mentioning API key/token credentials, but does not disclose further behavioral traits such as whether the schema is static or dynamic, or any rate limits. With annotations covering safety, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundant information. Every word contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple, parameterless read-only tool with no output schema. The description fully explains what it does and what it returns (a credential setup schema). Combined with strong annotations, no further context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description adds value by specifying that the credential setup schema involves API key or token credentials, which gives semantic meaning beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 'credential setup schema' for Lemmy, specifying it uses API key or token credentials. This distinguishes it from other connect_* tools by naming the specific platform and the type of output.

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

Usage Guidelines3/5

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

The description implies this tool is used to fetch the credential schema when connecting Lemmy, but it does not explicitly state when to use it over alternatives like connect_platform or get_platform_settings_schema. No exclusions or alternative tools are mentioned.

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

connect_linkedinConnect LinkedInA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your LinkedIn account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds the OAuth context and account connection purpose, but does not disclose additional behaviors such as URL expiration, redirect requirements, 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that is front-loaded with the action and resource, containing no unnecessary words or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with no parameters and no output schema, the description provides sufficient information to understand its purpose. However, it does not explicitly differentiate between personal account and page, relying on the sibling tool name for distinction.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so schema description coverage is trivially 100%. Baseline for zero parameters is 4, and the description does not need to elaborate on parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'get' and identifies the resource as 'the OAuth URL to connect your LinkedIn account,' clearly stating what the tool does. It distinguishes from the sibling connect_linkedin-page by explicitly referring to 'your LinkedIn account' (personal) rather than a page.

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

Usage Guidelines3/5

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

The description implies usage for connecting a LinkedIn account, but does not explicitly state when to use this tool versus alternatives like connect_linkedin-page. No exclusions or alternative guidance is provided.

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

connect_linkedin-pageConnect LinkedIn PageA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your LinkedIn Page account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds no additional behavioral context (e.g., prerequisites, URL expiration, or what to do with the URL) beyond what annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no waste. It clearly conveys the tool's purpose and target resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with clear annotations, the description is largely complete. It could briefly mention the next step in the OAuth flow (e.g., that the returned URL must be visited by the user), but the core functionality is clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the baseline of 4 applies; there is nothing for the description to add beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a specific verb ('Get') and resource ('OAuth URL to connect your LinkedIn Page account'), clearly distinguishing it from the sibling connect_linkedin which likely targets personal profiles.

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

Usage Guidelines4/5

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

The phrase 'connect your LinkedIn Page account' implies the use case, but there is no explicit guidance on alternatives or when not to use this tool compared to the other connect_* siblings.

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

connect_mastodonConnect MastodonA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Mastodon account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, which covers the safety profile. The description adds a minor behavioral detail (it returns an OAuth URL as part of the connection flow), but does not go into further depth such as whether the URL expires or requires user interaction. With annotations present, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that immediately states the tool's purpose. It contains no extraneous words or repetition, making it highly effective for quick comprehension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no parameters and simple output (an OAuth URL), the description fully answers what the tool does and what the agent can expect. The annotations provide sufficient safety and side-effect context, so the description does not need to elaborate further. It is complete for its complexity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4, and schema coverage is 100% (vacuously). The description does not need to explain any parameters since none exist, and no additional semantic guidance is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Get') and resource ('OAuth URL') for a specific target ('your Mastodon account'), which distinguishes it from sibling connect tools for other platforms. It goes beyond the title by specifying the exact output, making the tool's function unambiguous.

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

Usage Guidelines4/5

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

The context is clear: this tool is used when a user wants to connect their Mastodon account, as evidenced by the name and description. It does not explicitly mention alternatives or exclusions, but the sibling list of platform-specific connect tools makes the intended usage obvious, so clear context with no exclusions merits a 4.

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

connect_nostrConnect NostrA
Read-onlyIdempotent
Inspect

Get the custom connection setup instructions for Nostr. Note: This is an unofficial connector and may change without notice.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds value beyond annotations by specifying that the tool returns 'custom connection setup instructions' (indicating a read-only instructional output) and warns that the connector is unofficial and may change without notice. This is useful behavioral context not present in annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences: the first delivers the core functionality, the second adds a necessary caveat. There is no filler or redundancy, making it appropriately concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 params, no output schema), the description provides adequate information about what it does and the unstable nature of the connector. It could be more complete by explicitly stating that it does not perform the connection itself, but 'instructions' implies this. Overall, it is sufficiently complete for an agent to understand the tool's role.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so schema coverage is 100% trivially. The description doesn't need to explain parameters, and none are present to elaborate on. Baseline for 0 params is 4, and no additional parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get the custom connection setup instructions for Nostr' uses a specific verb (Get) and resource (connection setup instructions for Nostr), clearly distinguishing it from sibling connect_* tools by naming the target platform. It fully communicates what the tool does.

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

Usage Guidelines2/5

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

No explicit guidance is given about when to use this tool versus alternatives. While it implies Nostr-specific usage, it does not mention when not to use it, nor does it reference sibling tools or prerequisites. The only additional context is the unofficial/change warning, which is more of a caution than a usage guideline.

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

connect_pinterestConnect PinterestA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Pinterest account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare the tool as readOnly and idempotent, so the safety profile is covered. The description adds that the tool returns an OAuth URL, which is useful behavioral context. However, it doesn't elaborate on what the URL is for, how it should be used, or any nuances (e.g., expiration, redirect behavior), so it adds limited value beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the action ('Get the OAuth URL') and specifies the target ('Pinterest account'). Every word earns its place, with no redundancy or irrelevant detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with no parameters, no output schema, and strong annotations, the description is largely complete. It fully states the tool's purpose and return type (OAuth URL). The only minor gap is that it doesn't mention any follow-up steps (e.g., user must open the URL to complete the connection), but this is not essential for tool invocation. Overall, it's sufficient for an agent to select and call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is no parameter semantics to explain. The description doesn't need to add parameter information, and the baseline of 4 for zero-parameter tools is appropriate. The schema coverage is vacuously 100%.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action (get the OAuth URL) and a specific resource (Pinterest account), making it immediately clear what the tool does. It distinguishes from sibling connect_* tools by naming Pinterest explicitly, so there's no ambiguity about which platform it targets.

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

Usage Guidelines3/5

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

The description implies the tool should be used when the user wants to connect a Pinterest account, providing clear context. However, it offers no explicit guidance on alternatives (e.g., other connect_* tools, checking existing connections via list_connected_accounts) or when not to use it, leaving the agent to infer from the name and context.

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

connect_platformConnect PlatformA
Read-onlyIdempotent
Inspect

Connect a platform dynamically by platform ID. Returns OAuth URL, webhook setup details, or credential form contract depending on the platform auth method.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformYesPlatform ID to connect

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
setupNo
authUrlNo
isErrorNo
platformNo
usernameNo
connectedNo
errorMessageNo
alreadyConnectedNo
followUpSuggestionsNo
Behavior4/5

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

The description adds behavioral context beyond annotations by explaining that the output depends on the platform's auth method. This aligns with the readOnlyHint (it returns setup info rather than performing the connection) and clarifies the tool's side-effect-free nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the action, and wastes no words. It delivers purpose and output context efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the essential purpose, parameter, and output variability, and an output schema supplies return details. However, it omits guidance on choosing between this and the many dedicated connect_* tools, leaving some ambiguity in a crowded tool landscape.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the platform enum is already documented. The description adds meaning by indicating that the parameter value affects the output contract (OAuth URL vs webhook vs credentials), which helps the agent anticipate behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool connects a platform by ID and specifies the three possible return types (OAuth URL, webhook setup details, or credential form contract). This distinguishes it from sibling connect_* tools by emphasizing dynamic selection based on platform ID.

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

Usage Guidelines3/5

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

The description implies a generic dynamic connector ('dynamically by platform ID') but does not explicitly state when to use it over dedicated connect_* tools. No exclusions or alternatives are provided, so the agent must infer from the sibling list.

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

connect_producthuntConnect Product HuntA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Product Hunt account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds the output type (OAuth URL), which is useful but does not elaborate on other behavioral aspects like OAuth flow or prerequisites. It is consistent with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-front-loaded sentence with no redundant information. It efficiently communicates the core purpose without verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, zero-parameter tool with clear annotations and no output schema, the description adequately explains the action. It could potentially mention what to do with the returned URL, but that is beyond the minimal required context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema coverage is 100% (vacuously). The description does not need to explain parameters; the baseline for 0 params is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('OAuth URL to connect your Product Hunt account'), clearly distinguishing it from sibling connect tools for other platforms. It precisely identifies the tool's function.

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

Usage Guidelines4/5

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

The description clearly indicates when to use this tool (to connect a Product Hunt account) and implies it is not for other platforms by naming Product Hunt specifically. It lacks explicit alternatives or exclusions, but the context is unambiguous given the tool name and sibling list.

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

connect_slackConnect SlackA
Read-onlyIdempotent
Inspect

Get the webhook setup schema to connect Slack.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds no behavioral context beyond being a simple get operation, which is acceptable but does not enrich the annotations further.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the key action and resource. It contains no extraneous information and is appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 params, no output schema, comprehensive annotations), the description sufficiently explains what the tool returns. It could optionally mention next steps for using the schema, but this is not necessary for a basic getter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description does not need to explain parameter semantics, and with 100% schema coverage (empty schema), nothing is missing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets the webhook setup schema for connecting Slack, using a specific verb ('get') and resource ('webhook setup schema'). It distinguishes from siblings by naming Slack specifically, which differentiates it from other connect_* tools.

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

Usage Guidelines3/5

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

The description implies usage when a user needs to connect Slack and requires the webhook setup schema. However, it does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or mention alternative tools like connect_platform or get_platform_settings_schema.

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

connect_telegramConnect TelegramA
Read-onlyIdempotent
Inspect

Get the credential setup schema to connect Telegram using API key or token credentials.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds little behavioral context beyond the credential types, similar to baseline examples.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word contributes meaning, and it is appropriately sized for a zero-parameter getter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, with no parameters or output schema. The description stating it returns a 'credential setup schema' is adequate, though it does not describe what to do with the schema or provide further guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, and schema description coverage is 100%, so the baseline is 4. The description's mention of API key or token credentials adds context about accepted credential types, though not tied to specific parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Get the credential setup schema') and resource ('Telegram'), with additional scope via 'using API key or token credentials'. This distinguishes it from sibling connect_* tools by platform and purpose.

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

Usage Guidelines4/5

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

The description implies when to use this tool: when you need the credential setup schema for Telegram. It does not explicitly mention alternatives or when-not to use, but the context is clear given the sibling set.

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

connect_threadsConnect ThreadsA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your Threads account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds that this returns an OAuth URL, which is useful context, but it does not elaborate on side effects or requirements beyond what annotations imply. It is consistent with annotations, so no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundancy. It delivers the essential information instantly, which is ideal for such a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no parameters and no output schema, the description is complete. It explicitly mentions the return value (OAuth URL) and the tool's purpose. Combined with rich annotations, the agent has sufficient context to select and invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema provides full coverage (100%). The baseline for 0 params is 4, and the description does not need to add parameter details. It briefly indicates the output (OAuth URL), but since no params exist, there is nothing to compensate for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: obtaining the OAuth URL for a Threads account. The verb 'Get' is specific, and 'OAuth URL to connect your Threads account' precisely identifies the resource and distinguishes it from sibling tools for other platforms.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. While the name implies it's for Threads specifically, the description does not mention any prerequisites, the OAuth flow context, or exclusions relative to other 'connect_' tools. 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.

connect_tiktokConnect TikTokA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your TikTok account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds no behavioral details about the OAuth flow, such as URL expiry or user approval, beyond what annotations indicate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no unnecessary words, front-loading the action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-param, no-output-schema tool, the description covers the basic purpose but omits important contextual information like how the returned URL should be used, whether it requires user authorization, and any setup prerequisites. This leaves some gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters, the schema fully covers input requirements. The description appropriately doesn't mention parameters, so baseline 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Get the OAuth URL to connect your TikTok account,' providing a specific verb and resource. It clearly distinguishes from sibling connect_* tools by naming TikTok.

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

Usage Guidelines3/5

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

The description implies usage for TikTok but lacks explicit guidance on when to use this tool versus alternatives, prerequisites, or the expected OAuth flow. It does not mention that the URL requires user interaction or that other connect_* tools are used for other platforms.

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

connect_whopConnect WhopA
Read-onlyIdempotent
Inspect

Get the credential setup schema to connect Whop using API key or token credentials. Note: This is an unofficial connector and may change without notice.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already indicate a safe, read-only, idempotent operation. The description adds important non-obvious context: this is an unofficial connector that may change without notice. This warning goes beyond the structured annotations and helps set expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long and front-loaded: the first sentence states the action and resource, the second adds a necessary caveat. Every word earns its place; no padding or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with rich annotations and no output schema, the description is complete. It explains what the tool returns (the schema), the connection target (Whop), accepted credential styles, and warns about instability. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, and schema coverage is 100%, so the baseline is 4. The description adds useful context by mentioning the credential types (API key or token) that would be used with the returned schema, which is helpful even though no params are defined.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and clearly identifies the resource ('credential setup schema') and target platform (Whop). It differentiates itself from the many sibling connect_* tools by specifying that it returns a schema rather than performing the actual connection.

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

Usage Guidelines4/5

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

The description makes clear the tool is for obtaining the credential schema needed to connect Whop using API key or token credentials. It doesn't explicitly spell out when not to use it, but the platform-specific context is clear and no alternatives are necessary.

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

connect_xConnect XA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your X account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds that it returns an OAuth URL, which is consistent but not deeply beyond annotations. It doesn't disclose additional behaviors like URL expiration or browser redirect steps, but with annotations covering the safety profile, a mid-score is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the action, no unnecessary words. Every word earns its place. Perfectly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, no output schema), the description is largely complete: it states the output (OAuth URL) and the purpose. Minor context missing about post-authorization flow, but not essential for such a straightforward tool. Slight deduction for not mentioning that the URL is for user-facing authentication, but still adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description need not add parameter meaning. Baseline is 4 as per rubric for 0 params; the description focuses on the action and result, which is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('OAuth URL to connect your X account'), clearly distinguishing this from sibling connect_* tools for other platforms. It fully states what the tool does with no ambiguity.

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

Usage Guidelines3/5

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

The description implies usage for connecting an X account, but does not explicitly state when to use this versus the many sibling connect_* tools or any exclusions. The platform is named, so context is clear, but no explicit guidance or alternatives are mentioned.

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

connect_youtubeConnect YouTubeA
Read-onlyIdempotent
Inspect

Get the OAuth URL to connect your YouTube account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds the purpose of returning an OAuth URL but does not disclose additional behavioral traits such as token expiry or that the URL is for user interaction. This is acceptable given the annotation coverage, but no extra context is provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that is immediately informative. It front-loads the primary action ('Get the OAuth URL') and includes the necessary context ('connect your YouTube account') with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with no parameters, no output schema, and strong annotations, the description sufficiently conveys the return value (OAuth URL) and purpose. It could mention next steps (e.g., 'use the URL in an authorization flow'), but this is not critical. Slight room for improvement prevents a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is empty with zero parameters, so there are no parameters to describe. The description confirms the tool takes no input. Baseline for 0 params is 4, and no further semantic explanation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Get the OAuth URL to connect your YouTube account.' It uses a specific verb ('get'), identifies the resource ('OAuth URL'), and specifies the target ('YouTube account'). This distinguishes it from sibling connect_* tools by naming YouTube explicitly.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as connect_platform or other connect_* tools. It does not mention prerequisites, context, or exclusions. There is no explicit 'when to use' or 'when not to use' information.

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

create_ad_campaignCreate Ad CampaignA
Destructive
Inspect

Create a new advertising campaign on a connected ad platform.

Supports campaign creation across Meta Ads, Google Ads, LinkedIn Ads, TikTok Ads, Pinterest Ads, and all other connected ad platforms.

The AI Campaign Builder agent can help design optimal campaign structures.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesCampaign name
endDateNoCampaign end date (optional)
objectiveYesCampaign objective
startDateNoCampaign start date (ISO 8601)
targetingNoTargeting configuration (platform-specific)
budgetTypeYesBudget type
adAccountIdYesAd account ID
budgetAmountYesBudget amount in account currency
Behavior3/5

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

Annotations already indicate this is a write, open-world, destructive operation. The description adds the supported platform list but does not disclose additional behavioral traits such as real-money spend, irreversibility, authentication requirements, or post-creation implications. Some context is added, but deeper behavioral disclosure is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the core purpose. The second sentence listing supported platforms is useful, but the final sentence about the AI Campaign Builder agent is tangential and does not directly aid tool invocation, keeping it from a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 8 parameters, nested targeting, and no output schema, the description gives platform breadth but omits return values, platform-specific targeting nuances, and prerequisites like authentication or account connection. It is adequate but leaves gaps for an agent to fully understand the operation's outcome.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with all parameters described. The description does not add any parameter-specific meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a new advertising campaign, with a specific verb and resource. It lists supported platforms, which distinguishes it from ad creative tools and other connect tools. This is a clear and unambiguous purpose.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool by enumerating supported platforms (Meta, Google, LinkedIn, TikTok, Pinterest, etc.), implying it is the correct tool for creating campaigns on any connected ad platform. It does not explicitly mention alternatives or exclusions, but the platform scope is clear.

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

create_ad_creativeCreate Ad CreativeC
Destructive
Inspect

Create an ad creative (image, video, carousel, or text ad).

The Creative Asset agent can help generate ad visuals and copy.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesAd body text
nameNoCreative name
adSetIdNoAd set ID (optional)
headlineYesAd headline
mediaUrlsNoMedia URLs for the creative
campaignIdYesCampaign ID
landingUrlNoLanding page URL
callToActionNoCall to action button text
creativeTypeYesCreative type
Behavior2/5

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

The description does not disclose any behavioral traits beyond what annotations already indicate (e.g., destructiveHint=true). It fails to explain side effects, permissions, or what happens when an ad creative is created.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with purpose. The second sentence about the Creative Asset agent is somewhat tangential but not overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 parameters and no output schema, this description is inadequate. It does not explain return values, how creative types map to required fields, or how the creative integrates with the campaign.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description only repeats creativeType enum values without adding extra meaning to the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates an ad creative and lists supported types (image, video, carousel, text). It is distinct from sibling tools like create_ad_campaign by resource, though it does not explicitly contrast them.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives. The mention of the Creative Asset agent is a general suggestion for help, not a conditional usage instruction.

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

create_brand_voiceCreate Brand VoiceAInspect

Create a brand voice profile to guide AI content generation.

Configurable fields: • tone: Overall tone (professional, casual, energetic, witty, etc.) • personality: Brand personality description • writingStyle: Writing style guidelines • doRules: Array of things the brand voice SHOULD do • dontRules: Array of things the brand voice should NEVER do • examplePosts: Example posts in this brand voice • approvedHashtags: Preferred hashtags to prioritize • bannedWords: Words to never use in content • keyPhrases: Key phrases to incorporate naturally

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for this brand voice profile
toneNoOverall tone (e.g., professional, casual, energetic)
doRulesNoThings the brand voice SHOULD do
dontRulesNoThings the brand voice should NEVER do
isDefaultNoSet as the default brand voice
keyPhrasesNoKey phrases to incorporate
bannedWordsNoWords to never use
personalityNoBrand personality description
examplePostsNoExample posts in this voice
writingStyleNoWriting style guidelines
approvedHashtagsNoPreferred hashtags
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true. The description adds no behavioral detail beyond the action itself, such as side effects, permissions, or overwrite behavior. It does not contradict the annotations, so a baseline score of 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear opening sentence followed by a bulleted list of configurable fields. It is somewhat long due to 11 fields, but each bullet is concise and earns its place. The front-loading of purpose is effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (11 parameters) and full schema coverage, the description covers all parameters and the overall purpose. It lacks details about the response format or side effects, but since there is no output schema, this is a minor gap. The description is otherwise comprehensive for invoking the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the description lists all fields with brief clarifications (e.g., 'approvedHashtags: Preferred hashtags to prioritize'). While this adds slight detail over the schema, it largely repeats what the schema already provides, yielding a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Create a brand voice profile') and its purpose ('to guide AI content generation'). It distinguishes itself from sibling tools like list_brand_voices and set_default_brand_voice by focusing on the creation action.

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

Usage Guidelines3/5

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

The description provides context that this tool is for creating a brand voice profile to guide AI content generation, implying when it would be used. However, it does not explicitly mention alternatives, prerequisites, or when not to use it, unlike a fully guided description.

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

create_goalCreate Product Hunt GoalA
Destructive
Inspect

Create a new maker goal on Product Hunt.

REQUIREMENTS: • Must have Product Hunt account connected • Write access requires app whitelisting by Product Hunt • Goal title limited to 280 characters

If write access is not available, you'll receive an error with instructions to request whitelisting.

ParametersJSON Schema
NameRequiredDescriptionDefault
dueAtNoOptional due date in ISO 8601 format
titleYesGoal title (max 280 characters)
Behavior4/5

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

Adds requirements and error handling details beyond the annotations: account connection prerequisite, app whitelisting for write access, and error instructions. Annotations already indicate destructive/write nature, and the description reinforces this without contradicting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact with a clear title, a requirements list, and a note about error behavior. Each line conveys essential information without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity, the description covers prerequisites, an error path, and the title limit. It does not describe the success return value, but this is less critical for a create operation and annotations already signal write behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema contains descriptions for all parameters (title with max 280, dueAt with ISO format), and the description only reiterates the title length limit. Since schema coverage is 100%, the description adds minimal extra value for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Create a new maker goal on Product Hunt' with a specific verb (create), resource (maker goal), and platform. It clearly distinguishes from siblings like complete_goal and list_goals by specifying creation of goals.

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

Usage Guidelines4/5

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

Lists prerequisites: must have Product Hunt account connected, write access requires app whitelisting, and mentions error behavior if write access is unavailable. This gives clear context on when the tool can be used, though it does not explicitly contrast with alternative goal-creating tools.

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

create_library_itemCreate Library ItemBInspect

Save content to your library as a draft, template, or evergreen content for reuse. Alias for save_to_library.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoTags for organization
textYesThe content text/caption
typeNoContent type (default: draft)
titleYesTitle for the saved content
categoryNoCategory for organization
mediaUrlNoMedia URL (image or video)
targetPlatformsNoWhich platforms this content is designed for
evergreenEnabledNoEnable evergreen auto-republishing
evergreenIntervalDaysNoDays between evergreen republishes
Behavior2/5

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

Annotations indicate this is a write (readOnly=false), non-idempotent, and world-affecting (openWorldHint=true), but the description adds no behavioral context beyond that. It doesn't disclose potential side effects such as evergreen auto-republishing or whether duplicates are created, which are relevant given idempotentHint=false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero waste. The first sentence captures the core action and types, the second clarifies the alias relationship. It is perfectly front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 9 parameters, no output schema, and global side effects indicated by annotations, the description is too brief. It doesn't mention return values, side effects, or behavior when optional fields like evergreenEnabled are set. The description is minimally viable but leaves significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters are already well-documented. The description doesn't add any param-specific meaning; it merely restates the type enum in prose. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'Save' and the resource 'content to your library', and lists the content types (draft, template, evergreen) which map to the schema enum. It also notes it's an alias for save_to_library, distinguishing it from that sibling.

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

Usage Guidelines3/5

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

The phrase 'for reuse' implies when to use the tool, but it doesn't provide explicit guidance on when to prefer this over sibling tools like save_project_content_to_library or update_library_item. The alias note is helpful but not a full usage guideline.

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

create_projectCreate ProjectBInspect

Create a Projects workspace for a product, app, or codebase.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
tagsNo
sourcesNo
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
categoryNo
descriptionNo
Behavior2/5

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

The description adds no behavioral context beyond the annotations—it doesn't mention idempotency, permissions, side effects, or error cases. Since readOnlyHint=false already signals a write operation, the description provides no additional transparency about what happens when the project is created.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no filler. It communicates the core purpose efficiently, though this brevity comes at the cost of behavioral and parameter detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With six parameters, no output schema, and sparse annotations, the description is far too minimal to inform correct usage. It omits parameter semantics, return behavior, and any context about how 'sources' or 'team_id' should be used.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 17% (only team_id has a schema description), and the tool description doesn't explain any of the six parameters, including required 'name' or the 'sources', 'tags', 'category', and 'description' fields. The agent must guess parameter semantics from names alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Create') and identifies the resource ('Projects workspace'), with a qualifier ('for a product, app, or codebase') that distinguishes it from sibling tools like create_workflow or create_goal. It clearly states what the tool does.

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

Usage Guidelines3/5

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

The description implies a use case (creating a workspace for product/app/codebase) but provides no explicit guidance on when to choose this tool over alternatives, nor any exclusions or prerequisites. It gives some context but not enough to fully direct an agent.

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

create_scheduled_reportCreate Scheduled ReportAInspect

Create a recurring analytics report that's generated and delivered automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesReport name
scheduleYesReport frequency
platformsNoPlatforms to include
reportTypeYesReport type
deliveryMethodNoHow to deliver the report
deliveryTargetNoEmail address, Slack channel, or webhook URL
Behavior3/5

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

Annotations already declare readOnly=false and destructive=false; the description adds that reports are generated and delivered automatically, which is useful context about side effects. However, it does not disclose other behavioral traits such as validation behavior, prerequisites, or failure scenarios.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single well-structured sentence that immediately states the purpose. Every word contributes meaning, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's 6 parameters, 3 enums, and no output schema, the description is minimally adequate. It does not explain what the tool returns (e.g., an ID for the created schedule) or what happens after creation, but the schema covers parameter semantics sufficiently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions provide 100% coverage of all six parameters, so the description does not need to add parameter-level detail. It provides only general context about recurrence and delivery, which goes beyond the schema but does not materially enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a recurring analytics report with automatic delivery, using a specific verb (create) and resource (scheduled report). It emphasizes 'recurring' and 'delivered automatically', which distinguishes it from one-time report tools like run_analytics_report.

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

Usage Guidelines3/5

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

The description implies when to use this tool (when a recurring, automated report is needed) but does not explicitly contrast with alternatives or state exclusions. It lacks guidance on choosing between this and run_analytics_report or scheduling workflows.

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

create_upload_sessionCreate Upload SessionAInspect

Create a browser upload link for media files. ALWAYS use this when the user shares an image or video in chat — their file is local and cannot be passed directly to publish_content.

WORKFLOW:

  1. Call this tool to get an uploadUrl

  2. Give the user the link to open in their browser and upload their file

  3. After upload, call get_upload_session to get the public media URL(s)

  4. Use the returned URL with publish_content or schedule_content

Supports up to 20 files per session. Expires in 15 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
mediaTypeNoOptional hint for expected media type

Output Schema

ParametersJSON Schema
NameRequiredDescription
filesNo
statusNo
isErrorNo
successNo
mediaUrlNo
expiresAtNo
mediaTypeNo
mediaUrlsNo
sessionIdNo
uploadUrlNo
mediaItemsNo
errorMessageNo
followUpSuggestionsNo
Behavior5/5

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

With all annotations false, the description carries the full burden. It discloses key behavioral traits: creates a browser link, user must open it to upload, supports up to 20 files, expires in 15 minutes, and the file is local. This goes well beyond the minimal annotation info and sets clear expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear opening, a numbered workflow, and key constraints (file limit, expiration). Every line adds value; the workflow steps are necessary and concise, making it easy to follow without unnecessary fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having only one optional parameter and an output schema, the description is self-sufficient: it covers the tool's purpose, exact usage scenario, step-by-step workflow, and operational limits. There's no missing information an agent would need to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single optional parameter mediaType, including an enum and description. The description doesn't add new parameter-level semantics beyond what the schema already provides, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Create a browser upload link for media files.' It clearly distinguishes itself from siblings like upload_media and get_upload_session by focusing on generating a user-facing upload URL, and it explicitly mentions the context of chat-shared images/videos.

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

Usage Guidelines5/5

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

Provides explicit when-to-use guidance: 'ALWAYS use this when the user shares an image or video in chat.' It also explains why (local file cannot be passed directly to publish_content), and maps out a full workflow including next steps (get_upload_session, publish_content/schedule_content), effectively differentiating from alternatives.

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

create_workflowCreate WorkflowAInspect

Create a new automation workflow.

Workflows consist of a trigger and a sequence of steps.

Trigger types: • manual - Run on demand • schedule - Cron-based schedule • event - Triggered by SendIt events (post published, mention detected, etc.) • webhook - Triggered by external webhook • connector_event - Triggered by connector-specific events

Step types: • connector_action - Execute a connector operation • connector_operation - Alias of connector_action • agent_invoke - Run an AI agent • condition - Conditional control step (skip subsequent steps) • delay - Wait for a duration • http_request - Outbound HTTP request • transform - Transform data between steps • notify - Send notification (email, Slack, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesWorkflow name
stepsYesWorkflow steps in execution order
activeNoActivate workflow immediately (default: false)
descriptionNoWorkflow description
triggerTypeYesTrigger type
triggerConfigYesTrigger configuration (cron expression, event type, etc.)
Behavior4/5

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

Annotations already flag readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the description doesn't need to restate those. It adds behavioral context by listing trigger/step types, but doesn't go into consequences like validation, idempotency, or error conditions. This is adequate given the annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with bullet points for trigger and step types, making it easy to scan. It is somewhat long but appropriate for a complex tool with many enum options. Every sentence adds information about workflow composition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the high-level structure but lacks operational details for constructing step configs (e.g., required fields for http_request, condition, transform) and triggerConfig formats (e.g., cron syntax, event names). Since config is a free-form object in the schema, the description should carry more of the burden, but it only provides type names. This leaves gaps for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds value by explaining the enum options for triggerType and step types (e.g., 'manual - Run on demand', 'schedule - Cron-based schedule'), going beyond the raw schema. It doesn't explain triggerConfig or step config structures in depth, but the high-level mapping helps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create a new automation workflow' and explains that workflows consist of a trigger and steps. This differentiates it from sibling tools like update_workflow, delete_workflow, and trigger_workflow.

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

Usage Guidelines4/5

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

The description provides explicit context on when to use the tool by enumerating trigger types and step types, which covers the main usage scenarios. However, it doesn't explicitly mention when NOT to use this tool or compare it with alternatives beyond the obvious create/update/delete distinction.

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

critique_postCritique PostBInspect

Score and critique post content with AI-powered suggestions. Returns a quality score (0-100), breakdown, and improvement tips.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesPost text to critique (required)
mediaUrlNoOptional media URL for media score
platformsYesTarget platforms for scoring context (required)
Behavior2/5

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

The description mentions 'AI-powered' and the return object, but the annotations indicate readOnlyHint=false, implying possible side effects. The description does not disclose whether the critique is stored, triggers other actions, or calls external APIs, creating ambiguity about the tool's state-modifying behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two focused sentences convey the purpose, method, and return value with no redundancy. The information is front-loaded and every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description covers the primary return values (score, breakdown, tips) but leaves gaps: it does not explain how platform context or mediaUrl influence the critique, nor does it mention potential side effects or errors. It is adequate but not comprehensive for an agent deciding to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all three parameters with descriptions, so the baseline is 3. The description adds context by mentioning the return score range and breakdown, but it does not explain how 'platforms' or 'mediaUrl' affect the scoring beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Score and critique') with a clear resource ('post content'), and it mentions the unique value of 'AI-powered suggestions'. It distinguishes itself from siblings like score_content by focusing on critique and improvement, though it does not name them explicitly.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as validate_content, approve_post, or edit_post. It does not state whether it is for pre-publish feedback or how it differs from approval/rejection workflows, leaving the agent without contextual decision support.

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

delete_library_itemDelete Library ItemB
Destructive
Inspect

Delete a content library item.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe content library item ID to delete
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior2/5

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

Annotations already indicate destructiveHint=true and readOnlyHint=false, so the agent knows this is a destructive write operation. However, the description adds no additional behavioral context—it does not mention permanence, required permissions, side effects, or what happens on failure. It adds no value beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no extraneous words. It is appropriately sized for a simple delete operation and gets straight to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity, good schema coverage, and presence of annotations, the description is minimally viable. It tells the agent what the tool does, but it omits any extra context like irreversibility or team-scope behavior. It is functional but not rich enough for a higher score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: both 'id' and 'team_id' have clear descriptions. The tool description adds no parameter-specific information, so it does not compensate beyond the schema. Per rubric, baseline is 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Delete') and the specific resource ('content library item'), which distinguishes it from sibling tools like delete_post or delete_workflow. It is not a tautology; it expands the tool name into a meaningful full sentence.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives, such as delete_post or update_library_item. It does not mention contexts like team scope, prerequisites, or exclusions, leaving the agent without directional cues.

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

delete_postDelete Published PostA
Destructive
Inspect

Delete a published post from a platform. Supports: X, Facebook, LinkedIn, Threads, YouTube, Pinterest, Bluesky, Mastodon, Telegram.

Provide the post ID (database ID returned when published through SendIt), the platform post ID, or the post URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
postIdYesPost identifier: database ID, platform post ID, or post URL
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
platformYesPlatform to delete from

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
messageNo
successNo
Behavior4/5

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

Annotations already indicate destructiveHint=true and readOnlyHint=false. The description adds useful behavioral context beyond that: it clarifies accepted identifier formats (database ID, platform post ID, or URL) and lists supported platforms. It doesn't contradict annotations, but it doesn't detail side effects like whether deletion is reversible or affects analytics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and to the point: the first sentence states the purpose, and the second paragraph explains the accepted identifiers. No unnecessary details or fluff, and it's front-loaded with the most important info.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (10 platforms, destructive action, 3 parameters) and the presence of an output schema, the description covers the essential elements: what it deletes, where, and how to specify the target. The team_id parameter is not mentioned in the prose, but the schema covers it, so this is adequate. A slightly higher score is prevented by not explicitly warning about the permanence of the deletion, though annotations do flag destructiveness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with detailed descriptions, so the baseline is 3. The description adds extra meaning by explaining that the postId can be a database ID returned from SendIt, a platform post ID, or a URL, which enriches the schema's brief 'Post identifier' description. This goes beyond what the schema alone provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Delete a published post') and the resource ('from a platform'), with a specific scope that distinguishes it from sibling tools like delete_scheduled_post or delete_library_item. The supported platform list further clarifies its breadth.

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

Usage Guidelines4/5

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

The description gives clear context: it's for deleting already-published posts, and mentions the database ID from SendIt, which implies this is not for scheduled posts. However, it doesn't explicitly say 'use delete_scheduled_post for scheduled items' or mention any exclusions, so it lacks explicit alternative guidance.

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

delete_scheduled_postDelete Scheduled PostA
DestructiveIdempotent
Inspect

Cancel a scheduled post before it's published.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
scheduleIdYesSchedule ID to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
messageNo
successNo
Behavior3/5

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

Annotations already disclose destructiveHint=true and idempotentHint=true, so the description does not need to restate those. It adds the timing constraint ('before it's published') as useful context. However, it does not explain what happens after deletion (e.g., irreversibility, impact on related workflows), which is acceptable given the annotations but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that is front-loaded with the action and resource. Every word adds value, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two parameters (one required), a clear output schema, and descriptive annotations, the description is sufficient. The timing constraint adds useful context, and the schema covers parameter details. It could be slightly more explicit about the state of the post after cancellation, but the overall picture is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 100% coverage with descriptive text for both parameters (team_id and scheduleId), so the description adds no extra meaning beyond what's already structured. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('cancel') and a specific resource ('scheduled post') with a clear timing qualifier ('before it's published'). This distinguishes it from sibling tools like delete_post (targets published posts) and edit_scheduled_post (modifies rather than cancels).

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

Usage Guidelines4/5

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

The description implies the tool is for scheduled posts that have not been published yet, providing clear context for when to use it. However, it does not explicitly name alternatives (e.g., edit_scheduled_post for changes, delete_post for published posts) or state when not to use it, so it falls short of the highest standard.

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

delete_workflowDelete WorkflowA
Destructive
Inspect

Delete a workflow permanently.

ParametersJSON Schema
NameRequiredDescriptionDefault
workflowIdYesWorkflow ID
Behavior3/5

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

Annotations already declare destructiveHint=true, and the description adds 'permanently' which reinforces irreversibility. However, it does not elaborate on side effects such as whether associated runs or related data are also deleted, which would be valuable for a destructive operation. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the essential action. It contains no filler or redundant information, earning its place efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 parameter, no output schema) and the presence of destructiveHint annotation, the description is minimally adequate. It might benefit from noting that deletion is permanent and cannot be undone, but 'permanently' already covers this. No major gaps for the level of complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single parameter 'workflowId' with a description. The tool description does not add any extra semantics beyond the schema, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Delete') and the resource ('a workflow') with the qualifier 'permanently' to emphasize irreversibility. It distinguishes this from sibling tools like create_workflow, update_workflow, and list_workflows.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool or when to avoid it. It does not mention alternatives, prerequisites, or consequences beyond 'permanently', which is a factual attribute rather than usage context.

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

disconnect_connectorDisconnect a ConnectorA
Destructive
Inspect

Disconnect and revoke credentials for a connector.

ParametersJSON Schema
NameRequiredDescriptionDefault
connectorIdYesConnector ID to disconnect
credentialIdNoSpecific credential ID to revoke (optional)
Behavior4/5

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

Annotations already mark destructiveHint=true, but the description adds the specific consequence that credentials are revoked, which is context beyond the annotation. It clearly states both disconnecting and revoking credentials as the behavioral outcome.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with zero wasted words. It efficiently communicates the core action and its additional credential-revocation nuance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple destructive tool with annotations and full schema coverage, the description is largely complete. It could clarify the behavior when credentialId is omitted (e.g., whether all credentials are revoked), but the core behavior is sufficiently clear for an action-oriented tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both connectorId and credentialId clearly described. The description does not add meaning beyond the schema, so the baseline of 3 applies appropriately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('disconnect') and resource ('connector') and adds 'revoke credentials' to clarify the full scope. It clearly distinguishes from sibling tools like connect_connector and execute_connector_operation.

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

Usage Guidelines3/5

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

The description implies when to use this tool (to disconnect a connector), but does not explicitly mention alternatives or when-not-to-use. Given the siblings include connect_connector and various list tools, some explicit guidance on selection would improve this dimension.

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

draft_replyDraft ReplyAInspect

Generate an AI-powered reply draft for a social mention. Returns a draft with tone and safety flags.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoReply tone: friendly, professional, casual
max_lengthNoMaximum reply length in characters (default: 280)
mention_idYesThe ID of the mention to reply to (required)
Behavior3/5

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

Annotations already indicate non-read-only, non-idempotent behavior, and the description adds that it returns a draft with tone and safety flags. No additional side effects, persistence, or safety details are disclosed, but the description does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core action and followed by the output summary. Both sentences add necessary information with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose and return value, and the schema fully documents parameters. It omits details about safety flags or persistence, but for a simple draft-generation tool, the information is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides descriptions for all three parameters (mention_id, tone, max_length), so the description adds no additional parameter meaning. Since schema coverage is 100%, the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates an AI-powered reply draft for a social mention, distinguishing it from sibling tools that actually post replies (reply_to_comment, reply_to_conversation). It also specifies the return value (draft with tone and safety flags).

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

Usage Guidelines4/5

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

The description implies appropriate use by mentioning 'social mention' and 'draft', and the tool's name reinforces this. However, it does not explicitly exclude when to use alternatives like reply_to_comment or provide comparison guidance.

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

duplicate_scheduled_postDuplicate Scheduled PostAInspect

Create a new scheduled post by duplicating an existing scheduled post. If no time is supplied, SendIt shifts it forward automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for postId.
postIdNoScheduled post ID.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
scheduleIdNoCompatibility alias for postId.
scheduledAtNoOptional ISO 8601 time for the duplicated post.
Behavior3/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, and idempotentHint=false, indicating a mutating operation with potential side effects. The description adds one behavioral trait: if no time is supplied, the post is automatically shifted forward. However, it does not explain what 'shifted forward' means (e.g., to next available slot), what fields are copied, or whether the new post requires re-approval. This adds some context but is not comprehensive given openWorldHint=true.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the main purpose, followed by a concise edge-case note. Every word earns its place; there is no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given five parameters, zero required, no output schema, and openWorldHint=true, the description is minimal. It covers the core duplication action and the auto-shift behavior, but leaves gaps: how far forward it shifts, whether all post attributes are duplicated, whether a new post ID is generated, and side effects like approval flows. The annotations cover safety (mutation, non-idempotent), so the description does not need to repeat that, but it could provide more operational context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with each parameter having a description. The description adds meaningful semantics for scheduledAt by explaining the behavior when it is omitted (auto-shift forward), which is not in the schema. It does not describe the alias relationships (id, scheduleId) but those are already covered by the schema. The description thus adds value beyond the structured fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific action: 'Create a new scheduled post by duplicating an existing scheduled post.' This clearly identifies the resource (scheduled post) and the operation (duplicate), distinguishing it from siblings like edit_scheduled_post or retry_scheduled_post. The verb and resource are unambiguous.

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

Usage Guidelines3/5

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

The description implies the use case—duplicating an existing scheduled post—but does not explicitly state when to use this tool versus alternatives (e.g., edit_scheduled_post, retry_scheduled_post, schedule_content). The note about auto-shifting when no time is supplied gives some scheduling context, but no exclusions or alternative references are provided. Usage is thus implied rather than explicitly directed.

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

edit_postEdit Published PostA
Idempotent
Inspect

Edit a published post on a supported platform. Updates the text/caption of an already published post.

SUPPORTED: YouTube (title/description/tags), LinkedIn, Facebook, Mastodon, Telegram, Bluesky NOT SUPPORTED: X, Threads, Instagram, Pinterest, TikTok

Requires the published post ID returned when the post was originally published through SendIt.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoNew tags (YouTube only)
textNoNew text/caption/commentary for the post
titleNoNew title (YouTube only)
postIdYesPublished post ID (database ID returned when the post was published)
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
descriptionNoNew description (YouTube only)
Behavior4/5

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

Annotations already declare the tool as non-read-only, idempotent, and non-destructive. The description adds useful behavioral context beyond annotations: it limits edits to text/caption (and YouTube-specific fields), lists platform constraints, and requires the published post ID from original publish via SendIt. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a clear definition, a compact supported/not-supported list, and a critical prerequisite. Every sentence earns its place without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with six heterogeneous parameters and no output schema, the description adequately covers selection context (supported platforms, published posts, post ID requirement) and points to schema details for parameter specifics. It does not explain success/failure responses, but that is not essential given annotations and the simple nature of the edit operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with clear descriptions for all six parameters. The description adds minimal parameter semantics beyond the schema, except for the platform support list that clarifies which fields apply to which platforms (e.g., 'YouTube (title/description/tags)'). This is helpful but not essential given the schema already includes 'YouTube only' notes.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Edit a published post on a supported platform' and explicitly lists supported and unsupported platforms, distinguishing it from related tools like edit_scheduled_post. It clarifies that it updates text/caption, with platform-specific fields like YouTube title/description/tags.

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

Usage Guidelines4/5

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

The description provides strong usage context by specifying it applies to published posts, requires the published post ID from original publish, and lists supported vs. unsupported platforms. It does not explicitly mention alternatives (e.g., 'use edit_scheduled_post for scheduled posts'), but the 'NOT SUPPORTED' list and requirement for a published post ID give clear when-to-use guidance.

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

edit_scheduled_postEdit Scheduled PostA
Idempotent
Inspect

Edit a pending scheduled post. Supports text, media, platform, timing, approval-scope, and publish-now updates.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for postId.
textNoUpdated post text.
postIdNoScheduled post ID.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
mediaUrlNoReplacement public HTTPS media URL, or an empty value to remove media.
timezoneNoOptional IANA timezone for the updated schedule.
mediaUrlsNoReplacement public HTTPS media URLs.
platformsNoOptional replacement platform list.
applyScopeNoWhether to apply the edit to only this post or this and future occurrences.
publishNowNoIf true, publish immediately after applying the edit.
scheduleIdNoCompatibility alias for postId.
scheduledAtNoCompatibility alias for scheduledTime.
firstCommentNoOptional replacement Instagram first comment.
scheduledTimeNoUpdated ISO 8601 scheduled publish time.
pinterestBoardIdNoOptional replacement Pinterest board ID.
Behavior4/5

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

The description adds behavioral context by listing the types of updates supported, including the non-obvious 'approval-scope' and 'publish-now' behaviors that modify scheduling and publishing flow. Annotations already mark readOnly=false and destructive=false, and the description does not contradict them; it supplements them with these update capabilities.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the primary action first, then compactly lists supported update types without waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (15 params, no output schema), the description does not explain parameter relationships or side effects, but the rich schema descriptions and annotations fill most gaps. It misses some nuance like whether partial updates are allowed, but overall it's sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% description coverage for all 15 parameters, so the baseline is 3. The description groups parameters into update categories (text, media, etc.) without adding detailed syntax or relationships, so it does not elevate the score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Edit a pending scheduled post' – a specific verb ('edit'), resource ('scheduled post'), and state ('pending'). It enumerates the supported update categories (text, media, platform, timing, approval-scope, publish-now), distinguishing it from sibling tools like edit_post or delete_scheduled_post.

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

Usage Guidelines4/5

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

The phrase 'pending scheduled post' clearly scopes the tool to only pre-publication states, implying it should not be used for published posts or for scheduling new posts. However, it does not explicitly name alternatives or state when not to use it, so it gets a 4 rather than a 5.

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

escalate_to_supportEscalate to SupportAInspect

Escalate a social conversation to a connected support platform (Zendesk, Intercom, etc.).

Creates a support ticket from the conversation context.

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNoInternal note for the support team
priorityNo
conversationIdYesConversation to escalate
targetConnectorYesSupport platform to escalate to
Behavior3/5

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

Annotations already indicate this is a mutating operation (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds that it creates a support ticket from the conversation context, providing a useful behavioral detail. However, it does not go deeper into prerequisites or side effects beyond that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no fluff. The first states the core action, and the second specifies the behavioral outcome, making it highly efficient and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple escalation action, the description is sufficient: it names the platforms, the input conversation, and the ticket creation. It does not mention preconditions like connector connectivity or return values, but the schema and annotations cover the essential details, making it reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover 3 of 4 parameters (note, conversationId, targetConnector), and the description clarifies that the escalation uses conversation context. The priority parameter lacks a description but is self-explanatory via its enum. The description adds marginal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('escalate') with a clear resource ('social conversation') and destination ('connected support platform'), and explicitly states the ticket-creation outcome. This distinguishes it from siblings like reply_to_conversation or list_conversations.

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

Usage Guidelines4/5

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

The description clearly implies the use case: when a social conversation needs to be escalated to an external support platform. It does not explicitly name alternatives or exclude other tools, but the context is clear enough given the sibling list.

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

execute_connector_operationExecute Connector OperationAInspect

Execute a specific operation on a connected connector.

Use get_connector_capabilities to discover available operations. Operations include read/write actions specific to each connector.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNoOperation-specific input data
operationYesOperation name (e.g., 'publish', 'read_posts', 'campaigns.list')
connectorIdYesConnector ID
idempotencyKeyNoIdempotency key to prevent duplicate operations (optional)
Behavior4/5

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

Annotations already indicate readOnlyHint=false and openWorldHint=true. The description adds that operations 'include read/write actions specific to each connector,' providing extra context about the tool's behavior beyond the annotations. It does not contradict annotations and gives useful information about the scope of operations, though it remains somewhat general given the open-world nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence states the core purpose, and the second provides a critical usage pointer. Every word earns its place, and the structure is front-loaded and scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's generic, open-world nature, the description succinctly covers the key usage pattern (discover via get_connector_capabilities, then execute). The schema covers parameter semantics, and no output schema exists, so return values need not be explained. It is complete enough for selecting and invoking this dynamic tool, though it could mention error-handling or validation behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage: connectorId, operation, data, and idempotencyKey are all described, including example operation names. The description adds no further parameter-specific details, but the schema already carries the full semantic load, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Execute a specific operation on a connected connector.' This identifies the verb (execute), the resource (operation on a connector), and distinguishes it from sibling tools like get_connector_capabilities (discovery) and connect_connector (connecting). The second sentence clarifies that operations are connector-specific, further aiding selection.

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

Usage Guidelines4/5

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

The description explicitly directs users to get_connector_capabilities to discover available operations, providing a clear prerequisite and alternative. It implies that this tool is for executing operations once capabilities are known, but does not explicitly state when not to use it or mention other alternatives. This is clear context with a named alternative, but lacks an explicit exclusion.

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

generate_ai_mediaGenerate AI MediaAInspect

Generate AI images or videos using approved media providers.

Supported providers:

  • heygen-mcp: HeyGen Direct API or MCP video/avatar generation

  • codex-oauth-image: Codex OAuth image generation for gpt-image-2

Returns a job ID that can be polled for status.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesCreative prompt for generation
providerYesAI media provider
media_typeNoType of media to generate (default: video)
parametersNoProvider-specific parameters (e.g. duration, resolution, style, aspectRatio)
Behavior4/5

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

The description adds valuable behavioral context beyond annotations: it reveals the asynchronous nature by stating it 'Returns a job ID that can be polled for status.' It also provides provider-specific details and implies access restrictions via 'approved media providers.' Annotations indicate a write operation and non-idempotency, which is consistent with generation; no contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well-structured: it starts with a clear purpose sentence, uses a scannable list for providers, and ends with the key return contract. Every sentence earns its place without redundant filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, providers, and return value, but the nested 'parameters' object is entirely open-ended with no examples or guidance. Since there is no output schema, the job ID return is stated, but provider-specific invocation details and error/status behavior are left implicit. This is adequate but has clear gaps for a complex generation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description enriches the provider parameter with meaningful explanations (e.g., 'HeyGen Direct API or MCP video/avatar generation' and 'Codex OAuth image generation'). It also mentions the job ID return, which clarifies what the prompt and provider parameters are used for, though it does not detail the nested parameters object.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource ('Generate AI images or videos') and clearly distinguishes this tool from siblings like generate_content or upload_media by specifying media generation and listing supported providers. It also states the return type (job ID), further clarifying its purpose.

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

Usage Guidelines3/5

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

The description implies when to use the tool—when AI-generated images or videos are needed—and lists supported providers, but it does not explicitly explain when not to use it or mention alternatives like generate_content for text or upload_media for existing media. The context is clear but exclusion/alternative guidance is missing.

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

generate_contentGenerate AI ContentA
Read-onlyIdempotent
Inspect

Generate AI-powered platform-optimized content without publishing.

Uses AI to create platform-specific text, hashtags, and titles from a prompt or media URL. Respects brand voice profiles if configured.

Returns generated content variants for each target platform. Use publish_content to publish the generated content, or publish_ai to generate and publish in one step.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptNoCreative prompt or topic for content generation
hashtagsNoHashtag mode
mediaUrlNoMedia URL to analyze for content generation
strictAiNoIf true, fail instead of using fallback templates when AI is unavailable
platformsYesTarget platforms to generate content for
generationNoGeneration parameters for tone, style, and CTA
contentOverridesNoManual overrides for generated content
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds useful behavioral context: it 'without publishing,' 'Returns generated content variants for each target platform,' and 'Respects brand voice profiles if configured.' This goes beyond the annotations, though it does not mention fallback behavior (e.g., strictAi), which is a minor gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences long, with the main purpose front-loaded in the first sentence. Each sentence adds a distinct piece of information (what it does, inputs, brand voice, outputs/alternatives), and there is no redundant or filler language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 7 parameters and no output schema, the description provides essential return-value context ('Returns generated content variants for each target platform') and workflow guidance (publishing alternatives). It does not delve into fallback templates or strictAi behavior, but those are covered in the schema. Overall, it is adequately complete for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds relational meaning by explaining 'from a prompt or media URL' (tying to prompt and mediaUrl parameters) and 'target platforms' (platforms). This clarifies how the inputs relate, which is more than just repeating schema descriptions, so a 4 is warranted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Generate AI-powered platform-optimized content without publishing,' which specifies the verb, resource, and scope. It distinguishes from sibling tools by explicitly stating that it does not publish and by naming publish_content and publish_ai as alternatives for publishing, while its focus on 'text, hashtags, and titles' differentiates it from generate_ai_media.

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

Usage Guidelines5/5

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

The last sentence gives explicit guidance: 'Use publish_content to publish the generated content, or publish_ai to generate and publish in one step.' This directly tells the agent when to use this tool (generation-only) versus alternatives. The opening 'without publishing' also reinforces the appropriate context.

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

generate_post_bundleGenerate Post BundleAInspect

Generate multi-variant AI content with quality scoring for multiple platforms. Returns the best variant plus alternatives.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesContent topic or instructions (required)
platformsYesTarget platforms (required)
generationNoGeneration parameters (tone, style, CTA)
variant_countNoNumber of variants to generate (1-5, default: 3)
Behavior3/5

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

The description adds behavioral traits beyond annotations: 'quality scoring' and 'returns the best variant plus alternatives.' However, it does not disclose whether the generated content is persisted, whether it affects system state, or any side effects. With readOnlyHint=false, the agent knows it's not read-only, but the description doesn't clarify what write behavior occurs. It offers some value but remains incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the main action ('Generate multi-variant AI content'), and contains no filler. Every word contributes meaning. It is concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has nested objects and no output schema, yet the description provides only a high-level view of the output ('Returns the best variant plus alternatives'). It does not specify the output structure, the meaning of 'best' in quality scoring, or any prerequisites. Given the absence of an output schema and sparse annotations, the description is adequate but leaves gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters like 'prompt', 'platforms', 'generation', and 'variant_count' are already documented. The tool description does not add extra meaning about how parameters interact with quality scoring or variant selection. Baseline of 3 is appropriate since the description adds no parameter-specific value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Generate multi-variant AI content with quality scoring for multiple platforms. Returns the best variant plus alternatives.' This is a specific verb+resource combination that distinguishes it from siblings like 'generate_content' (likely single variant) and 'score_content' (scoring only).

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

Usage Guidelines4/5

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

The description provides clear usage context: generating multiple variants across platforms with quality scoring and returning the best plus alternatives. It does not explicitly name alternatives or exclusion criteria, but the multi-variant and multi-platform scope implies when it should be preferred over simpler generation tools. Lacks explicit 'when not to use' guidance, so not a 5.

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

generate_project_strategyGenerate Project StrategyAInspect

Generate project-local brand voice, positioning, audience, and social content strategy.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
projectIdYes
Behavior3/5

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

Annotations already signal this is a mutating, non-destructive, open-world operation. The description adds no extra behavioral context, such as whether the strategy is saved to the project, overwrites existing data, or requires prerequisites like an existing brand voice.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that lists the key outputs without redundancy. Every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool generates a complex, multi-part strategy but has no output schema. The description does not explain what the agent should expect as a result (e.g., returned text, saved project updates, or a separate file). Sibling tools and annotations don't fill this gap either.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50% (team_id has a description, projectId does not). The description does not clarify the meaning or format of projectId beyond its name, nor does it explain how team_id is used. With incomplete schema coverage, the description should compensate but doesn't.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Generate' and names the exact deliverables (brand voice, positioning, audience, social content strategy) scoped to a project. It clearly distinguishes this from sibling tools like generate_content or create_brand_voice.

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

Usage Guidelines3/5

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

The description implies the tool is used for generating project strategy, but it provides no explicit guidance on when to choose this over alternatives like analyze_project or generate_post_bundle. No exclusions or comparison to siblings are given.

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

get_ad_performanceGet Ad PerformanceB
Read-only
Inspect

Get performance metrics for campaigns, ad sets, or creatives.

Returns impressions, clicks, spend, conversions, CTR, CPC, CPM, ROAS, and custom metrics. Supports date range filtering and breakdown by day.

ParametersJSON Schema
NameRequiredDescriptionDefault
endDateNoEnd date (YYYY-MM-DD)
metricsNoSpecific metrics to retrieve (optional, returns all by default)
entityIdYesEntity ID
breakdownNoBreakdown dimension
startDateNoStart date (YYYY-MM-DD)
entityTypeYesEntity type to get metrics for
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds value by specifying return metrics and date/breakdown support, but it does not disclose potential edge behaviors such as default date ranges, pagination, or data availability delays. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences with no filler. The first sentence front-loads the primary purpose, and the remaining sentences efficiently list return values and key options. It is appropriately sized for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 6-parameter read-only tool with full schema coverage and no output schema, the description is serviceable but not fully complete. Missing details include the 'account' entity type, default date handling when dates are omitted, and guidance on how this tool compares to other ad-reporting siblings. The description plus schema is adequate for basic invocation but leaves decision-making gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover 100% of parameters, so the baseline is 3. The description adds a list of returned metrics and mentions date range/breakdown, but it mostly echoes schema information. It also says 'breakdown by day' while the schema supports week, month, and platform, which is slightly misleading but not harmful.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('performance metrics for campaigns, ad sets, or creatives'), and lists the returned metrics. It is clear and generally distinguishes from post-level analytics, though it omits the 'account' entity type allowed by the schema and does not explicitly differentiate from get_unified_ad_report.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives like get_unified_ad_report, get_post_analytics, or get_analytics. It only describes capabilities, leaving the agent to infer context from sibling tool names rather than giving direct selection criteria.

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

get_agent_policiesGet Agent PoliciesA
Read-only
Inspect

Get the active policies/guardrails for an agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentIdYesAgent to get policies for
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the context that only 'active' policies are returned, which is a useful qualifier. However, it doesn't disclose pagination, error behavior, or return structure, which would be valuable for a complete picture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that immediately states the purpose without waste. It is front-loaded and appropriately sized for a simple retrieval tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, strong annotations, no output schema), the description adequately conveys what is returned ('active policies/guardrails'). It could benefit from specifying the return format, but for a basic getter this is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with the only parameter agentId having a description and enum values. The tool description does not add any additional parameter semantics beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Get') and resource ('active policies/guardrails for an agent'), distinguishing it from siblings like update_agent_policy and list_agents. The verb+resource structure leaves no ambiguity about the tool's function.

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

Usage Guidelines3/5

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

The description implies usage when you need to retrieve an agent's policies, but it does not explicitly state when to use this tool versus alternatives like update_agent_policy. No exclusions or alternative scenarios are mentioned, though the read-only nature is evident.

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

get_agent_runGet Agent Run DetailsB
Read-only
Inspect

Get the details and output of a specific agent run.

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdYesAgent run ID
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safe read nature is covered. The description adds that it returns 'details and output', providing some context beyond the annotations, but it does not describe the return format, error handling, or any special behavior. This is sufficient for a simple read operation but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states exactly what the tool does with no filler. Every word adds value, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple single-parameter schema and read-only annotations, the description is adequate. It covers the core return value ('details and output') and the scoping to a specific run. It could mention alternatives or more about the response, but for a simple get-by-id operation it is complete enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% because the only parameter runId is described as 'Agent run ID'. The description adds no further meaning about the parameter, such as format or where to find it, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the action ('Get') and the resource ('details and output of a specific agent run'), and the word 'specific' distinguishes it from listing tools. However, it does not explicitly name sibling tools like list_agent_runs, so it stops short of a 5.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. There is no mention of using list_agent_runs for browsing runs or get_workflow_run for run details of workflows. The description simply states what the tool does without setting usage context.

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

get_analyticsGet AnalyticsA
Read-onlyIdempotent
Inspect

Get engagement analytics for a platform. Facebook and TikTok can include account-wide posts not published through SendIt; unresolved TikTok inbox-draft deliveries may appear as placeholders until SendIt can link them.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoOptional maximum posts to return. Facebook feed scanning is capped at 1,000 posts.
endDateNoOptional end date (YYYY-MM-DD).
team_idNoTeam ID to get team analytics. If omitted, gets personal analytics.
platformYesPlatform to get analytics for
startDateNoOptional start date (YYYY-MM-DD). For Facebook, omit this to scan up to 2 years of Page feed history.

Output Schema

ParametersJSON Schema
NameRequiredDescription
isErrorNo
rawTextNo
successNo
summaryNo
warningNo
platformNo
topPostsNo
warningsNo
dateRangeNo
errorMessageNo
followUpSuggestionsNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds meaningful behavioral context: Facebook and TikTok can include account-wide posts not published through SendIt, and unresolved TikTok inbox-draft deliveries may appear as placeholders. This warns about potentially unexpected data, going beyond the safety annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long: the first states the main purpose, the second adds important caveats. There is no wasted text and the key action is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and robust annotations, the description covers the most important quirks (Facebook/TikTok account-wide posts, TikTok placeholders) that affect interpretation of results. It does not explain team vs personal analytics, but that is covered by the schema. Overall, it is sufficiently complete for a read-only analytics tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 100% coverage with descriptions for platform, limit, startDate, endDate, and team_id. The description adds no additional parameter-level meaning beyond what the schema already gives, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the core action and resource: 'Get engagement analytics for a platform.' It does not explicitly differentiate from sibling tools like get_post_analytics or get_unified_analytics, but the focus on per-platform analytics and the platform-specific caveats imply the tool's scope.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as get_post_analytics, get_unified_analytics, or list_analytics_reports. The description only mentions Facebook/TikTok behavioral caveats; it never states preferred use cases, exclusions, or relationships to other analytics tools.

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

get_anomaly_alertsGet Anomaly AlertsA
Read-only
Inspect

Get recent anomaly alerts detected across metrics.

Includes sudden drops/spikes in engagement, unusual spend patterns, and content performance outliers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 20)
severityNoFilter by severity (optional)
dismissedNoInclude dismissed alerts
Behavior3/5

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

Annotations already mark it as read-only and non-destructive. The description adds anomaly type examples but does not disclose default behavior (e.g., whether dismissed alerts are excluded by default) or return structure. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler: the first states the function, the second supplies illustrative examples. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with optional params and no output schema. The description explains the domain of alerts but is vague about 'recent', default filtering, and the exact fields returned. More details on the response format would make it more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters (limit, severity, dismissed) are fully documented in the schema. The description adds no extra parameter meaning, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves 'recent anomaly alerts detected across metrics' and gives concrete examples of alert types (engagement drops/spikes, unusual spend patterns, content performance outliers). This specific verb+resource framing distinguishes it from other get_ tools like get_analytics.

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

Usage Guidelines3/5

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

The description implies use when checking for anomalies, but it does not explicitly mention when to prefer this tool over alternatives (e.g., get_analytics) or provide when-not-to-use conditions. The context is clear but lacks explicit exclusionary guidance.

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

get_approval_commentsGet Approval CommentsA
Read-onlyIdempotent
Inspect

List approval comments for one scheduled post in team approval scope.

ParametersJSON Schema
NameRequiredDescriptionDefault
postIdNoScheduled post ID to load comments for.
post_idNoCompatibility alias for postId.
team_idYesTeam ID is required because approval comments are only available in team scope.
Behavior3/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds the team-scope constraint, which is partially redundant with the schema's team_id description. No additional behavioral traits (e.g., pagination, sorting) are disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that is front-loaded and contains no filler. Every word adds essential meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with full schema coverage and strong annotations, the description is nearly complete. It lacks explicit output structure, but the absence of an output schema makes this a minor gap rather than a correctness issue.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter is already documented. The description does not add any param-specific meaning beyond what the schema provides; it restates the team scope but no new semantic value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and identifies the exact resource ('approval comments') with clear scoping ('for one scheduled post in team approval scope'). This distinguishes it from siblings like list_pending_approvals and approve_post.

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

Usage Guidelines4/5

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

The description clearly implies when to use it: when you need approval comments for a single scheduled post within team approval scope. It does not name alternatives or exclusions, but the context is clear enough for basic selection.

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

get_attribution_reportGet Attribution ReportB
Read-only
Inspect

Generate an attribution report showing how channels contribute to conversions.

Models: • first_touch - All credit to first interaction • last_touch - All credit to last interaction • linear - Equal credit across all touchpoints • time_decay - More credit to recent touchpoints • position_based - 40% first, 40% last, 20% middle • data_driven - ML-based attribution

ParametersJSON Schema
NameRequiredDescriptionDefault
modelYesAttribution model
endDateYes
startDateYes
conversionTypeNoFilter by conversion type (optional)
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, which the description doesn't contradict. The description adds model semantics but no behavior beyond generating a report, such as return format or data aggregation details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence plus a bulleted list of models. Efficient and front-loaded, though the model definitions could be considered redundant with the enum, but they add meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple and read-only, but the description omits what the report contains, date range semantics, and any caveats about data-driven attribution. With no output schema, a little more detail on return value would help.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers model and conversionType with brief descriptions, leaving startDate/endDate undescribed. The description adds definitions for each attribution model, which is highly useful and goes beyond the schema's placeholder 'Attribution model'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates an attribution report showing channel contribution to conversions. The term 'attribution' distinguishes it from general analytics tools like get_analytics, though it doesn't explicitly name alternatives.

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

Usage Guidelines2/5

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

No guidance on when to choose this over get_analytics, get_unified_analytics, or get_benchmark_comparison. The model list is relevant but doesn't provide selection criteria or exclusions.

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

get_audit_logGet Audit LogA
Read-onlyIdempotent
Inspect

Retrieve audit log entries for your account.

Shows a timestamped trail of all actions performed: publishes, schedules, account connections, content library changes, etc.

Filter by action type, resource type, or date range.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax entries to return (default 50, max 200)
actionNoFilter by action (e.g. 'post.published', 'account.connected')
end_dateNoEnd date (YYYY-MM-DD)
start_dateNoStart date (YYYY-MM-DD)
resource_typeNoFilter by resource type (e.g. 'post', 'account', 'keyword')
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description need not repeat safety. It adds valuable behavioral context by specifying the trail includes 'publishes, schedules, account connections, content library changes, etc.' and that filtering by action/resource/date range is possible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three concise sentences with no fluff. The purpose is front-loaded, followed by examples and filter capabilities, making it easy to scan and understand.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with 5 optional parameters and no output schema, the description covers what the tool returns, what data it includes, and available filters. Annotations provide safety details, so nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so each parameter is described. The description adds meaning by grouping filters ('Filter by action type, resource type, or date range') and clarifying that the output is a timestamped trail of actions, which enriches understanding of the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description begins with 'Retrieve audit log entries for your account,' which is a specific verb+resource pair. It further explains the content ('timestamped trail of all actions performed') and lists examples, making the tool's purpose unmistakable and clearly distinct from sibling tools.

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

Usage Guidelines4/5

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

It clearly states what the tool does and the types of actions it covers, providing context for when to use it. It doesn't explicitly mention alternatives, but no sibling tool is audit-log related, so this is acceptable.

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

get_benchmark_comparisonGet Benchmark ComparisonA
Read-only
Inspect

Compare your performance against industry benchmarks.

Returns how your engagement rates, growth, and content performance compare to similar accounts in your industry.

ParametersJSON Schema
NameRequiredDescriptionDefault
metricYesMetric to compare
industryNoIndustry vertical for comparison
platformYesPlatform to benchmark
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds that the tool returns comparisons for engagement, growth, and content performance, but does not disclose additional behavioral details like data freshness or aggregation methodology. It does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary purpose, and every sentence adds value. There is no fluff or repetition of schema information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (3 parameters, no output schema), the description provides adequate context about what the tool returns. It could be strengthened by noting the output format or how the 'industry' parameter is used, but the core functionality is clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the description does not add meaningful parameter details beyond what the schema already provides. The enum for metric is self-explanatory, and the description's mention of 'engagement rates, growth' loosely maps to some enum values but does not enhance understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Compare your performance against industry benchmarks') with a defined resource (performance metrics) and scope (engagement rates, growth, content performance). It distinguishes itself from sibling analytics tools by emphasizing comparative benchmarking rather than raw analytics.

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

Usage Guidelines4/5

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

The description implies usage when users want to benchmark against industry peers, which is clear context. It does not explicitly name alternatives or exclusions, but the unique focus on 'industry benchmarks' differentiates it from sibling tools like get_analytics or get_post_analytics.

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

get_best_timesGet Best Times to PostA
Read-onlyIdempotent
Inspect

Get the optimal posting times for a platform based on your historical engagement data.

Returns top time slots ranked by engagement score. Falls back to industry defaults when insufficient personal data exists.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of time slots to return (default 5, max 20)
platformYesPlatform to get best times for
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows it's a safe read. The description adds valuable context: it returns top time slots ranked by engagement score and falls back to industry defaults when insufficient personal data exists. This goes beyond the annotations and clarifies expected behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is exceptionally concise, only two sentences, and front-loads the main purpose in the first sentence. The second sentence adds necessary detail about output ranking and fallback. Every word earns its place, with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with two well-described parameters and no output schema, the description covers the essential aspects: what the tool returns, the basis (engagement data), and the fallback behavior. It is sufficiently complete given the tool's low complexity and strong annotations, though it could mention the time slot format for extra clarity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with both platform and limit described in the input schema. The description adds no additional parameter-level detail beyond the schema, so a baseline score of 3 is appropriate. It does mention engagement data and fallback behavior, which indirectly relates to platform, but doesn't enrich parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: to get optimal posting times for a platform based on historical engagement data. It uses a specific verb (get) and resource (optimal posting times), and the title reinforces the purpose. It distinguishes itself from general analytics and scheduling tools by focusing on best times.

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

Usage Guidelines3/5

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

The description implies the tool is for when you need optimal posting times based on engagement data, and mentions fallback to industry defaults. However, it does not explicitly contrast with sibling tools like 'suggest_next_schedule_time' or 'suggest_queue_slots', so the guidance remains implied rather than explicit.

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

get_calendar_gapsGet Calendar GapsA
Read-onlyIdempotent
Inspect

Detect open days in the publishing calendar and return gap metadata for planning.

ParametersJSON Schema
NameRequiredDescriptionDefault
endYesRange end date in YYYY-MM-DD format.
startYesRange start date in YYYY-MM-DD format.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
platformsNoOptional platform subset to inspect.
Behavior3/5

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

Annotations already disclose readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the concept of 'open days' and 'gap metadata' but does not explain how gaps are computed, whether team context affects results, or what the returned metadata structure looks like. It adds some value beyond annotations but not substantial behavioral depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly worded sentence that front-loads the core action ('Detect open days') and immediately clarifies the output ('gap metadata'). Every word contributes to the tool's purpose, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should ideally clarify what 'gap metadata' includes or how open days are determined. The annotations mitigate safety concerns, and the schema covers inputs, but the absence of return-value detail and algorithm behavior leaves the agent with only a partial picture for a planning-oriented tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% parameter coverage with descriptions for start, end, team_id, and platforms. The description does not reference any parameters or add meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Detect') with a clear resource ('open days in the publishing calendar') and states the result ('return gap metadata for planning'). This clearly differentiates it from sibling tools like get_best_times or get_calendar_recommendations, which focus on optimization rather than gap detection.

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

Usage Guidelines3/5

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

The phrase 'for planning' implies a use case, but the description gives no explicit guidance on when to choose this over alternative tools such as get_calendar_recommendations, suggest_next_schedule_time, or get_best_times. It neither names alternatives nor provides exclusions, so usage context is only implied.

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

get_calendar_recommendationsGet Calendar RecommendationsB
Read-onlyIdempotent
Inspect

Return top recommended recurring posting slots from historical performance data.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
timezoneNoOptional IANA timezone for the recommendation labels.
platformsNoOptional platform subset to optimize for.
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe read operation. The description adds context about using historical performance data, but it does not disclose output format, limits, or other behavioral details beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that front-loads the primary action and outcome. It contains no redundant information and is easy to read.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With strong annotations and fully documented schema parameters, the description is adequate for a simple read-only recommendation tool. It does not elaborate on return structure or methodology, but the functional statement is sufficient for basic usage. Slight gap in explaining what 'recurring posting slots' means in detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, meaning all three parameters (team_id, timezone, platforms) have descriptions already. The tool description adds nothing beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Return' and names the resource 'top recommended recurring posting slots' derived from 'historical performance data.' This clearly indicates the tool's function and suggests a distinct focus on recurring slots compared to siblings like get_best_times, though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as get_best_times or suggest_next_schedule_time. There is no mention of appropriate contexts, exclusions, or when another tool might be preferable.

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

get_connector_capabilitiesGet Connector CapabilitiesA
Read-only
Inspect

Get detailed capabilities and operations for a specific connector.

Returns supported operations, auth requirements, rate limits, and constraints.

ParametersJSON Schema
NameRequiredDescriptionDefault
connectorIdYesConnector ID (e.g., 'linkedin', 'meta_ads', 'slack')
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds valuable context about the return content ('supported operations, auth requirements, rate limits, and constraints'), which goes beyond the annotations and gives the agent a sense of what to expect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, front-loaded with the primary purpose, and contains no redundant words. It is efficiently structured and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by explicitly listing the types of information returned. It covers the key aspects of what the tool does and returns, making it complete for a simple read-only tool with a single parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides a clear description of the connectorId parameter with examples ('linkedin', 'meta_ads', 'slack'). The description does not add additional parameter semantics beyond what the schema covers, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Get detailed capabilities and operations for a specific connector.' The verb 'Get' is specific, the resource is 'capabilities and operations for a specific connector,' and it distinguishes itself from sibling tools like list_connectors (which lists all connectors) and get_connector_health (which checks health status).

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

Usage Guidelines4/5

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

The description provides clear context: it is used when you need detailed capabilities for a specific connector, implying you already have a connector ID. However, it does not explicitly compare with alternatives like list_connectors or mention when not to use it, so it falls slightly short of a perfect score.

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

get_connector_healthGet Connector HealthA
Read-only
Inspect

Get health status and SLO metrics for a connector.

ParametersJSON Schema
NameRequiredDescriptionDefault
connectorIdYesConnector ID
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description is not burdened with those disclosures. It adds the context of returning SLO metrics, but does not elaborate on potential caveats like data freshness, rate limits, or error cases. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that clearly states the tool's purpose. Every word earns its place; there is no redundancy or filler. This is exemplary conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one parameter and no output schema, the description sufficiently covers its function and output. It mentions both health status and SLO metrics, which gives the agent a clear expectation. It could be more complete by noting the response format, but given the simplicity, it is nearly comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully describes the single parameter connectorId (100% coverage), so the description does not need to add parameter details. The description adds no extra semantic meaning beyond what the schema provides, resulting in the baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves health status and SLO metrics for a connector, using a specific verb (Get) and resource (connector health). It distinguishes itself from sibling tools like get_connector_capabilities or list_connectors by focusing on health and SLO metrics specifically.

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

Usage Guidelines3/5

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

The description implies usage when you need a connector's health status, but it does not explicitly state when to use this over alternatives or exclude cases. No guidance is given on alternatives, prerequisites, or context, making it adequate but not explicit.

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

get_conversationGet ConversationA
Read-only
Inspect

Get full conversation thread with all messages.

ParametersJSON Schema
NameRequiredDescriptionDefault
conversationIdYesConversation ID
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds scope ('full thread') but no additional behavioral details like ordering, pagination, or error handling. With annotations covering the safety profile, this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no unnecessary words. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple get-by-id tool with one parameter, clear annotations, and no output schema, the description adequately conveys what the agent gets: the full conversation thread with all messages. Nothing important is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the only parameter, conversationId, is a simple string with a description. The tool description does not add additional meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Get) and resource (full conversation thread with all messages), distinguishing it from sibling tools like list_conversations which lists conversations rather than retrieving a single thread.

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

Usage Guidelines3/5

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

No explicit when-to-use guidance or alternatives are provided. The description implies use for retrieving messages of a specific conversation, but does not name alternatives like list_conversations or reply_to_conversation.

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

get_inbox_summaryGet Inbox SummaryA
Read-only
Inspect

Get a summary of the unified inbox: total conversations, unread count, sentiment breakdown, and response time metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault
timeRangeNoTime range for summary metrics
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering safety. The description adds valuable context beyond this by specifying exactly which metrics are included in the summary (total conversations, unread count, sentiment breakdown, response time metrics). This clarifies the tool's behavioral output without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of about 17 words, front-loaded with the core action 'Get a summary of the unified inbox'. It efficiently communicates the purpose and output components without any wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one optional parameter and no output schema, the description lists the key components of the summary but omits important context such as the default value for timeRange when the parameter is not provided. Since the schema does not specify a default, this ambiguity leaves the description slightly incomplete for an agent deciding whether to pass the parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 1 parameter with 100% description coverage, and the schema already describes 'timeRange' as a time range for summary metrics with enum values (24h, 7d, 30d). The description adds no additional meaning about this parameter, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get a summary of the unified inbox' with specific metrics listed (total conversations, unread count, sentiment breakdown, response time metrics). It uses a specific verb and resource, making it distinct from sibling tools like list_inbox or get_conversation, though it does not explicitly mention alternatives.

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

Usage Guidelines3/5

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

The description implies usage context: when you need a high-level summary of inbox metrics. However, it does not explicitly state when to use this tool over alternatives, nor does it provide any exclusions or prerequisites. The usage guidance is only implicit.

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

get_library_itemGet Library ItemA
Read-onlyIdempotent
Inspect

Get a specific content library item by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe content library item ID
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds no further behavioral details such as return format, error handling, or pagination. It meets the baseline for a read operation but does not enrich beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the verb and resource, and it contains no filler or redundant phrasing. Every word contributes to the meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, single-item read tool, the description plus the comprehensive schema and annotations cover the essential aspects. The lack of output schema and return-value description is mitigated by the simplicity of the operation and the clarity of 'content library item'. Some detail about what fields are returned would be useful, but the gap is minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter including a description. The tool description's 'by ID' repeats the id parameter schema and adds no new semantic meaning; the team_id scope is already documented in the schema. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get a specific content library item by ID' uses a clear verb (Get), identifies the resource (content library item), and specifies the lookup key (ID). It clearly distinguishes the tool from listing (list_library) and mutating siblings (create/update/delete_library_item).

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

Usage Guidelines4/5

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

The description implies targeted retrieval by ID, and the team_id parameter explicitly instructs to use list_teams to obtain team IDs. However, it does not explicitly state when to prefer this over list_library or other alternatives, so it falls short of full alternative guidance.

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

get_platform_requirementsGet Platform RequirementsA
Read-onlyIdempotent
Inspect

Get detailed content requirements for a platform.

Returns: Character limits, media specifications, rate limits, and special notes.

Call this when you need specifics like exact character counts, file size limits, or supported formats. The publish_content description has a quick reference, but this tool provides complete details.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformYesPlatform to get requirements for

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameNo
platformNo
textLimitNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds no additional behavioral traits beyond listing return content types, which are likely already covered by the output schema. There is no mention of side effects, data freshness, or any quirks. It meets the baseline but does not go beyond.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences long, front-loaded with the purpose, then return categories, then usage guidance. Every sentence adds value without unnecessary fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, output schema present), the description is complete. It tells what the tool returns, when to use it, and provides a pointer to an alternative. The output schema covers the return structure, so no further detail is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 100% coverage for the single parameter with a clear enum and description ('Platform to get requirements for'). The tool description does not add any extra meaning to the parameter beyond the schema, but the schema already handles it well, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves detailed content requirements for a platform, listing specific categories such as character limits, media specifications, rate limits, and special notes. It uses a specific verb and resource, making the purpose unmistakable. It also implicitly distinguishes from publish_content by noting that tool only has a quick reference.

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

Usage Guidelines5/5

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

The description explicitly instructs when to call the tool ('when you need specifics like exact character counts, file size limits, or supported formats') and mentions an alternative (publish_content) that has a quicker but less complete reference. This provides clear usage context and exclusion.

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

get_platform_settings_schemaGet Platform Settings SchemaA
Read-onlyIdempotent
Inspect

Get the JSON schema contract for content.platformSettings., including platform-specific publish options, validation-only gates, and supported per-platform content overrides.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformYesPlatform ID to inspect
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is known. The description adds what the schema includes, but it doesn't reveal any additional behavioral traits (e.g., error behavior, permissions). With annotations covering the key aspects, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that leads with the verb and resource, followed by relevant details. Every phrase adds value without redundancy, making it concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with one param and no output schema. The description clearly specifies the return value (a JSON schema contract) and its key contents, making it complete for an agent to understand the tool's purpose and output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'platform' has 100% schema description coverage with a clear description ('Platform ID to inspect') and an enum. The description doesn't add further parameter semantics, but the schema is sufficient, justifying the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the resource ('JSON schema contract for content.platformSettings.<platformId>'), and lists specific contents (publish options, validation-only gates, content overrides). This distinguishes it from sibling tools like get_platform_requirements or validate_content.

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

Usage Guidelines4/5

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

The description gives clear context for when to use the tool (inspecting the platform settings schema) but does not explicitly mention alternatives or exclusions. It is inferred rather than stated, so it falls short of a 5.

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

get_post_analyticsGet Post AnalyticsA
Read-only
Inspect

Fetch drilldown analytics for one published post, including per-snapshot metrics and campaign context.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for postId.
postIdNoPublished post ID to inspect.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
publishedPostIdNoCompatibility alias for postId.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows it's safe. The description adds domain context about the output (per-snapshot metrics, campaign context) and scope (single published post), which is meaningful behavioral detail beyond what annotations state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, information-dense sentence with no fluff. Key facts (drilldown, one post, per-snapshot, campaign context) are front-loaded efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool is a simple read-only fetch, the description covers the essential purpose, scope, and output contents. Absence of an output schema is partially mitigated by describing what analytics include. It does not mention potential errors or pagination, but that is acceptable for this simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters are already documented. The description adds no extra meaning beyond the schema. The distinction between postId and aliases is clear from schema, so the description does not need to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (fetch), the resource (drilldown analytics for one published post), and specific content (per-snapshot metrics and campaign context). It distinguishes itself from sibling analytics tools by focusing on a single post's drilldown rather than aggregate or ad-focused analytics.

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

Usage Guidelines3/5

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

The description implies when to use the tool (when you need detailed per-post analytics) but does not explicitly name alternatives or say when not to use it. With many get_* analytics siblings, explicit differentiation from aggregate or unified analytics would strengthen this.

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

get_producthunt_analyticsGet Product Hunt AnalyticsA
Read-onlyIdempotent
Inspect

Get analytics for your products on Product Hunt.

Returns: • Total products, votes, comments, reviews • Number of featured products • Per-product metrics including vote counts and ratings

Works with read-only access (no whitelisting required).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum products to fetch (default 20)
usernameNoProduct Hunt username (optional, defaults to connected account)
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds extra context ("no whitelisting required") and details the return values, going beyond annotations without contradicting them. This adds useful behavioral information.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, uses a clear bullet list for return values, and includes a short access note. Every sentence earns its place, and there is no wasted or redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with two optional parameters, the description fully explains its purpose, return values, and access requirements. Without an output schema, the return list is especially helpful and complete for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters (limit, username) are fully documented in the schema with descriptions and defaults, giving 100% schema coverage. The description does not add any parameter-specific semantics, so it does not go beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool gets analytics for products on Product Hunt, using a specific verb and resource. It also lists the types of metrics returned (votes, comments, reviews, featured products, per-product metrics), which distinguishes it from generic analytics tools in the sibling list.

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

Usage Guidelines4/5

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

The description implies use when Product Hunt analytics are needed, and the resource context is clear ("your products on Product Hunt"). However, it does not explicitly mention alternatives or when not to use this tool, though the specific Product Hunt scope provides enough context.

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

get_project_analysisGet Project AnalysisA
Read-only
Inspect

Fetch stored project analysis, strategy, recent generations, and activity.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
projectIdYes
Behavior4/5

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

The annotations already declare readOnlyHint=true and destructiveHint=false, and the description's 'Fetch' is consistent. It adds the data categories returned (analysis, strategy, recent generations, activity), which is useful context beyond the annotations, but it doesn't discuss pagination or absence-of-data behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence with the verb front-loaded. Every word contributes to specifying the tool's scope, with no redundant phrasing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool without an output schema, the description sufficiently lists the data categories returned. However, it omits any note about pagination or what happens when no stored analysis exists, and the parameter semantics gap isn't addressed, but overall this is reasonably complete for the complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50%: team_id is described but projectId is not. The description itself provides no parameter clarification, leaving projectId's semantics entirely to its name. For a low-coverage schema, the description should compensate but doesn't.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Fetch' and names the resources: 'stored project analysis, strategy, recent generations, and activity.' This clearly distinguishes it from sibling tools like analyze_project and generate_project_strategy, making the purpose unambiguous.

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

Usage Guidelines4/5

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

The word 'stored' signals that this tool retrieves previously computed data, implying it should be used when an analysis already exists. However, it does not explicitly mention alternatives like analyze_project or provide when-not-to-use guidance, so it's clear but not fully explicit.

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

get_scheduled_postGet Scheduled PostA
Read-onlyIdempotent
Inspect

Fetch one scheduled post with approval, recurrence, retry, and published-link metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for postId.
postIdNoScheduled post ID.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
scheduleIdNoCompatibility alias for postId.
Behavior3/5

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

Annotations already declare this tool as read-only, idempotent, and non-destructive. The description adds the scope of returned metadata but does not disclose error behavior, required permissions, or what happens if the post is not found. It offers some additional context beyond annotations, but not rich 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It states the action, the resource, and the key metadata dimensions clearly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple fetch tool, the description gives a high-level return summary but fails to mention that at least one identifier (id, postId, or scheduleId) is required, despite the schema marking all as optional. It also relies on the metadata categories to imply return structure, which is partially helpful but incomplete given the absence of an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for all four parameters, including clear descriptions and alias relationships. The tool description adds no parameter-specific information, but the schema already handles this well, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the verb 'Fetch' and clearly states the resource: one scheduled post. It also enumerates the metadata categories (approval, recurrence, retry, published-link), and the singular 'one' differentiates it from the plural sibling get_scheduled_posts.

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

Usage Guidelines3/5

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

The description implies usage for retrieving a single scheduled post, but it does not explicitly contrast with get_scheduled_posts or mention when to use this tool instead of edit/delete/retry siblings. No alternative tools are named, leaving usage context implicit.

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

get_scheduled_postsGet Scheduled PostsA
Read-onlyIdempotent
Inspect

List scheduled posts and their current status, including pending, publishing, TikTok draft-delivered, published, failed, or cancelled posts.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoOptional forward-compatible maximum number of scheduled posts to return.
cursorNoOptional forward-compatible pagination cursor from a previous scheduled-post listing response.
statusNoOptional forward-compatible status filter. Legacy handlers may continue returning pending posts only.
endDateNoOptional forward-compatible upper date bound in YYYY-MM-DD format.
team_idNoTeam ID to list team's scheduled posts. If omitted, lists personal posts.
platformNoFilter by platform (optional)
upcomingNoOptional forward-compatible flag to prefer upcoming scheduled posts.
startDateNoOptional forward-compatible lower date bound in YYYY-MM-DD format.

Output Schema

ParametersJSON Schema
NameRequiredDescription
postsNo
isErrorNo
successNo
postCountNo
schedulesNo
errorMessageNo
followUpSuggestionsNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds a useful status list including 'TikTok draft-delivered', but does not mention pagination, team scope, or legacy handler caveats mentioned in the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence effectively communicates the core purpose and status coverage without redundant filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 8 optional parameters and an output schema, the description is minimal. It correctly identifies the core listing action but fails to signal important context like team_id, date-range filtering, platform filters, or pagination. These are documented in the schema, so the description is adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and every parameter already has a detailed description and enums. The tool description adds no additional parameter semantics beyond restating the status enum, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool 'List scheduled posts' and enumerates the statuses it covers (pending, publishing, TikTok draft-delivered, published, failed, or cancelled). This specific verb+resource combination distinguishes it from singular get_scheduled_post and other post-management tools.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus siblings like get_scheduled_post, schedule_content, or list_calendar_events. The description gives no exclusions, alternative references, or contextual prerequisites.

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

get_tiktok_creator_infoGet TikTok Creator InfoA
Read-onlyIdempotent
Inspect

Fetch fresh TikTok Content Posting API creator info for the connected account. Use this before rendering TikTok publish settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to fetch the team TikTok account. If omitted, uses the personal TikTok account.
Behavior4/5

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

Annotations already mark this as read-only and idempotent. The description adds useful behavioral context: it fetches 'fresh' data from the Content Posting API, indicating a live network call rather than cached data. It does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the action and resource, followed by a usage hint. No filler or redundant phrasing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-param read tool, the description is complete: it states what it fetches, for whom, and when to use it. Since there's no output schema, it could elaborate on the returned creator info fields, but the title and description are sufficiently clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the only param (team_id) is already well-documented. The description does not add extra parameter semantics, which is acceptable given the schema's clarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Fetch') and resource ('TikTok Content Posting API creator info for the connected account'), which clearly distinguishes it from other TikTok-related tools like connect_tiktok. The mention of 'fresh' adds a data-freshness qualifier.

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

Usage Guidelines4/5

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

It gives explicit guidance: 'Use this before rendering TikTok publish settings.' This is a clear when-to-use instruction, though it doesn't mention exclusions or alternatives. Still, it provides actionable context for an agent.

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

get_unified_ad_reportGet Unified Ad ReportA
Read-only
Inspect

Get a cross-platform advertising performance report.

Aggregates metrics across all connected ad platforms into a single view. Useful for comparing performance across Meta, Google, LinkedIn, TikTok, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
endDateYesEnd date
groupByNoGroup results by dimension
startDateYesStart date
Behavior3/5

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

Annotations already declare read-only/destructive hints. The description adds the aggregation behavior and multi-platform scope, but does not disclose return structure, metric definitions, or potential latency. Given annotations, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with purpose, and contains no filler. Every sentence contributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description would benefit from listing what metrics are included (e.g., impressions, clicks, spend) and clarifying grouping behavior. Without an output schema, the agent may not know what to expect. However, for a read-only report with clear scope, it's passable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have schema descriptions covering 100%, so the baseline is 3. The description does not add any parameter-specific guidance beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Get') and resource ('cross-platform advertising performance report'), and the aggregation detail distinguishes it from single-platform siblings like get_ad_performance.

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

Usage Guidelines4/5

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

It provides usage context ('useful for comparing performance across Meta, Google, LinkedIn, TikTok'), which implies a cross-platform comparison use case, but stops short of explicitly naming excluded scenarios or alternatives.

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

get_unified_analyticsGet Unified AnalyticsA
Read-only
Inspect

Get cross-platform analytics combining organic and paid performance.

Aggregates metrics across all connected platforms into a single view. Supports time-series breakdowns and platform comparison.

ParametersJSON Schema
NameRequiredDescriptionDefault
endDateYesEnd date (YYYY-MM-DD)
breakdownNoBreakdown dimension
platformsNoFilter to specific platforms (optional, all if omitted)
startDateYesStart date (YYYY-MM-DD)
includePaidNoInclude paid metrics (default true)
includeOrganicNoInclude organic metrics (default true)
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds behavioral context about aggregating metrics across platforms and supporting breakdowns, but it does not disclose return format, data freshness, or platform coverage details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three short sentences with no filler. It front-loads the core purpose in the first sentence and keeps additional details concise, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a moderate-complexity analytics tool with no output schema, the description explains the core aggregation function but lacks details about response structure, data refresh behavior, or differentiation from sibling analytics tools. It is adequate but not rich enough to fully orient the agent without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 6 parameters have schema descriptions (100% coverage), so the schema carries the parameter documentation. The description's mention of time-series breakdowns and platform comparison weakly maps to the breakdown and platforms parameters, but it adds no new semantic detail beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets cross-platform analytics combining organic and paid performance. It uses a specific verb ('Get') and resource ('unified analytics'), and distinguishes itself from single-platform analytics tools by emphasizing aggregation across all connected platforms.

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

Usage Guidelines3/5

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

The description implies use when a cross-platform overview is needed, but it does not explicitly say when to use this tool versus alternatives like get_analytics or get_unified_ad_report. No exclusions or alternative tool names are mentioned, leaving the agent to infer the appropriate context.

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

get_upload_sessionGet Upload SessionA
Read-onlyIdempotent
Inspect

Check the status of an upload session and get the media URL(s) once uploaded.

Call this after the user clicks the upload link to see if they've completed the upload.

Returns: • status: 'pending' - User hasn't uploaded yet • status: 'uploaded' - Upload complete, includes mediaUrl, mediaUrls, fileCount, mediaItems • status: 'expired' - Session expired (15 min limit)

ParametersJSON Schema
NameRequiredDescriptionDefault
sessionIdYesThe session ID returned from create_upload_session

Output Schema

ParametersJSON Schema
NameRequiredDescription
filesNo
statusNo
isErrorNo
successNo
mediaUrlNo
expiresAtNo
mediaTypeNo
mediaUrlsNo
sessionIdNo
uploadUrlNo
mediaItemsNo
errorMessageNo
followUpSuggestionsNo
Behavior5/5

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

The annotations already declare readOnlyHint=true and idempotentHint=true, so the read-only behavior is known. The description adds valuable behavioral context by detailing the three possible statuses (pending, uploaded, expired) and the 15-minute session expiry limit. This goes beyond what annotations provide and helps the agent understand polling behavior and expected return states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well-structured. It opens with a one-sentence purpose, follows with a single usage instruction, and then uses a concise bullet list for return states. Every sentence adds value, and there is no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter polling tool with an output schema (which likely details the return structure), the description provides sufficient context: it explains the main status states, the expiry limit, and when to call it. The combination of the description, annotations, and schema fully equips the agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage: the single parameter 'sessionId' is described as 'The session ID returned from create_upload_session.' The description does not add any semantic meaning beyond the schema, so the baseline score of 3 is appropriate because the schema carries the full burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Check the status of an upload session and get the media URL(s) once uploaded.' This clearly defines the tool's function and distinguishes it from sibling tools like create_upload_session, which creates the session, and check_ai_media_status, which likely handles AI media statuses. The purpose is unambiguous and specific.

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

Usage Guidelines4/5

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

The description provides explicit timing guidance: 'Call this after the user clicks the upload link to see if they've completed the upload.' This clearly indicates when to use the tool and implies the preceding creation step. However, it does not explicitly name alternatives or explain when not to use it, so it falls just short of a perfect score.

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

get_workflow_runGet Workflow Run DetailsA
Read-only
Inspect

Get detailed step-by-step execution log for a workflow run.

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdYesWorkflow run ID
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds that the tool returns a 'detailed step-by-step execution log,' which is useful but does not disclose any additional behavioral aspects such as pagination, rate limits, or authentication requirements. This matches the baseline for annotations-provided safety.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no redundant wording. It immediately states the core function and adds no filler, earning full marks for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with one well-documented parameter and no output schema, the description is complete. It conveys the primary return value (step-by-step execution log) and benefits from the annotations and schema richness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with runId described as 'Workflow run ID,' and the description does not add further meaning beyond that. The baseline of 3 applies because the schema fully documents the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Get') and resource ('detailed step-by-step execution log for a workflow run'), making it distinct from sibling tools like list_workflow_runs (which lists runs) and get_workflow (which gets workflow configuration).

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

Usage Guidelines3/5

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

The description implies usage when needing execution details for a specific run, but provides no explicit when-to-use vs alternatives or exclusions. It does not mention that list_workflow_runs should be used to discover run IDs or that get_agent_run is for agent runs, leaving usage context only implicit.

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

import_project_sourceImport Project SourceCInspect

Import GitHub, app-store, website, file, or media source context into a project.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourcesYes
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
projectIdYes
Behavior2/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, but the description does not elaborate on side effects such as whether importing adds to or replaces existing project context, network dependencies, failure modes, or whether authentication is required. The openWorldHint annotation is also unexplained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundancy. It is appropriately concise for what it conveys, though it may be too terse given the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complex polymorphic 'sources' parameter, the absence of an output schema, and limited annotation detail, the description is incomplete. It lacks parameter formats, return behavior, and edge-case considerations, making it insufficient for reliable invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33% (only team_id is documented). The description lists source types but does not clarify whether the 'sources' parameter accepts URLs, file paths, or object structures, nor does it elaborate on projectId. It provides some value but fails to compensate for the low coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Import') and the resource ('source context into a project'), and enumerates supported source types (GitHub, app-store, website, file, media). It distinguishes from siblings like analyze_project or upload_media, though it does not 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.

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives, nor any exclusions or prerequisites. The description merely restates the function without contextualizing it within the broader workflow or explaining when it is preferable to other tools.

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

invoke_agentInvoke AI AgentAInspect

Invoke a specific AI agent with given inputs.

The agent will execute within policy constraints and return structured output. All agent runs are logged for audit and traceability.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesAgent-specific input parameters
agentIdYesAgent to invoke
contextNoAdditional context (brand voice ID, date range, etc.)
Behavior4/5

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

Annotations indicate the tool is not read-only, not destructive, and open-world, but the description adds valuable context: the agent executes under policy constraints and returns structured output. It also discloses that all runs are logged for audit and traceability. This goes beyond annotations without contradicting them, though it stops short of describing possible 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences with front-loaded purpose and no redundant words. Each sentence contributes: invocation, behavior, and logging. It is concise and appropriately structured for an agent-invocation tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (12 agents, nested input objects, no output schema), the description covers essential context: policy constraints, structured output, and audit logging. It does not detail how to select an agent or what output to expect, but the schema enumerates agent IDs, and 'structured output' is a reasonable generic promise. The absence of agent-specific behavioral details is a minor gap, not a critical one.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides 100% coverage with descriptions for every parameter: agentId, input, and context. The description offers no additional parameter-specific meaning, so it stays at the baseline of 3. The phrase 'given inputs' adds nothing beyond the schema's 'Agent-specific input parameters.'

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Invoke a specific AI agent with given inputs.' It clearly distinguishes this from sibling tools like list_agents and get_agent_run, which are about listing or retrieving rather than executing. The mention of execution within policy constraints and structured output further clarifies the action.

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

Usage Guidelines3/5

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

The description implies the tool is for invoking an agent but provides no explicit when-to-use guidance or alternatives. It does not mention that list_agents could be used to discover available agent IDs or get_agent_run to fetch results, so usage context is only implicit from the tool name and schema.

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

list_ad_accountsList Ad AccountsA
Read-only
Inspect

List all connected advertising accounts across platforms. Returns ad accounts from Meta Ads, Google Ads, LinkedIn Ads, TikTok Ads, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoFilter by ad platform (e.g., 'meta_ads', 'google_ads_search')
Behavior4/5

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

The description adds behavioral context beyond the readOnlyHint annotation by specifying that it returns ad accounts from Meta Ads, Google Ads, LinkedIn Ads, TikTok Ads, etc. It does not contradict annotations and provides useful details about the data content.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the main purpose, and each sentence adds a piece of information (scope and platform examples). It is appropriately concise with no redundant fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with one optional parameter and no output schema, the description adequately conveys the purpose and expected data (ad accounts from various platforms). It doesn't mention pagination or edge cases, but the tool's simplicity and schema coverage make this acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully describes the optional 'platform' parameter with an example, achieving 100% schema coverage. The description adds no additional parameter-specific meaning, so it relies on the schema, which is sufficient for the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all connected advertising accounts across platforms, with a specific verb ('List') and resource ('advertising accounts'). It distinguishes from sibling tools like list_connected_accounts by its advertising-specific focus, and the second sentence clarifies supported platforms.

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

Usage Guidelines3/5

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

The description implies when to use it (when you need ad accounts) but does not explicitly state when to use this over alternatives like list_connected_accounts or list_ad_campaigns, nor does it provide exclusions or prerequisites.

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

list_ad_campaignsList Ad CampaignsA
Read-only
Inspect

List campaigns for an ad account with status and performance summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoFilter by status
adAccountIdYesAd account ID
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, establishing the safety profile. The description adds behavioral context by specifying that the response includes status and performance summary, providing useful information beyond the annotations and without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the verb and resource. Every word contributes meaning, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one required parameter and no output schema, the description adequately conveys the high-level return content (status and performance summary). It lacks detailed output structure or pagination notes, but the tool's simplicity makes this sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with clear descriptions for adAccountId and status (including an enum). The description does not add significant parameter-level details beyond what the schema already provides, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists campaigns for an ad account, using the specific verb 'List' with the resource 'campaigns' and scope 'for an ad account'. Adding 'with status and performance summary' distinguishes it from other list tools and performance-specific tools.

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

Usage Guidelines4/5

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

The description provides clear context by specifying that the tool is used to list campaigns for an ad account. It does not mention alternatives or exclusions, but for a straightforward list operation the use case is clear, warranting a 4.

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

list_agent_runsList Agent RunsA
Read-only
Inspect

List recent agent runs with status and summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results to return (default 20)
statusNoFilter by status (optional)
agentIdNoFilter by agent (optional)
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds the trait 'recent', implying time-ordering, but gives no detail about pagination or default time window, so behavioral disclosure beyond annotations is limited.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded with the verb and object, with no wasted words. It is concise and effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with three optional, fully-described parameters, the description adequately states purpose and key return fields. However, 'recent' is vague and there is no output schema, so it lacks some completeness that would merit a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% description coverage; all three parameters (limit, status, agentId) are documented with enums and defaults. The description adds no parameter-level detail beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'List' with resource 'agent runs', and indicates return content ('status and summary'). This clearly distinguishes it from the sibling tool get_agent_run, which deals with a single run.

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

Usage Guidelines3/5

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

The description implies usage for viewing recent runs but does not explicitly compare with alternatives like get_agent_run or list_agents. No exclusion criteria are provided, so guidance is only implied rather than explicit.

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

list_agentsList AI AgentsA
Read-only
Inspect

List all available AI agents and their capabilities.

SendIt includes 12 specialized agents: • Strategy Planner - Content strategy from audience/trend analysis • Content Ideation - Topic ideas from trends and calendar gaps • Multi-Format Composer - Platform-optimized content from a brief • Creative Asset - AI image/video generation orchestration • Variant Repurposer - Repurpose content for different platforms • Calendar Optimizer - Optimal posting time suggestions • Listening Analyst - Social mention and sentiment analysis • Inbox Reply - Contextual reply drafts with brand voice • Campaign Builder - Ad campaign structure recommendations • Budget Optimizer - Spend pacing and budget reallocation • Experimentation - A/B test design and analysis • Executive Insights - Executive summary reports

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description adds the behavioral guarantee of 'List all' (no pagination or filtering). It also provides the full inventory of agents, giving context about what the list will contain. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of one clear purpose sentence followed by a well-structured bulleted list of all 12 agents. Every line provides distinct value, with no filler or redundant information. It is front-loaded and scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only list operation with no output schema, the description is fully complete. It states what the tool returns (all agents and capabilities) and enumerates the actual agents. Without complex input/output structures, nothing is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema description coverage is 100%, so the schema fully documents the input. Per the rubric, zero parameters baseline is 4, and the description adds no unnecessary param semantics. The absence of parameters is consistent with a 'list all' operation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List all available AI agents' uses a specific verb and resource, and immediately distinguishes this tool from siblings like list_agent_runs (which lists runs, not agents) and invoke_agent (which runs an agent). It also lists all 12 agents, making the scope unambiguous.

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

Usage Guidelines4/5

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

The description clearly implies this tool is for discovering available agents and their capabilities, and there are no exclusions mentioned. It does not explicitly name alternatives like get_agent_policies or invoke_agent, but the context of listing is clear from the description and title.

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

list_analytics_reportsList Analytics ReportsA
Read-only
Inspect

List saved analytics report definitions for the current personal or team scope.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows it's a safe read operation. The description adds the scope constraint ('current personal or team scope') but does not disclose return format, pagination, or relationship to other report tools. This matches the bar where annotations cover safety but the description adds limited context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that directly states the action and resource. It contains no filler or redundant details, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one optional parameter, clear annotations, and full schema coverage, the description is sufficient to convey the core purpose. It lacks an explicit connection to run_analytics_report (which would consume these definitions) and does not describe return values, but the absence of an output schema and the simplicity of the tool make this a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single team_id parameter, including how to obtain team IDs via list_teams and the fallback to personal scope. The description adds marginal meaning by repeating the scope concept, but the schema already does the heavy lifting, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'List' and clearly identifies the resource as 'saved analytics report definitions' with an explicit scope ('current personal or team scope'). This distinguishes it from sibling tools like run_analytics_report (which runs reports) and get_analytics (which gets analytics data).

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

Usage Guidelines4/5

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

The description implies the tool is for listing definitions, not running them, and clarifies scope. The team_id parameter description adds guidance on how to operate in team scope via listing teams, but no explicit alternative tool is named. Still, the context is clear enough for an agent to decide when 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_brand_voicesList Brand VoicesA
Read-onlyIdempotent
Inspect

List all brand voice profiles. Brand voices guide AI content generation with tone, personality, writing rules, and example posts.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive. The description adds that it lists 'all' profiles and explains the domain context. It does not contradict annotations and provides some additional insight into the tool's purpose, but doesn't disclose additional behavioral details like pagination or field specifics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences. The first states the action, the second provides useful context. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

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, the description gives enough context: it lists all profiles and explains what a profile contains. The schema covers the only parameter. The lack of explicit return format is acceptable given the low complexity, though a brief mention of returned fields would have made it slightly more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with a clear description for team_id, including scope behavior and a reference to list_teams. The description text itself does not add parameter-specific details, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States 'List all brand voice profiles' with a specific verb and resource. Clearly distinguishes from sibling tools like create_brand_voice and set_default_brand_voice by focusing on listing all profiles. Also adds clarifying context about what brand voice profiles are.

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

Usage Guidelines4/5

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

Provides context by explaining that brand voices guide AI content generation, implying this tool is used to retrieve available voices. The team_id parameter references list_teams, giving a usage hint. However, it does not explicitly state when not to use it or mention alternatives like create_brand_voice or set_default_brand_voice.

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

list_calendar_eventsList Calendar EventsB
Read-onlyIdempotent
Inspect

List scheduled and published calendar events with optional date-range, status, platform, and pagination filters.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoOptional range end. ISO 8601 date or date-time.
limitNoMaximum number of results to return.
startNoOptional range start. ISO 8601 date or date-time.
cursorNoOpaque pagination cursor from a previous response.
statusNoOptional event status filter.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
upcomingNoIf true, return only upcoming events.
platformsNoOptional platform filter.
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the agent knows it's a safe read operation. The description adds a scoping detail (events that are 'scheduled and published') and mentions filter categories, but doesn't disclose pagination behavior or return format. This is consistent with the calibration example where extra context earns a 3.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that immediately states the core purpose and then lists the optional filter categories. No wasted words or redundant details—it is efficiently concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only listing tool with 8 optional parameters and no output schema, the description covers the essential behavior and filter options. Annotations provide safety context, and the schema fully documents parameters. It doesn't explicitly mention that it returns a list of events, but the verb 'List' implies that. Given the tool's simplicity and rich annotations, this is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 8 parameters. The description merely summarizes them ('date-range, status, platform, and pagination filters') without adding new meaning or clarifications beyond what the schema already provides. Thus, baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List') and the resource ('calendar events') with specific scope ('scheduled and published'), which distinguishes it from mutation tools like update_calendar_event. However, it doesn't explicitly differentiate from sibling list tools like get_scheduled_posts or list_recurring_series, so it falls short of a 5.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives. It mentions filters but doesn't state when this is the right choice over get_scheduled_posts, get_calendar_gaps, or list_recurring_series. There are no exclusions or alternative tool mentions.

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

list_connected_accountsList Connected AccountsA
Read-onlyIdempotent
Inspect

List all connected social media accounts. Pass team_id to see a team's accounts instead of your personal ones.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to list team accounts. Get available teams with list_teams. If omitted, lists personal accounts.

Output Schema

ParametersJSON Schema
NameRequiredDescription
isErrorNo
accountsNo
errorMessageNo
connectedCountNo
totalPlatformsNo
followUpSuggestionsNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is established. The description adds behavioral context beyond annotations by explaining the personal vs. team scope, which is not captured in the annotations. It does not discuss pagination or return format, but the output schema covers that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, with the primary purpose first and the parameter behavior second. Every word adds value, and there is no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one optional parameter, the description, combined with complete schema annotations and an output schema, provides enough context for an agent to understand the tool's scope and behavior. No significant gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the team_id parameter already thoroughly documented ('Team ID to list team accounts. Get available teams with list_teams. If omitted, lists personal accounts.'). The description essentially repeats this information, adding marginal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('List') and resource ('connected social media accounts'), and it distinguishes from sibling tools by focusing on social media accounts rather than connectors or other resources. The team_id parameter adds a scope distinction that further clarifies the purpose.

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

Usage Guidelines4/5

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

The description provides clear guidance on when to use the optional team_id parameter ('Pass team_id to see a team's accounts instead of your personal ones'). It does not explicitly mention alternatives or exclusions, but the usage context is clear for a simple listing tool.

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

list_connected_connectorsList Connected ConnectorsA
Read-only
Inspect

List all currently connected connectors with their status and health. Includes both legacy platform connections and new connector connections.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoFilter by category (optional)
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds value by mentioning it returns status and health, but doesn't disclose response shape, pagination, or potential errors. With annotations provided, the added behavioral detail is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core action, no redundant wording. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with one optional parameter and no output schema, the description adequately covers purpose and scope. It doesn't mention the category filter or return format, but these are covered by the schema or are low-complexity gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single optional category parameter is fully described in the schema. The description adds no additional meaning about the parameter, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists connected connectors with status and health, using a specific verb and resource. It implicitly distinguishes from siblings like list_connectors by emphasizing 'currently connected', but doesn't explicitly call out the difference.

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

Usage Guidelines3/5

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

The description provides context on scope (both legacy and new connectors) but gives no explicit guidance on when to use this tool over alternatives like list_connectors or get_connector_health. Usage is implied rather than stated.

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

list_connectorsList Available ConnectorsA
Read-only
Inspect

List all available connectors in the SendIt platform.

Returns connectors organized by category: organic, paid_media, automation, workspace. Each connector includes its ID, name, status, auth strategy, and capabilities.

Use this to discover what integrations are available before connecting.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoFilter by availability status (optional)
categoryNoFilter by connector category (optional)
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds useful context about return structure (categorized by organic, paid_media, etc.) and included fields (ID, name, status, auth strategy, capabilities). It doesn't contradict annotations and provides meaningful behavioral detail beyond them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loaded with the primary action, and every sentence earns its place: what it does, what it returns, and when to use it. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple optional filters, no output schema, and clear annotations, the description fully covers the return value structure and purpose. It is complete enough for an agent to select and invoke the tool correctly without additional information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters (status, category) having descriptions and enums. The description mentions the categories, aligning with the schema, but adds no additional parameter semantics beyond what the schema already provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all available connectors' with a specific resource (connectors in SendIt) and details return organization by category. It distinguishes itself from sibling tools like list_connected_connectors by emphasizing 'available' vs connected integrations.

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

Usage Guidelines4/5

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

The description provides explicit usage context: 'Use this to discover what integrations are available before connecting.' It implies when to use but does not explicitly name alternatives like list_connected_connectors, so it falls short of full differentiation.

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

list_conversationsList ConversationsA
Read-only
Inspect

List unified inbox conversations across all connected channels.

Aggregates comments, mentions, DMs, and messages from all organic and workspace connectors into a single inbox view.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 20)
statusNoFilter by conversation status
priorityNoFilter by priority
sentimentNoFilter by sentiment
assignedToNoFilter by assignee
connectorIdNoFilter by connector/platform
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is known. The description adds the aggregation behavior (comments, mentions, DMs, messages from all connectors) but does not disclose extra traits like pagination or sorting. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loaded with the primary action, and every phrase adds value. No redundant or vague wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

As a filtered-list tool with good annotations and a full schema, the description covers the essential scope and aggregation behavior. It lacks an output schema but the return type (conversations) is implied. It could mention result ordering or default limit, but the schema's limit parameter covers that gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all 6 parameters, each with clear descriptions. The tool description itself does not augment parameter details, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action and resource: 'List unified inbox conversations across all connected channels.' It also distinguishes the scope (unified, all channels) from sibling tools like get_conversation or list_inbox, which likely focus on single or per-channel views.

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

Usage Guidelines4/5

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

The description provides clear context: this tool aggregates all organic and workspace connectors into a single inbox view. It implies use when a cross-channel unified view is needed, though it does not explicitly name alternatives or exclusions.

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

list_dead_letterList Dead Letter PostsA
Read-onlyIdempotent
Inspect

List posts that failed all retry attempts and were moved to the dead letter queue. Review and decide to requeue or discard them.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum items to return (default 50)
statusNoFilter by status (default: dead)
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds valuable context beyond annotations by explaining that these posts 'failed all retry attempts' and were moved to the dead letter queue, which clarifies the state of the data. No side effects are disclosed because none exist for a read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the action ('List posts...'), and each sentence adds value. The first explains what the tool does, the second provides usage guidance. There is no wasted wording or repetition of schema/annotation details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple list operation with no output schema and 3 well-documented parameters. The description provides essential domain context (dead-letter queue, retry failures) and hints at the follow-up actions. It is sufficiently complete given the schema and annotations, though it could mention the returned data shape if that were important.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: all three parameters (limit, status, team_id) have descriptions in the schema. The tool description itself does not add any parameter-specific meaning, so it earns the baseline score of 3 for a schema that already documents parameters fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') with a clear resource ('posts... moved to the dead letter queue') and defines the domain concept. It distinguishes from the sibling tool 'requeue_dead_letter' by focusing on listing vs. acting. The two-sentence description fully conveys the tool's function.

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

Usage Guidelines4/5

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

The description provides clear context: this is for reviewing dead-letter posts before deciding to requeue or discard. It implies a workflow ('Review and decide to requeue or discard them') without explicitly naming alternative tools. It could have stated 'use this instead of requeue_dead_letter for inspection,' but the intent is clear.

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

list_inboxList Social InboxA
Read-onlyIdempotent
Inspect

List comment threads on your published posts.

Returns threads from your social inbox, showing comments and replies from followers on your posts across all platforms.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax threads to return (default 20)
statusNoFilter by thread status (optional)
platformNoFilter by platform (optional)
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds context about returning threads and comments/replies from followers, which is useful but does not disclose additional behavioral traits like pagination, sorting, or platform aggregation details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loaded with the main action and followed by a clarifying detail about return content. No waste or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a simple read-only list operation with no output schema, but the description explains what it returns (comment threads with replies). It lacks details like default limit or filtering options, but these are covered by the well-documented schema. Given the simplicity and annotation support, the description is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters (limit, status, platform) are fully documented in the schema. The description does not add any supplementary meaning to these parameters, only reaffirming the general purpose. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and resource ('comment threads on your published posts'), clearly distinguishing it from sibling tools like get_inbox_summary or list_conversations. It also specifies the scope ('across all platforms'), making the purpose unmistakable.

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

Usage Guidelines3/5

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

The description implies usage through context ('on your published posts') but does not explicitly state when to use this tool versus alternatives like get_inbox_summary or list_conversations. No exclusions or alternative recommendations are provided, leaving the usage guidance implied rather than explicit.

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

list_libraryList Content LibraryA
Read-onlyIdempotent
Inspect

List saved content from your library. Returns drafts, templates, and evergreen content.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoFilter by content type
limitNoMaximum items to return (default 20, max 100)
searchNoSearch in title and text
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
categoryNoFilter by category
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds that the tool returns drafts, templates, and evergreen content, which is useful, but it does not disclose pagination behavior, default limits, or team-scope semantics. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences that front-load the core action and return types. No unnecessary details or repetition, making it highly efficient and well structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple list operation and rich schema/annotations, the description is adequate but not complete. It omits details like default limit (20), pagination, and team_id scope behavior, which are only in the schema. The mention of returning all three content types might also slightly mislead without noting the type filter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter (type, limit, search, team_id, category) adequately described in the schema. The description adds no extra parameter-level meaning, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool lists saved content from the library and identifies the content types returned (drafts, templates, evergreen). It uses a specific verb and resource, and while it doesn't explicitly contrast with sibling tools like get_library_item, the list-versus-single distinction is evident.

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

Usage Guidelines3/5

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

The description implies when to use the tool ('List saved content from your library') but provides no explicit guidance on when to prefer this over get_library_item or other list tools. No exclusions or alternative suggestions are given, so usage context is only implied.

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

list_media_assetsList Media AssetsA
Read-onlyIdempotent
Inspect

List media library assets with filtering by collection, type, tags, search, and pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNoOptional broad media kind filter.
tagsNoOptional tag filter. Assets matching any supplied tag may be returned.
limitNoMaximum number of results to return.
cursorNoOpaque pagination cursor from a previous response.
searchNoOptional filename search query.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
mimeTypeNoOptional exact MIME type filter such as image/png or video/mp4.
collectionNoOptional collection name filter.
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds only that pagination is supported, which is a behavioral detail but not previously disclosed. It does not describe response shape or potential side effects, though none are expected given the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the core functionality and key features without any wasted words. It is well-structured and front-loaded with the verb 'List' and the resource 'media library assets'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only list tool with comprehensive annotations and a fully documented schema, the description is nearly complete. It covers the essential action and filtering capabilities. However, it does not clarify the relationship to the sibling 'list_library' tool, which could cause selection confusion, and it omits any mention of team scope (though team_id is documented in the schema).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with detailed descriptions for all 8 parameters. The description's mention of filtering by collection, type, tags, search, and pagination adds no additional meaning beyond what the schema already specifies. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists media library assets and enumerates key filtering dimensions (collection, type, tags, search, pagination). However, it does not explicitly distinguish itself from the sibling tool 'list_library', leaving some ambiguity about which tool to use for general library listing.

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

Usage Guidelines3/5

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

The description implies usage when needing filtered media assets, but it provides no explicit 'when to use vs alternatives' guidance. There is no mention of when not to use this tool or a pointer to a sibling like list_library, so the agent must infer context.

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

list_pending_approvalsList Pending ApprovalsA
Read-onlyIdempotent
Inspect

List all scheduled posts that are pending approval. These posts won't be published until approved.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering safety. The description adds that the listed posts won't be published until approved, which is useful context about the data, but it does not disclose other behavioral traits like pagination, ordering, or scope (e.g., all users/workspaces).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the core action and filter. No redundant information; every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list with no parameters and strong annotations, the description fully covers what the tool does and the state of the items. No output schema is needed to convey the return type, as the resource and filter are explicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and the schema is effectively complete at 100% coverage. With no parameters to describe, a baseline of 4 is appropriate; the description correctly adds no parameter information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb + resource ('List all scheduled posts') with a clear filter ('pending approval'), distinguishing it from sibling tools like get_scheduled_posts. The second sentence adds context about why these posts are pending.

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

Usage Guidelines3/5

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

The description implies when to use the tool (when you need to see posts awaiting approval) but does not explicitly mention alternatives or exclusions. No comparison to get_scheduled_posts or approve_post is given, so guidance is only implicit.

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

list_projectsList ProjectsA
Read-only
Inspect

List imported product/codebase projects for social strategy and content generation.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
searchNo
statusNo
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds that only 'imported' projects are listed, which is a useful scope restriction. However, it does not disclose behavior like pagination, sort order, or what project fields are returned, leaving the description adding only moderate value beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 13 words, front-loaded with the verb and resource. Every word earns its place, and there is no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool, the description is adequate but minimal. It works with the schema and annotations to provide a basic understanding, but lacks details about filter usage, pagination, or response structure. Given no output schema exists, the description could be richer, but it covers the core purpose.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 4 parameters but only 25% of them have descriptions (team_id). The description does not mention any parameters, so it does not compensate for the low schema coverage. Limit, search, and status rely on inference from their names/enum, which is insufficient for an agent to fully understand their intended usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists 'imported product/codebase projects' with a specific purpose ('for social strategy and content generation'). This distinguishes it from siblings like list_teams or list_brand_voices, making the purpose unambiguous.

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

Usage Guidelines3/5

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

The phrase 'for social strategy and content generation' provides some usage context, but it does not explicitly mention when to use this tool instead of alternatives like get_project_analysis or create_project. No exclusions or alternatives are named, so the guidance is implied rather than explicit.

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

list_recurring_seriesList Recurring SeriesA
Read-onlyIdempotent
Inspect

List recurring scheduled-post series and their recurrence metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results to return.
cursorNoOpaque pagination cursor from a previous response.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, covering the safety profile. The description adds little beyond the annotations, only hinting at the response content via 'recurrence metadata'. No additional behavioral traits like pagination behavior or scope handling are disclosed beyond what the schema provides.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly worded sentence that is front-loaded with the action and resource. It contains no filler or redundant information, earning a perfect score for conciseness and structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list operation, the description is adequate. The schema fully documents parameters, and annotations cover safety. It does not explicitly mention pagination or return structure, but these are not critical given the simplicity and availability of schema details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with all three parameters (limit, cursor, team_id) having descriptions. The description adds no extra meaning to the parameters, relying entirely on the schema. This aligns with the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the verb 'List' and the resource 'recurring scheduled-post series', and additionally mentions 'recurrence metadata' which adds scope. It distinguishes from sibling tools like cancel_recurring_series and update_recurring_series by focusing on the listing operation.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as get_scheduled_posts or other listing tools. There is no mention of context, exclusions, or when to prefer this tool for recurring series specifically.

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

list_teamsList TeamsA
Read-onlyIdempotent
Inspect

List all teams you belong to. Returns team names, IDs, and your role. Use the returned team ID with the team_id parameter in other tools to operate in team context.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds useful context beyond annotations by stating the returned fields (names, IDs, role) and that the team ID feeds into other tools. This is meaningful added behavioral context for a simple list operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence states the action and result, the second sentence provides a practical next step. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only list tool with no output schema, the description is complete: it specifies the exact scope, the return contents, and how to apply the result. There are no gaps in safety, parameters, or usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the empty schema fully covers parameter semantics; the baseline of 4 applies. The description mentions the team_id parameter used in other tools, but that is not a parameter of this tool and is appropriately placed as usage guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('List all teams you belong to') and distinguishes this tool from siblings by scoping to teams the user belongs to. It also identifies the return payload (team names, IDs, role), making the purpose unambiguous.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool—when you need to enumerate your teams—and explains how to use the returned team ID with other tools. It does not explicitly name alternatives or when not to use, but the tool is unique and the guidance is practical.

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

list_workflow_runsList Workflow RunsC
Read-only
Inspect

List recent runs for a workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 20)
statusNo
workflowIdYesWorkflow ID
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds 'recent' implying time-ordered results, but it does not disclose pagination behavior, default limit (though schema mentions it), or the shape of the returned list. With annotations covering the core safety, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence, which is concise with no wasted words. However, it essentially rephrases the tool name without adding context about parameters or usage, making it too terse to be genuinely helpful despite being structurally compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is no output schema, the description should explain what a run list contains (e.g., status, timestamps), but it does not. Combined with missing usage guidance and param details, the description is incomplete for an agent to fully understand the tool's capabilities and constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema documentation covers `limit` and `workflowId` with descriptions, but `status` lacks any description. The tool description itself contributes no parameter-level meaning, failing to explain the status filter or result limits; it does not compensate for the incomplete schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List recent runs for a workflow' uses a specific verb and resource, clearly indicating it retrieves a collection of runs scoped to a workflow. It distinguishes from sibling tools like `get_workflow_run` (single run) and `list_workflows` (workflows themselves), though it does not explicitly name these alternatives.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, such as `get_workflow_run` for a single run. It does not mention that `workflowId` is required or that `status` and `limit` can filter results, leaving the agent to infer usage from the schema.

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

list_workflowsList WorkflowsA
Read-only
Inspect

List all automation workflows with their status and trigger info.

ParametersJSON Schema
NameRequiredDescriptionDefault
activeNoFilter by active/inactive (optional)
triggerTypeNoFilter by trigger type (optional)
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the behavior that it returns status and trigger info, but does not disclose potential pagination, default sorting, or whether archived workflows are included. This is adequate but not rich context beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the purpose and includes relevant output details. It contains no filler or redundant information, earning a perfect score for conciseness and structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list operation with well-documented optional parameters and no output schema, the description is fairly complete. It states the primary purpose and the returned information. It lacks explicit mention of pagination or ordering, but these are not critical for the core use case. The combination of description, schema, and annotations provides sufficient context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for both parameters (active and triggerType), so the schema already explains their meaning. The description does not add any additional parameter context. With high schema coverage, the baseline is 3, and the description neither enhances nor detracts from parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List all automation workflows with their status and trigger info' uses a specific verb (list) + resource (automation workflows) and clearly states scope ('all') and the included information (status, trigger info). It distinguishes from sibling tools like list_workflow_runs, which lists runs rather than workflows, and get_workflow_run, which retrieves a specific run.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention, for example, that list_workflow_runs is for workflow executions, or that get_workflow_run provides details on a single run. Users/agents are left to infer the appropriate context from the tool name and siblings.

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

preview_contentPreview ContentA
Read-onlyIdempotent
Inspect

Generate a visual preview of how content will appear on each platform.

USE THIS WHEN: • Before publishing to see how posts will look • To validate content against platform requirements • To check character counts, hashtag limits, and media requirements

Returns an HTML preview mockup for each platform with validation results: • Character count vs limit • Hashtag count (Instagram has 30 max) • Media requirement check • Platform-specific warnings and errors

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes
platformsYesPlatforms to generate previews for

Output Schema

ParametersJSON Schema
NameRequiredDescription
validNo
errorsNo
isErrorNo
warningsNo
platformsNo
errorMessageNo
followUpSuggestionsNo
Behavior4/5

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

Annotations already declare the tool read-only, idempotent, and non-destructive, so the description need not repeat that. It adds useful behavioral context: returns an HTML preview mockup with specific validation results (character count, hashtag count with Instagram max, media checks, platform-specific warnings). This goes beyond the structured annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a one-sentence summary followed by a 'USE THIS WHEN' bullet list and a return-value bullet list. Every line adds value, and key information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (nested content object, platform enum list, output schema), the description covers the essential aspects: purpose, typical usage, return format, and validation checks. The presence of an output schema handles return-value details. It could explicitly state that it does not publish content, but the 'preview' name and 'before publishing' context make that clear. Overall, it is complete enough for an agent to select and use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema describes each parameter (content, text, mediaUrl, mediaType, mediaUrls, platforms) with basic descriptions, but schema coverage is only 50%. The description adds context about how content will be validated (e.g., character counts, hashtag limits, media requirements), which helps the agent understand what the content parameter should contain. However, it does not clarify the distinction between mediaUrl and mediaUrls or how the platforms array affects output, so parameter meaning remains partially ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb and resource: 'Generate a visual preview of how content will appear on each platform.' It distinguishes itself from siblings like validate_content by emphasizing the HTML preview mockup and validation results, making the purpose unambiguous.

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

Usage Guidelines4/5

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

The 'USE THIS WHEN' section provides explicit scenarios: before publishing, validating content against platform requirements, and checking character/hashtag/media limits. It does not mention when NOT to use it or point to alternatives, but the context is strong enough to guide an agent.

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

publish_aiAI Generate & PublishA
Destructive
Inspect

Generate AI content and publish it in a single step.

Combines generate_content + publish_content into one call. First generates platform-optimized content using AI, then publishes to the specified platforms.

Same platform requirements as publish_content apply.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptNoCreative prompt for AI content generation
hashtagsNo
mediaUrlNoMedia URL for the post
strictAiNo
mediaTypeNoMedia type hint
mediaUrlsNoMultiple media URLs for carousel
platformsYesTarget platforms to generate content for and publish to
generationNo
contentOverridesNo
Behavior3/5

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

Annotations already mark it as destructive/write operation. The description adds the sequencing (generate then publish) and the combined call behavior, but doesn't disclose side effects, error handling, or actual platform requirements. Minimal extra value beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the primary purpose. Each sentence adds relevant information without unnecessary fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool with 9 parameters, nested objects, and no output schema. The description is too brief: it doesn't explain return values, failure behavior, whether publishing requires approval, or what the 'same platform requirements' actually entail. Significant gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description only mentions 'specified platforms' without adding meaning to any specific parameters. With 56% schema description coverage, several parameters (hashtags, strictAi, generation, contentOverrides) remain unexplained, and the description does not compensate for this gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates AI content and publishes it in a single step, explicitly combining generate_content and publish_content. This distinguishes it from sibling tools like generate_content or publish_content alone.

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

Usage Guidelines4/5

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

It explains the combined nature and references 'same platform requirements as publish_content,' giving some context for when to use this tool. However, it doesn't explicitly state when NOT to use it (e.g., if review before publishing is needed).

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

publish_contentPublish ContentAInspect

Publish content to social media platforms.

MEDIA RULES: • mediaUrl must be a public HTTPS URL — NOT a local file path. • If the user shares an image/video in chat, call create_upload_session FIRST to get a browser upload link, then use the returned URL here. • Text-only works on: LinkedIn, Threads, X, Facebook. • Image required: Instagram, Pinterest. • TikTok supports one video or 1-35 Photo Mode images. • Video required: YouTube.

Call validate_content to check before publishing.

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes
team_idNoTeam ID to publish as team. Get available teams with list_teams. If omitted, publishes from personal accounts.
platformsYesTarget platforms. Choose based on content type: text-only→LinkedIn/Threads/X, image→Instagram/Threads/Facebook/Pinterest/TikTok Photo Mode, video→Instagram/TikTok/Threads/YouTube

Output Schema

ParametersJSON Schema
NameRequiredDescription
isErrorNo
resultsNo
successNo
errorMessageNo
totalPlatformsNo
followUpSuggestionsNo
successfulPlatformsNo
Behavior4/5

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

Annotations already disclose mutation via readOnlyHint=false, so the bar is lowered. The description adds valuable constraints: mediaUrl must be public HTTPS, chat-shared media requires an upload session, and certain platforms mandate specific media types. It does not describe post-publish effects (e.g., irreversibility), but this is not a major gap given the mutation annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded with a clear purpose. The bulleted MEDIA RULES are dense, each delivering a distinct actionable constraint, and the final 'Call validate_content' line is a useful pointer. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (22 platform enums, nested content object, output schema available), the description covers the most decision-critical aspects: media requirements, upload session dependency, and validation step. It omits details like publishing immediacy or required account connections, but the rich input schema and output schema compensate for these gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 67% and most content properties already have descriptions. The MEDIA RULES largely restate the schema's own platforms guidance (e.g., 'Text-only→LinkedIn/Threads/X'), and the upload session workflow is already embedded in the mediaUrl schema description. The description adds little new parameter meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Publish content to social media platforms.' The MEDIA RULES further clarify scope by detailing platform-specific requirements, distinguishing this from scheduling (schedule_content) or validation (validate_content) sibling tools.

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

Usage Guidelines5/5

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

The description gives explicit procedural alternatives: 'If the user shares an image/video in chat, call create_upload_session FIRST' and 'Call validate_content to check before publishing.' It also provides when-to-use context via platform/media compatibility rules (text-only vs image vs video requirements).

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

publish_from_libraryPublish from LibraryB
Destructive
Inspect

Publish content directly from your library to one or more platforms.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe content library item ID to publish
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
platformsYesPlatforms to publish to
Behavior2/5

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

Annotations already indicate destructiveHint=true and readOnlyHint=false, so the safety profile is established. However, the description adds no extra behavioral context such as whether publishing is immediate, partial failure handling, or the need for platform authentication. It does not contradict annotations, but also does not supplement them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. It conveys the core action and target in under 15 words, making it efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with three parameters and no output schema, the description covers the basic purpose but omits important context like whether publishing requires prior platform connections, whether it schedules or immediately posts, and what the return value represents. Annotations fill part of the safety gap, but the description alone is not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (id, team_id, platforms all have clear descriptions). The main description does not add new meaning beyond what the schema already provides, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Publish content directly from your library to one or more platforms.' It uses a specific verb (publish) and identifies the resource (library items) and target (platforms). The phrase 'directly from your library' differentiates it from sibling tools like publish_content, which likely handles ad-hoc content.

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

Usage Guidelines2/5

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

No explicit guidance is provided on when to use this tool versus alternatives. There is no mention of exclusions, prerequisites (e.g., needing connected accounts), or comparisons with publish_content, publish_ai, or schedule_content. Usage context is only implied by the word 'library'.

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

reject_postReject PostAInspect

Reject a scheduled post that is pending approval. The post will not be published.

ParametersJSON Schema
NameRequiredDescriptionDefault
postIdYesThe scheduled post ID to reject
reasonYesReason for rejection
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
Behavior4/5

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

The description adds meaningful context beyond the annotations by stating the post will not be published, clarifying the rejection's impact. It doesn't contradict annotations (readOnlyHint false, destructiveHint false) and appropriately indicates the mutation without implying deletion.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, front-loaded with the action and outcome, with zero wasted words. It is highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple mutation tool with no output schema, the description covers the essential behavior and consequence. It could mention the post's resulting state (e.g., remains as rejected), but given the annotations and schema richness, it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters are already documented. The description adds no additional meaning about parameter usage or semantics beyond what the schema provides, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('reject') with a clear resource ('scheduled post that is pending approval') and outcome ('will not be published'). It effectively distinguishes from sibling tools like approve_post and delete_scheduled_post by narrowing to the rejection workflow.

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

Usage Guidelines4/5

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

The description clearly implies when to use this tool: for scheduled posts pending approval that should not be published. However, it doesn't explicitly name alternatives or exclusions (e.g., 'use approve_post to approve'), leaving some room for ambiguity among closely related actions.

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

reply_to_commentReply to CommentAInspect

Reply to a comment on one of your published posts.

Supported platforms: X (reply tweets), Threads, Instagram, Facebook, YouTube. Not supported: LinkedIn, Pinterest, TikTok.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesYour reply text
threadIdYesThe inbox thread ID to reply to
Behavior3/5

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

Annotations already indicate a write operation (readOnlyHint=false, destructiveHint=false). The description adds platform coverage, which is useful, but it does not disclose potential side effects like immediate public posting, rate limits, or authentication requirements. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two short sentences: the first states the action clearly, and the second concisely lists platforms. Every word earns its place, and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with strong annotations and full schema coverage, the description is mostly complete. The platform list adds valuable context, but it lacks any mention of what happens after the reply is sent (e.g., immediate posting, return value), which would be helpful given there is no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add parameter details, and there is a slight mismatch between the tool's 'comment' focus and the parameter description's 'inbox thread ID,' which could confuse agents about what threadId actually refers to.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Reply to a comment on one of your published posts' with a specific verb and resource. The supported/unsupported platform list further clarifies scope and distinguishes this from conversation-level or drafting tools like reply_to_conversation and draft_reply.

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

Usage Guidelines4/5

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

The description provides explicit platform support and exclusions (X, Threads, Instagram, Facebook, YouTube vs. LinkedIn, Pinterest, TikTok), giving clear context on when to use the tool. However, it does not directly name alternative tools for unsupported cases, stopping short of full usage guidance.

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

reply_to_conversationReply to ConversationAInspect

Send a reply in a conversation.

The reply is sent through the original channel (e.g., Instagram comment, X reply, Facebook comment, etc.).

Replies require conversation reply routing metadata (credential + operation). Provide "routing" once and it will be stored on the conversation for future replies.

Use the Inbox Reply agent to get AI-drafted replies with brand voice.

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYesReply text
routingNoOptional: set conversation reply routing (persisted on conversations.metadata.replyRouting). Use this when the conversation doesn't yet have reply routing configured.
mediaUrlsNoMedia to attach (optional)
conversationIdYesConversation ID
Behavior4/5

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

Annotations already indicate readOnly=false and openWorldHint=true, and the description adds meaningful behavioral detail: replies are sent through the original channel and routing metadata is persisted on the conversation. This goes beyond the structured fields and is consistent with the annotations, though it does not discuss errors, rate limits, or response behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, each contributes distinct information: the core action, channel behavior, routing requirement/persistence, and an AI-drafting alternative. No filler or redundancy, though it could be slightly more compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is moderately complex with a nested routing object and no output schema. The description covers the main action, channel behavior, routing prerequisite, and an alternative for drafting. It omits return values or failure modes, but with the parameter schema fully covering inputs, the description is adequate for use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already describes all parameters, including the nested routing object with persistence semantics. The description adds some value by explaining why routing is needed and that it is stored for future replies, but this largely echoes the schema's existing documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description opens with 'Send a reply in a conversation' — a specific action on a clear resource. It further distinguishes the tool by noting replies go through the original channel (e.g., Instagram, X, Facebook), which sets it apart from generic messaging. However, it does not explicitly contrast siblings like reply_to_comment or draft_reply.

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

Usage Guidelines4/5

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

States a clear prerequisite ('Replies require conversation reply routing metadata') and explains how to handle it ('Provide routing once and it will be stored on the conversation for future replies'). It also points to the Inbox Reply agent as an explicit alternative for AI-drafted replies with brand voice. Absence of 'do not use' wording is a minor gap, but the context is clear.

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

repurpose_urlRepurpose URL ContentAInspect

Takes a URL (article, YouTube video, or podcast) and repurposes its content into platform-optimized posts.

Supports: • Web articles — extracts text content • YouTube videos — extracts transcript/captions • Podcast RSS feeds — extracts episode descriptions and show notes

Returns platform-specific formatted output (X threads, Instagram carousel slides, Medium articles, etc.) with a quality score (0-100) for each variant.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesSource URL to repurpose (article, YouTube video, or podcast RSS feed)
toneNoOptional tone override (e.g., 'professional', 'casual', 'witty')
brand_voice_idNoOptional brand voice profile ID to apply
target_platformsYesTarget platforms to generate content for (e.g., ['x', 'linkedin', 'instagram'])
Behavior4/5

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

The description adds behavioral detail beyond annotations by explaining extraction methods (text, transcripts, captions, show notes) and the return structure (platform-specific variants with quality score). Annotations already declare non-read-only and open-world, so the description's extra context about what it does is valuable. It does not mention potential latency or URL accessibility issues, but it is otherwise transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, using bullet points for supported source types. Every sentence is informative, and there is no filler or redundancy. It fronts the main action and immediately lists supported formats.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers input types, supported sources, output platforms, and the quality score, which is adequate for a tool of this complexity. Combined with the annotations and schema, it gives a solid understanding. It could mention error handling or review requirements, but it is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all 4 parameters with descriptions (100% coverage). The description reinforces 'url' and 'target_platforms' but adds no new parameter-specific information, such as formatting details for tone or brand_voice_id. Baseline 3 is appropriate because the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs and resources: 'repurposes its content into platform-optimized posts.' It clearly identifies the input types (articles, YouTube, podcasts) and output types (X threads, Instagram carousel, Medium articles), distinguishing it from siblings like generate_content that likely create from scratch.

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

Usage Guidelines3/5

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

The description implies usage when you have a URL to repurpose, but it does not explicitly state when to use this tool over alternatives like generate_content or generate_post_bundle, nor does it mention any exclusions. It lacks explicit 'when to use' or 'when not to use' guidance.

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

request_project_contentRequest Project ContentCInspect

Generate UGC, slideshow, remix, caption, or calendar content from project intelligence.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNo
countNo
promptNo
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
platformsNo
projectIdYes
contentTypeNo
saveToLibraryNo
consentConfirmedNoRequired when using uploaded creator or likeness-like media.
Behavior3/5

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

With annotations indicating readOnlyHint=false and openWorldHint=true, the description adds a little context by listing output types, but it does not disclose behaviors such as whether content is saved to the library, non-determinism of AI generation, or associated costs. Annotations cover the basic safety profile, but the description adds minimal additional behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with a clear front-loaded verb ('Generate') and specific content types. It is efficient, though it could include more useful detail without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 9 parameters, no output schema, and very low schema coverage. The description is far too brief to provide adequate context about what 'project intelligence' means, what the output looks like, or how parameters interact. It leaves critical gaps for an agent to correctly invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 22%, with most parameters lacking descriptions. The description partially maps to the contentType enum ('UGC, slideshow, remix, caption, calendar') but provides no meaning for other key parameters like prompt, count, platforms, or saveToLibrary. Since schema coverage is low, the description should compensate but does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates specific content types (UGC, slideshow, remix, caption, calendar) using project intelligence. It identifies the action and resource but does not explicitly distinguish it from sibling tools like 'generate_content' or 'generate_post_bundle', so it misses the top score for sibling differentiation.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as 'generate_content' or 'save_project_content_to_library'. No context, prerequisites, or exclusions are provided. The description only implies it is for generating content based on project data, which is not enough to guide tool selection.

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

requeue_dead_letterRequeue Dead Letter PostAInspect

Requeue a dead letter post for another publishing attempt. Creates a new scheduled post from the dead letter entry.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
deadLetterIdYesThe dead letter post ID to requeue
Behavior4/5

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

Adds context beyond annotations by stating it 'Creates a new scheduled post', clarifying that this is a mutating operation (consistent with readOnlyHint=false). Does not mention whether the dead letter entry is removed, but given annotations (destructiveHint=false), this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise, front-loaded sentences with no redundancy. Every phrase adds value, clearly stating action and result.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a relatively simple mutation tool with full schema coverage and annotations, the description sufficiently explains what happens. It lacks details about return values, but no output schema is present, so this is not a major gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters described adequately. The tool description mentions 'dead letter entry' which aligns with deadLetterId, but adds no additional parameter semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Requeue' targeting 'dead letter post' and explains the outcome ('Creates a new scheduled post from the dead letter entry'). This distinguishes it from siblings like retry_scheduled_post by specifying a new scheduled post is created.

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

Usage Guidelines3/5

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

The description implies usage when a dead letter post exists and needs another publishing attempt, but it does not explicitly contrast with alternatives such as retry_scheduled_post or list_dead_letter. No clear when/when-not guidance is provided.

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

retry_scheduled_postRetry Scheduled PostAInspect

Retry a failed scheduled post, optionally editing the content, narrowing to failed platforms, rescheduling, or publishing immediately.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for postId.
textNoReplacement post text for the retry.
postIdNoScheduled post ID.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
mediaUrlNoReplacement public HTTPS media URL for the retry.
mediaUrlsNoReplacement public HTTPS media URLs for the retry.
platformsNoOptional subset of failed platforms to retry.
publishNowNoPublish the retry immediately instead of scheduling it.
scheduleIdNoCompatibility alias for postId.
scheduledAtNoNew ISO 8601 retry time. Required unless publishNow is true.
firstCommentNoOptional replacement Instagram first comment.
pinterestBoardIdNoOptional replacement Pinterest board ID.
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false. The description adds valuable behavioral context by enumerating optional behaviors (editing content, narrowing platforms, rescheduling, publishing immediately) that go beyond the annotations. It does not, however, disclose detailed side effects like whether the original post is modified or a new attempt is created.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the core purpose and efficiently lists the optional modifications. Every word contributes to understanding the tool's behavior, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the rich schema and annotations, the description omits critical usage requirements: it does not clarify that an identifier (id, postId, or scheduleId) is needed, nor does it describe the expected output or return value. Since there is no output schema, this information would help complete the picture. The description covers the main function but leaves these gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters are documented. The description provides a high-level summary mapping to parameters (text/mediaUrl for content, platforms for narrowing, scheduledAt for rescheduling, publishNow for immediate publishing), but adds no new parameter-level meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Retry a failed scheduled post' with a specific verb and resource. It also distinguishes itself from siblings by mentioning optional actions like editing content, narrowing to failed platforms, rescheduling, or publishing immediately, which differentiates it from edit_scheduled_post or trigger_scheduled_post.

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

Usage Guidelines4/5

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

The phrase 'failed scheduled post' establishes clear context for when to use this tool. However, it does not explicitly mention alternatives or exclusion criteria, so it lacks the explicit when-not-to-use guidance that would earn a 5.

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

run_analytics_reportRun Analytics ReportAInspect

Execute one saved analytics report immediately and return the generated run plus aggregated analytics data.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for reportId.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
reportIdNoSaved analytics report ID.
Behavior4/5

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

The description discloses that the tool executes a report and returns a generated run plus aggregated data, adding context beyond the annotations (readOnlyHint=false, openWorldHint=true). It clarifies the output and side effect of creating a run, though it doesn't detail permissions or broader system impacts. This is adequate given the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence that front-loads the action and outcome. It contains no filler or redundant information, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description appropriately specifies the return value ('generated run plus aggregated analytics data') and notes the immediacy of execution. It doesn't address the optionality of parameters, but the schema covers that. Given the annotations and full schema coverage, the description is nearly complete for this complexity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter (id, team_id, reportId) clearly explained in the schema, including the alias relationship and team scope. The description itself adds no extra parameter information, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Execute one saved analytics report immediately') and resource ('saved analytics report'), clearly distinguishing it from related tools like list_analytics_reports or get_analytics. The verb 'execute' conveys an on-demand run, which is unique among siblings.

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

Usage Guidelines3/5

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

The description implies when to use the tool (to run a saved report immediately) but does not explicitly mention alternatives or exclusions. For example, it doesn't contrast with create_scheduled_report for scheduling or get_analytics for viewing existing data. Usage context is present but not fully explicit.

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

save_project_content_to_librarySave Project Content To LibraryBInspect

Generate project content and save the outputs into the reusable content library.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo
promptNo
team_idNoOptional team ID or slug. Ignored when using a team-scoped API key.
platformsNo
projectIdYes
contentTypeNo
Behavior3/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, which already communicate that this is a non-destructive write operation. The description adds that content is both generated and saved, but it does not disclose details about how saving works (e.g., creating a new library item, potential overwrites, side effects). Since annotations cover the basic safety profile, the description provides marginal additional value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the primary actions ('Generate' and 'save'). It is efficient and free of fluff, though it could be structured with more detail without becoming verbose. It earns its place but does not provide deeper context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 6 parameters, no output schema, and very low schema description coverage, the description is far from adequate. It does not explain what 'generate project content' means, how parameters influence generation, what platforms/content types are involved, or what the return value represents. This is insufficient for an agent to use the tool effectively without additional assumptions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% (only team_id has a description). The description does not mention any parameters, so it fails to compensate for the low schema coverage. Parameters like count, prompt, platforms, and contentType are left completely unexplained, adding no value beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Generate project content and save the outputs into the reusable content library.' It includes specific verbs ('generate', 'save') and resources ('project content', 'library'), and distinguishes itself from sibling tools like generate_content and save_to_library by combining both actions in one operation.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as generate_content or save_to_library. It does not mention appropriate contexts, exclusions, or prerequisites, leaving the agent to infer usage solely from the tool's purpose.

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

save_to_librarySave to LibraryCInspect

Save content to your library as a draft, template, or evergreen content for reuse.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoTags for organization
textYesThe content text/caption
typeNoContent type (default: draft)
titleYesTitle for the saved content
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
categoryNoCategory for organization
mediaUrlNoMedia URL (image or video)
targetPlatformsNoWhich platforms this content is designed for
evergreenEnabledNoEnable evergreen auto-republishing
evergreenIntervalDaysNoDays between evergreen republishes
Behavior2/5

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

The description simply states the saving action and adds the content-type variants, which are already captured by the schema's type enum. It does not disclose any behavioral traits beyond the annotations, such as how new items are created, whether team scope is possible, or any side effects. Given minimal annotations, this leaves the agent without additional safety or workflow context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that gets to the point immediately. It avoids redundancy and front-loads the core action and target resource, making it easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 10 parameters, no output schema, and various optional fields like team_id, mediaUrl, and targetPlatforms, this description is too sparse. It does not convey the broader use case beyond basic saving, nor does it mention team scope or media-related options, leaving the agent to rely entirely on the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Because schema description coverage is 100%, the schema fully documents all parameters. The description adds the conceptual grouping of content types and the reuse purpose, but no syntax or relationship details beyond the enum. This meets the baseline for schema-heavy descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the action (save), the resource (library), and the content types (draft, template, evergreen), making its core purpose unambiguous. However, it does not differentiate from the sibling tool create_library_item, which likely performs a similar creation action, so it stops short of full sibling differentiation.

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

Usage Guidelines2/5

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

No explicit guidance is provided about when to use this tool versus alternatives such as create_library_item or save_project_content_to_library. The phrase 'for reuse' hints at intent but does not state preconditions, exclusions, or alternative options, leaving the agent without clear selection criteria.

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

schedule_contentSchedule ContentAInspect

Schedule content for future publishing. Same media rules as publish_content apply.

• mediaUrl must be a public HTTPS URL — call create_upload_session if user shares a file in chat. • Content is validated at schedule time, not publish time.

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes
team_idNoTeam ID to schedule as team. Get available teams with list_teams. If omitted, schedules from personal accounts.
timezoneNoOptional IANA timezone for queue scheduling and recurring series metadata.
platformsYesTarget platforms - ensure content matches each platform's requirements
scoreGateNoOptional forward-compatible minimum content score threshold for advanced scheduling flows.
recurrenceNoOptional forward-compatible structured recurrence definition.
bypassTokenNoOptional forward-compatible bypass token returned by advanced scheduling score-gate checks.
scheduleModeNoOptional forward-compatible scheduling mode. 'queue' asks SendIt to place the post in the next available queue slot.
scheduledTimeYesISO 8601 datetime in UTC (e.g., 2025-01-15T14:30:00Z)
recurrenceRuleNoOptional forward-compatible RRULE string for recurring schedules.
targetAccountsNoOptional advanced scheduling target account IDs. Legacy handlers may ignore this until advanced scheduling is enabled.
mediaAttachmentsNoOptional forward-compatible media asset attachments to associate with the scheduled post.
platformOverridesNoOptional forward-compatible per-platform overrides keyed by platform ID.
recurrenceEndDateNoOptional forward-compatible ISO 8601 end date for recurrence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNo
isErrorNo
successNo
platformsNo
scheduleIdNo
errorMessageNo
scheduledTimeNo
followUpSuggestionsNo
Behavior4/5

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

The description adds value beyond annotations by disclosing that content is validated at schedule time (not publish time) and that mediaUrl must be a public HTTPS URL. These are important behavioral traits not captured by the annotations (which only indicate mutation and non-idempotency). It doesn't describe return values or side effects, but this is acceptable given the output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: one purpose sentence and two bullets. It is front-loaded with the main intent and every line adds value. No fluff or redundancy, achieving high clarity in minimal words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich input/output schema and annotations, the description adequately covers the essential context: future scheduling, media URL constraints, and validation timing. It doesn't explain every parameter (correctly left to the schema) but could have briefly noted the existence of advanced scheduling siblings to avoid selection confusion. Overall, it is complete for most agent invocation scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 93%, so the schema already thoroughly documents each parameter. The description's only parameter-related note ('mediaUrl must be a public HTTPS URL — call create_upload_session...') is essentially a repeat of the schema's own mediaUrl description, adding no new meaning. Thus, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Schedule content') and its purpose ('for future publishing'), which distinguishes it from publish_content (immediate publishing). However, it does not differentiate from sibling tools like schedule_content_advanced or schedule_multilang_content, leaving some ambiguity about which scheduling variant to choose.

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

Usage Guidelines4/5

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

The description provides clear usage context: use for future publishing, and it gives a specific actionable rule for file uploads ('call create_upload_session if user shares a file in chat'). It also references sibling publish_content rules, but it lacks explicit exclusions or guidance on when to use alternatives like schedule_content_advanced.

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

schedule_content_advancedSchedule Content AdvancedAInspect

Schedule content with explicit target accounts, queue placement, recurrence, platform overrides, media library attachments, and score gating.

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
timezoneNoOptional IANA timezone for queue resolution and recurrence.
scoreGateNoOptional minimum content score threshold. If unmet, the tool can return a bypass token instead of scheduling.
recurrenceNoOptional structured recurrence definition.
bypassTokenNoOptional bypass token returned from a previous score gate warning.
scheduledAtNoISO 8601 time for exact scheduling. Required unless scheduleMode is 'queue'.
scheduleModeNoScheduling strategy. Use 'queue' to place the post into the next available queue slot.
recurrenceRuleNoOptional RRULE string for advanced recurring schedules.
targetAccountsYesConnected account IDs to schedule to. These determine the target platforms.
mediaAttachmentsNoOptional media library assets to link to the scheduled post.
platformOverridesNoOptional per-platform overrides keyed by platform ID. Use this for platform-specific text, title, description, or publish settings.
recurrenceEndDateNoOptional ISO 8601 date-time to stop the recurring series.
Behavior2/5

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

Annotations already indicate a non-read-only, non-idempotent operation, but the description adds no extra behavioral context such as side effects, prerequisites (e.g., connected accounts), or consequences of score gating failures. The feature enumeration is a capability list, not a behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently enumerates all major capabilities without redundancy or filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (13 parameters, nested objects, no output schema), the description is too high-level. It omits guidance on return values, failure modes, or prerequisites not already in the schema. A more complete narrative would help an agent invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 92%, so parameters are already well-documented. The description does not add meaning beyond the schema; it merely summarizes features. Baseline 3 is appropriate because the schema carries the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Schedule' and resource 'content', then enumerates six distinguishing advanced capabilities (explicit target accounts, queue placement, recurrence, platform overrides, media library attachments, score gating). This makes the tool's purpose specific and differentiates it from the simpler sibling `schedule_content`.

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

Usage Guidelines4/5

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

The feature list implies when this tool is appropriate (e.g., when needing recurrence or score gating), providing clear context. However, it does not explicitly mention alternatives like `schedule_content` or state when not to use this tool, so it lacks exclusions.

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

schedule_multilang_contentSchedule Multilang ContentAInspect

Schedule the same post in multiple languages, linking all variants into one translation group.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoOptional shared title for supported platforms.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
mediaUrlNoOptional shared public HTTPS media URL.
timezoneNoOptional IANA timezone stored with the scheduled posts.
versionsYesLanguage-specific post variants. Maximum 11 versions per request.
mediaTypeNoOptional shared media type hint.
mediaUrlsNoOptional shared public HTTPS media URLs.
scheduledAtYesFuture ISO 8601 publish time for every language version.
Behavior4/5

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

The description adds the key behavioral insight that all variants are linked into a single translation group, which is not captured by the annotations. This complements the annotations (readOnlyHint=false, idempotentHint=false) by explaining a significant side effect of 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the action and includes the unique 'translation group' detail. Every word contributes value with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich input schema and annotations, the description adequately explains the tool's core purpose and unique behavior. It does not describe return values or post-scheduling effects, but no output schema exists and the operation is clear enough for selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% description coverage for all 8 parameters, including nested version fields. The description adds no additional parameter-level meaning beyond what the schema provides, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: scheduling the same post in multiple languages while linking variants into one translation group. This specific verb+resource phrasing distinguishes it from sibling tools like schedule_content and bulk_schedule.

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

Usage Guidelines3/5

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

The description implies appropriate use for multilingual scheduling but does not explicitly mention when to choose this over alternatives such as schedule_content_advanced or bulk_schedule. No exclusions or alternative tool references are provided.

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

score_contentScore Content QualityA
Read-onlyIdempotent
Inspect

Score content quality on a 0-100 scale before publishing.

Evaluates 5 factors (20 points each):

  1. Text length optimization for target platforms

  2. Hashtag count optimization

  3. Posting time alignment with best engagement windows

  4. Media presence (images/videos)

  5. Content patterns (CTA, hooks, formatting, emoji)

Returns overall score, per-factor breakdown, and improvement suggestions.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe post text content
mediaUrlNoPrimary media URL (optional)
mediaUrlsNoMultiple media URLs for carousel (optional)
platformsYesTarget platforms to score against
scheduledTimeNoScheduled publish time in ISO 8601 (optional, improves time score)
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral detail by enumerating the 5 factors and specifying the return payload (overall score, per-factor breakdown, improvement suggestions).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences: an opening purpose statement, a bullet-style list of the 5 factors, and a return-value sentence. Every line adds value and is front-loaded with the most important information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is moderately complex (5 params, no output schema), but the description covers evaluation logic and expected output behavior. It does not detail edge cases or exact response formatting, but that is acceptable given the schema and read-only annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 5 parameters have schema descriptions, so baseline is 3. The description enhances semantics by linking 'scheduledTime' to the time alignment factor and 'mediaUrl/mediaUrls' to media presence, helping the agent understand how inputs are used.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Score content quality on a 0-100 scale before publishing,' which is a specific verb, resource, and outcome. It lists five concrete evaluation factors and clearly distinguishes itself from content generation (generate_content) and publishing tools by emphasizing pre-publish scoring.

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

Usage Guidelines4/5

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

The phrase 'before publishing' provides clear context for when to invoke the tool. It does not explicitly name alternative tools like critique_post or validate_content, but the 5-factor scoring approach implies a quality-assessment use case distinct from other content operations.

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

set_default_brand_voiceSet Default Brand VoiceAInspect

Set a brand voice profile as the default. The default brand voice is automatically used by all AI content generation tools.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe brand voice profile ID to set as default
Behavior3/5

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

Annotations indicate a write operation (readOnlyHint=false) and non-idempotent behavior. The description adds context that the default is automatically used by all AI content generation tools, which is a useful behavioral consequence. However, it does not disclose potential side effects like overwriting the previous default 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences. The first sentence states the purpose directly, and the second adds a key consequential detail. No filler or repetitive content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with no output schema, the description covers the purpose and the effect on AI content generation. Combined with annotations, it gives sufficient context for an agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'id' has a clear schema description ('The brand voice profile ID to set as default'), resulting in 100% schema coverage. The tool description adds no extra semantic detail beyond the schema, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 (brand voice profile) with the scope (default), and explains the automatic consequence on all AI content generation tools. It distinguishes from siblings like create_brand_voice and list_brand_voices by focusing on setting the default.

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

Usage Guidelines4/5

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

The description provides clear context: the tool sets the default brand voice that is automatically used by AI content generation tools. It implies when to use it (to change the global default) but does not explicitly mention alternatives or exclusions, such as using create_brand_voice to add new profiles.

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

suggest_next_schedule_timeSuggest Next Schedule TimeA
Read-onlyIdempotent
Inspect

Suggest the next recommended publish time using best-times insights or configured queue slots without creating a post.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoUse 'best_time' for analytics-based suggestions or 'queue' for queue-slot suggestions.
afterNoOptional lower bound. Suggestions should be strictly after this time.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
platformNoSingle platform to optimize for.
timezoneNoOptional IANA timezone for the returned recommendation.
mediaTypeNoOptional content media type hint for best-time recommendations.
platformsNoOptional platform set to optimize across.
Behavior4/5

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

Annotations already indicate read-only and idempotent behavior, and the description aligns by stating 'without creating a post,' reinforcing a non-mutating operation. The description adds clarity about the two modes but does not disclose potential edge cases (e.g., no available slots) or return format. Given the annotations carry the safety profile, this is adequate though not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the main action, scopes it with two modes, and adds a key non-side-effect qualifier. Every word earns its place with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 7 parameters with 100% schema coverage and read-only annotations, the description is mostly sufficient. It clearly identifies the purpose and modes, but it does not describe the output structure or behavior in edge cases (e.g., no suggestion available). For a simple suggestion tool, this is a minor gap, so a 4 is justified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All parameters have descriptive schema entries covering 100% of coverage, so the description does not need to add much. It does mention the mode distinction ('best-time insights or configured queue slots'), which aligns with the mode enum, but it does not add details beyond the schema's existing descriptions. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('suggest') with a clear resource ('next recommended publish time') and explicitly states it does not create a post, distinguishing it from scheduling tools. It also mentions the two operating modes (best_time and queue), clarifying its scope and purpose.

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

Usage Guidelines4/5

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

The description provides context on when to use this tool ('next recommended publish time' with 'best-time insights or configured queue slots') and explicitly notes it operates 'without creating a post', implying it is for recommendations, not scheduling. However, it does not explicitly name sibling alternatives or exclusions (e.g., suggest_queue_slots or schedule_content), so it falls short of full guidance.

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

suggest_queue_slotsSuggest Queue SlotsB
Read-onlyIdempotent
Inspect

Suggest reusable queue slots derived from best-time insights for one or more platforms.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
timezoneNoOptional IANA timezone for the suggested local queue times.
platformsNoOptional platform list. If omitted, suggestions may be generated for all supported platforms.
slotsPerPlatformNoHow many suggested slots to return per platform.
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the behavioral detail that slots are 'derived from best-time insights', which is useful. However, it does not disclose fallback behavior, preconditions, or the format of returned slots.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the action ('Suggest reusable queue slots') and adds a key qualifier. No redundant wording or restating of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description carries the burden of explaining what the tool returns. It only says 'suggest reusable queue slots', leaving unclear what a slot looks like, how many are returned, or how they relate to scheduling workflows. Given the tool's complexity and 4 parameters, this is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all four parameters documented in the input schema. The description adds no additional parameter-level meaning beyond saying 'one or more platforms', which is already expressed in the platforms parameter description. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Suggest') and a clear resource ('reusable queue slots'), further qualified by 'derived from best-time insights' and 'one or more platforms'. This distinguishes it from sibling tools like suggest_next_schedule_time (single suggestion) and get_best_times (insights).

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

Usage Guidelines2/5

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

The description gives no explicit guidance on when to use this tool versus alternatives. It implies use for multiple platforms via 'one or more platforms', but does not mention the closely related sibling suggest_next_schedule_time or any exclusion criteria.

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

summarize_mentionsSummarize MentionsAInspect

Cluster and summarize recent social mentions by theme and sentiment using AI.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax mentions to analyze (default: 30, max: 50)
sinceNoISO date string — only include mentions after this date
platformNoFilter to a specific platform
keyword_idNoFilter to mentions matching a specific keyword
Behavior3/5

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

Annotations already signal non-read-only (readOnlyHint=false), potential side effects (openWorldHint=true), non-idempotency, and non-destructiveness. The description adds 'using AI' as a behavioral trait but does not disclose costs, non-determinism, or what the tool does with empty/edge-case inputs. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that packs the core purpose into a compact statement. Every word contributes to the meaning, with no filler or redundant phrases.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description should hint at the return format; it mentions 'theme and sentiment' but not whether the output is a text narrative or structured clusters. The tool has 4 optional parameters and no required fields, which is simple, but the absence of output details leaves the agent guessing about the result structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not expand on parameter semantics beyond the schema, but the schema is self-sufficient with clear parameter descriptions. No extra value is added, but none is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Cluster and summarize'), the resource ('recent social mentions'), and the method ('by theme and sentiment using AI'). This distinguishes it from sibling tools like get_analytics or get_inbox_summary by specifying a unique output style and domain.

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

Usage Guidelines3/5

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

The description implies when to use this tool (when a thematic and sentiment-based summary of social mentions is needed) but does not explicitly contrast it with alternatives or mention exclusions. It lacks direct guidance on when not to use it, which is a minor gap given the large sibling list.

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

trigger_scheduled_postTrigger Scheduled PostAInspect

Manually trigger a scheduled post to publish immediately.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
scheduleIdYesThe ID of the scheduled post to trigger

Output Schema

ParametersJSON Schema
NameRequiredDescription
isErrorNo
resultsNo
successNo
errorMessageNo
totalPlatformsNo
followUpSuggestionsNo
successfulPlatformsNo
Behavior3/5

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

Annotations already convey that this is a non-read-only, non-idempotent mutation. The description adds the 'publish immediately' side effect, but it does not disclose potential irreversible consequences or external platform effects beyond what openWorldHint hints at. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the action and result without any redundant detail. It is appropriately brief for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a clear purpose, a simple parameter set (one required), and an output schema exists, so return values are presumably documented. While error scenarios (e.g., schedule not found) are not mentioned, the description is adequate for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover 100% of the parameters, including team_id's scope semantics and scheduleId's purpose. The tool description adds no additional parameter-level meaning, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('trigger') and resource ('scheduled post') along with the immediate outcome ('publish immediately'), making the action unambiguous. It clearly distinguishes this from scheduling, editing, or deleting a post.

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

Usage Guidelines4/5

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

The description implies a clear use case: manually publishing a scheduled post ahead of its scheduled time. It does not explicitly exclude alternatives like retry_scheduled_post, but the context is understandable without needing additional guidance.

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

trigger_workflowTrigger WorkflowCInspect

Manually trigger a workflow run.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputDataNoInput data to pass to the workflow run
workflowIdYesWorkflow ID to trigger
Behavior2/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, so the agent knows this is a non-destructive write operation. However, the description adds no behavioral detail about side effects, asynchronous execution, return values, or required permissions, which is a notable gap for a mutation tool without an output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no wasted words. It is front-loaded and efficient, though slightly terse in scope of information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without an output schema, the description should explain what happens after triggering (e.g., returns a run ID, starts async execution). It does not. It also lacks any context about prerequisites or effects, making it incomplete for an agent to fully anticipate the tool's behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides full descriptions for both parameters (workflowId and inputData), so the description doesn't need to add much. It adds no extra nuance beyond the schema, but the schema itself is adequate, giving a baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'trigger' and the resource 'workflow run', making the purpose immediately understandable. However, it does not explicitly differentiate from sibling tools like trigger_scheduled_post or create_workflow, though the 'manually' qualifier hints at on-demand execution.

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

Usage Guidelines2/5

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

No explicit guidance is given for when to use this tool versus alternatives. The word 'manually' implies on-demand triggering, but there are no clear contextual cues, exclusions, or mentions of prerequisites, leaving the decision to the agent's inference.

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

update_ad_campaignUpdate Ad CampaignAInspect

Update campaign settings (name, budget, dates, status).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew campaign name
statusNoChange campaign status
endDateNoUpdated end date
campaignIdYesCampaign ID
budgetAmountNoUpdated budget amount
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, indicating a write operation that is not destructive. The description adds no behavioral context beyond this, such as details about partial updates, idempotency, or side effects. It is consistent with annotations but provides no extra value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that is front-loaded with the primary action and lists the key updatable fields. Every word earns its place, with no redundancy or unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple update tool with 5 parameters and no output schema, the description is minimally adequate. It does not explicitly state that only campaignId is required or that other fields are optional, but the schema covers that. It also does not mention what the response contains, but for a straightforward update this may be acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all parameters. The description lists 'name, budget, dates, status' which map to the parameters but adds no additional meaning beyond the schema. The baseline of 3 applies since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Update campaign settings' with a specific verb and resource, and lists the key fields (name, budget, dates, status). It distinguishes from sibling tools like create_ad_campaign and list_ad_campaigns by indicating a modify operation on an existing campaign.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives like create_ad_campaign or get_ad_performance. It does not mention prerequisites, exclusions, or scenarios where another tool would be preferred. The context is implied only by the tool name.

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

update_agent_policyUpdate Agent PolicyAInspect

Create or update a policy/guardrail for an agent.

Policy types: • brand_safety - Content must align with brand guidelines • platform_compliance - Must follow platform ad policies • approval_gate - Require human approval before execution • budget_limit - Cap spending or resource usage • content_filter - Filter certain topics or language

ParametersJSON Schema
NameRequiredDescriptionDefault
rulesYesPolicy rules
activeNoWhether policy is active
agentIdYesAgent to set policy for
policyTypeYesPolicy type
Behavior3/5

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

Annotations indicate write access (readOnlyHint=false) and non-destructive hint, which aligns with the description's 'create or update' wording. The description adds behavioral context by explaining what each policy type does (e.g., approval_gate requires human approval), but it does not disclose whether updates replace or merge existing policies, leaving a transparency gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a clear opening statement followed by a bulleted list of the five policy types. Every sentence and bullet adds meaningful information, with no redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, and the description does not mention return values or side effects. It also lacks details on how updates affect existing policies (replace vs. merge), which is important for a mutation tool. However, the parameter descriptions and policy type explanations cover much of the necessary context, making it adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema description coverage, the baseline is 3. The description goes beyond the schema by providing full semantics for the policyType enum values (e.g., brand_safety – 'Content must align with brand guidelines'), which helps agents construct valid policyType selections. It does not add detail for rules or active, but those are already adequately described in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create or update a policy/guardrail') and the target resource ('for an agent'), distinguishing it from read-only sibling tools like get_agent_policies. The enumeration of policy types with practical meanings adds specificity and confirms it is the tool for managing agent guardrails.

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

Usage Guidelines4/5

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

The description implies when to use the tool—whenever an agent's policy needs to be created or updated—by listing the policy types that can be set. It does not explicitly mention alternatives or exclusions (e.g., 'to view policies use get_agent_policies'), but the context is clear given the sibling list includes a read-only counterpart.

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

update_calendar_eventUpdate Calendar EventA
Idempotent
Inspect

Update one calendar event by rescheduling it, changing status, reassigning it, or storing metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for eventId.
postIdNoCompatibility alias when the calendar event maps directly to a scheduled post.
statusNoUpdated event status.
eventIdNoCalendar event ID or backing scheduled post ID.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
metadataNoOptional event metadata patch.
assigneeIdNoOptional assignee user ID.
scheduledAtNoUpdated ISO 8601 schedule time for the event.
Behavior3/5

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

Annotations already convey readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds context about update categories but does not disclose deeper behavioral traits like partial update semantics or effect on existing event data. This falls in line with the baseline for tools with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that lists the purpose and key operations without redundancy. It is appropriately sized for the tool's complexity and wastes no words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich parameter schema and annotations, the description covers the core intent well. It does not address return values (no output schema), but the absence of output schema and the presence of comprehensive parameter descriptions make the description adequate for an update tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema fully documents all parameters. The description merely summarizes categories (rescheduling, status, assignee, metadata) that are already present in the schema, adding no new meaning beyond a high-level grouping.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Update' with the specific resource 'one calendar event' and enumerates the types of updates: rescheduling, changing status, reassigning, storing metadata. The word 'one' distinguishes it from sibling tools like bulk_update_calendar_events, making the purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies usage for single event updates but does not explicitly provide when-to-use vs alternatives. It lacks a direct reference to bulk_update_calendar_events or other sibling tools, so the guidance is only implicit through the word 'one'.

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

update_conversationUpdate ConversationBInspect

Update conversation status, priority, assignment, or tags.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoSet tags
statusNo
priorityNo
sentimentNo
assignedToNoAssign to team member ID
conversationIdYesConversation ID
Behavior3/5

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

The description does not contradict the annotations (readOnlyHint=false, openWorldHint=true, destructiveHint=false). The annotations already convey that this is a write operation, and the description adds a list of updatable fields, which is more parameter-related than behavioral. No additional behavioral context is provided, such as partial update semantics, side effects, or return behavior, but the annotations cover basic safety traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that immediately states the action and the affected fields. It contains no fluff or unnecessary detail, making it highly concise. The omission of sentiment is a completeness issue, not a conciseness issue.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with 6 parameters and no output schema, this description is too brief. It omits the sentiment parameter, doesn't clarify whether updates are partial or full replacements, and provides no behavioral or return-value context. An agent relying solely on this description would be under-informed about the full scope of the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50%. The description mentions status, priority, assignment, and tags, but omits sentiment and conversationId. It adds some context by echoing these field names, but doesn't explain their value ranges (enums are already in the schema) or compensate for the missing sentiment description. This is similar to a moderate coverage scenario where the description provides marginal value but not full compensation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'update' with the resource 'conversation' and lists the updatable fields (status, priority, assignment, tags). This clearly distinguishes it from read-only siblings like get_conversation and list_conversations, even though it doesn't explicitly name alternatives. The purpose is unambiguous.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. There's no mention of exclusions, prerequisites, or comparisons to sibling tools like reply_to_conversation or get_conversation. The usage context is only implied by the verb 'update'.

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

update_library_itemUpdate Library ItemBInspect

Update an existing content library item.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe content library item ID
tagsNoTags
textNoNew content text
typeNoContent type
titleNoNew title
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
categoryNoCategory
mediaUrlNoMedia URL
evergreenEnabledNoEnable evergreen
evergreenIntervalDaysNoRepublish interval in days
Behavior2/5

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

Annotations already indicate this is a write operation (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds only that the item must exist, but fails to disclose key behavioral nuances such as whether the update is partial (only provided fields changed) or full (omitted fields cleared), or how errors like non-existent IDs are handled. With no output schema, this gap is significant.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence containing only essential information. It is front-loaded with the verb 'Update' and the resource, with zero fluff. Every word contributes to conveying the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 10 parameters, many optional, and no output schema, this tool is moderately complex. The description is too sparse to be fully complete. It does not mention that this is likely a partial update (given all fields except id are optional), what the return value looks like, or how to handle cases where the item doesn't exist. Sibling tools like create_library_item and delete_library_item exist but the description does not clarify usage boundaries.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage, with each parameter having its own description. The tool description does not add any additional parameter-level meaning, so the baseline score of 3 is appropriate. It does not clarify relationships between parameters (e.g., whether evergreenEnabled and evergreenIntervalDays are dependent) but that's not required for this dimension.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Update') and the resource ('an existing content library item'), which is specific and distinguishes it from sibling tools like create_library_item, delete_library_item, and get_library_item. The 'existing' qualifier reinforces that it modifies an already-created item.

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

Usage Guidelines3/5

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

The phrase 'existing content library item' implies it is used when you need to modify an item that already exists, providing basic usage context. However, it does not explicitly state when not to use it, mention alternatives (e.g., create_library_item for new items), or outline any prerequisites beyond the item existing.

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

update_recurring_seriesUpdate Recurring SeriesA
Idempotent
Inspect

Update the recurrence rule or end date for future occurrences in a recurring series.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCompatibility alias for seriesId.
team_idNoTeam ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.
seriesIdNoRecurring series parent scheduled post ID.
recurrenceRuleNoReplacement RRULE string.
recurrenceEndDateNoReplacement ISO 8601 end date for the series.
Behavior4/5

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

The description adds the key behavioral detail that changes apply only to 'future occurrences', which is not captured in the annotations. Combined with annotations (non-readonly, non-destructive, idempotent), this provides a clear picture of the tool's 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that immediately states the tool's purpose and scope. It is concise and front-loaded with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple update tool with full schema coverage and annotations, the description sufficiently explains what the tool does and its scope ('future occurrences'). It does not explain return values, but no output schema is present and the core behavior is adequately covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides descriptions for all 5 parameters (100% coverage). The overall description does not add parameter-specific meaning beyond what the schema contains, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool updates recurrence rules or end dates for future occurrences in a recurring series. It uses a specific verb and resource, and distinguishes itself from sibling tools like cancel_recurring_series.

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

Usage Guidelines4/5

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

The description provides clear context: use this when you need to modify the recurrence rule or end date for future occurrences. However, it does not explicitly mention alternatives or when not to use it, though the context implies a distinction from canceling or editing individual posts.

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

update_workflowUpdate WorkflowCInspect

Update a workflow's configuration or status.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
stepsNo
activeNo
workflowIdYesWorkflow ID
Behavior2/5

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

The annotations already indicate this is a write operation (readOnlyHint=false) and non-destructive. The description adds no further behavioral details, such as whether updates are partial or full replacements, idempotency, or side effects. Given openWorldHint=true, more context is warranted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence and is efficient, but it is under-specified. It avoids verbosity but sacrifices necessary detail, making it too terse for a tool with multiple configuration parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters, no output schema, and minimal annotations, the description is not complete enough. It does not clarify return values, error conditions, or how the update is applied. The 'steps' parameter is especially opaque, risking incorrect usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 25%, with only workflowId described. The description does not explain the semantics of name, steps, or active. The phrase 'configuration or status' gives a vague hint but does not compensate for the missing schema descriptions, particularly for the 'steps' array.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what the tool does: 'Update a workflow's configuration or status.' The verb and resource are specific, and it distinguishes from siblings like create_workflow, delete_workflow, and trigger_workflow. However, it doesn't specify which configuration fields are affected, leaving some ambiguity.

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

Usage Guidelines1/5

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. It does not indicate prerequisites or scenarios where other workflow tools like trigger_workflow or create_workflow would be more appropriate.

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

upload_mediaUpload MediaAInspect

FOR CLAUDE DESKTOP ONLY (with filesystem access). For Claude.ai/web: Use create_upload_session instead - it provides a browser upload link.

Upload local media to cloud storage, returning a public HTTPS URL.

WHEN TO USE: • Instagram, LinkedIn, Threads, X: REQUIRED for local files before calling publish_content • TikTok: NOT NEEDED - pass local path directly to publish_content

SUPPORTED FORMATS: • Images: jpg, png, gif, webp (max 10MB) • Videos: mp4, mov, webm (max 100MB)

Returns { url: 'https://...' } for use in publish_content mediaUrl parameter.

ParametersJSON Schema
NameRequiredDescriptionDefault
folderNoOptional folder name for organizing uploads
filePathNoLocal file path to upload (e.g., ~/Photos/image.jpg)
mediaUrlNoExisting public URL to validate (alternative to filePath)
Behavior4/5

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

The description adds meaningful behavior beyond annotations: platform restrictions (Claude Desktop), max file sizes (10MB images/100MB videos), supported formats, and the exact return value shape ({ url: 'https://...' }). These details are not in the annotations and give the agent practical expectations. The only missing piece is failure/error behavior, but annotations already cover the write/non-idempotent nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with clear headers (WHEN TO USE, SUPPORTED FORMATS, Returns) and every sentence earns its place. It is detailed without being redundant. The length is justified by the need to communicate platform-specific rules and constraints.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers platform limitations, formats, size limits, return value, and integration context, making it quite complete for a tool with three optional-looking parameters. The notable gap is the ambiguity around parameter requirements (one of filePath/mediaUrl likely needed) and mutual exclusivity, which is not stated. This prevents a perfect score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters (folder, filePath, mediaUrl) with descriptions, so the baseline is 3. The description adds value by explaining that mediaUrl is an 'alternative to filePath' and connecting the return URL to the publish_content mediaUrl parameter. However, it fails to explicitly state that either filePath or mediaUrl is required (and arguably mutually exclusive), which would be helpful given the schema lists no required parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a clear, specific statement: 'Upload local media to cloud storage, returning a public HTTPS URL.' It further distinguishes itself from sibling tools by restricting usage to 'FOR CLAUDE DESKTOP ONLY' and naming the alternative ('For Claude.ai/web: Use create_upload_session instead'). This precisely identifies the tool's function and scope.

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

Usage Guidelines5/5

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

The 'WHEN TO USE' section provides explicit platform-specific guidance: required for Instagram, LinkedIn, Threads, X before publish_content, and explicitly not needed for TikTok (pass local path directly). It also clearly states when NOT to use the tool (Claude.ai/web) and names the alternative tool. This is exemplary usage guidance.

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

upvote_productUpvote Product Hunt ProductA
Destructive
Inspect

Upvote a product on Product Hunt.

REQUIREMENTS: • Must have Product Hunt account connected • Write access requires app whitelisting by Product Hunt

Provide the Product Hunt post ID (not the slug).

ParametersJSON Schema
NameRequiredDescriptionDefault
postIdYesThe Product Hunt post ID to upvote
Behavior4/5

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

Annotations already mark this as destructive and non-idempotent. The description adds value by disclosing account requirements and whitelisting prerequisites that are not in annotations. It does not contradict annotations and clarifies the input type, but does not discuss side effects like upvote limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, front-loaded with the action, and uses bullet points for requirements. Every sentence earns its place; no fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple mutation tool with one parameter and no output schema, the description covers purpose, prerequisites, and input guidance. It is sufficiently complete for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single postId parameter, so baseline is 3. The description adds meaning by stating 'not the slug', which explicitly disambiguates the accepted format beyond the schema's 'post ID' description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Upvote a product on Product Hunt.' It clearly states the action and target, and distinguishes it from sibling tools by being the only upvote-specific tool. No ambiguity.

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

Usage Guidelines4/5

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

Provides explicit prerequisites (connected account, app whitelisting) and input format guidance ('Provide the Product Hunt post ID (not the slug)'). However, it does not mention alternatives or when-not-to-use, though no sibling directly competes for upvoting.

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

validate_contentValidate ContentA
Read-onlyIdempotent
Inspect

Validate content against platform requirements BEFORE publishing.

USE THIS WHEN: • Unsure if content will work on target platforms • Publishing to multiple platforms with different requirements • Want to catch errors before attempting publish

Returns specific errors (e.g., 'TikTok requires video', 'Instagram needs media') and warnings (e.g., 'text close to character limit').

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes
platformsYesPlatforms to validate against

Output Schema

ParametersJSON Schema
NameRequiredDescription
validNo
errorsNo
isErrorNo
warningsNo
platformsNo
errorMessageNo
followUpSuggestionsNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the agent knows it's safe. The description adds behavioral value by stating it returns specific errors and warnings with examples, which is useful beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, front-loaded with the main action, and uses a scannable bullet list for usage scenarios. Every sentence earns its place, and the examples are illustrative without padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity, the annotations cover safety, the schema documents parameters in detail, and an output schema exists, the description adds the essential usage context. It doesn't explain all edge cases, but it's sufficient for an agent to know when and why to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description says almost nothing about parameters. With 50% schema description coverage, the description should compensate by clarifying what 'content' and 'platforms' mean, but it only refers to them generically. The examples hint at content requirements but don't explain the structure or required fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: 'Validate content against platform requirements BEFORE publishing.' It distinguishes itself from siblings like publish_content and preview_content by emphasizing pre-publish validation and gives concrete examples of errors/warnings.

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

Usage Guidelines4/5

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

Explicit 'USE THIS WHEN' bullets provide clear contexts (unsure about platform fit, multi-platform publishing, catching errors before publish). Doesn't explicitly list when not to use or alternatives, but the context is strong enough to guide selection versus siblings.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    AI-powered social media posting across 14 platforms. Post to Twitter, Instagram, TikTok, Facebook, LinkedIn, YouTube and more with one command. AI adapts content per platform, schedules posts, and generates 30-day content calendars.
    Last updated
    6
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Enables AI assistants to manage social media publishing across platforms like LinkedIn, Twitter, Facebook, Instagram, Threads, and Bluesky.
    Last updated
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI assistants to schedule and publish social media posts to platforms like Instagram, TikTok, YouTube, LinkedIn, Facebook, X, Threads, and Pinterest using natural language.
    Last updated
    33
    297
    2
    MIT
  • A
    license
    -
    quality
    A
    maintenance
    Social media scheduling and publishing for AI agents. 17 validation-first tools to post to X, LinkedIn, Instagram, TikTok, YouTube, Reddit, Discord, Telegram, and more through one connected workspace.
    Last updated
    158
    70
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources