Enterprise Threads MCP Server
Provides comprehensive management of Threads (by Meta) including content creation, analytics, engagement optimization, and automation tools for professional social media management.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Enterprise Threads MCP Serverget my profile insights for last 30 days"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐ Enterprise Threads MCP Server
A comprehensive MCP (Model Context Protocol) server for professional Threads management with enterprise-grade analytics, AI-powered optimization, and automation features.
๐ฏ Enterprise-Ready Platform
Complete social media management solution with advanced analytics, content optimization, and professional automation tools for businesses and power users.
Related MCP server: meta-mcp
โจ Enterprise Features
๐ Phase 3A: Enhanced Analytics & Performance Analysis
Advanced Insights: Demographic breakdowns, geographic analysis, time-series data
Audience Analytics: Detailed follower demographics and behavior patterns
Engagement Trends: Comprehensive trend analysis with growth projections
AI-Driven Optimization: Optimal posting times and performance recommendations
Business Intelligence: Professional reporting with comprehensive metrics
๐ Phase 3B: Professional Content Creation & Automation
AI Hashtag Suggestions: Smart, industry-specific hashtag recommendations
Content Optimization: Professional analysis with scoring and recommendations
Advanced Scheduling: Automation with optimal timing and recurring posts
Bulk Operations: Performance analysis, content audit, and data export
Website Integration: Embed feeds, share buttons, and cross-platform sync
Carousel Posts: Multi-media posts with accessibility features
๐ฏ Core Management Features
Content Management: Create, view, search, and delete your threads
Analytics Dashboard: Real-time insights and performance metrics
Interaction Management: Handle replies, mentions, and user relationships
Search & Discovery: Advanced search with filters and content discovery
Publishing Control: Rate limits, scheduling, and automation
๐ Quick Start
Installation
npm install -g threads-mcp-serverโ ๏ธ IMPORTANT: Business Account Required
This MCP server requires a verified Instagram Business Account with proper API access.
Prerequisites Setup
1. Instagram Business Account:
Convert your Instagram to a Business Account
Complete Meta Business verification (1-3 days)
Ensure you have 100+ followers for demographic analytics
2. Meta Developer Setup:
Create a Meta Developer App at developers.facebook.com
Add "Threads API" product to your app
Request these required scopes:
threads_basicthreads_content_publishthreads_manage_insightsthreads_read_replies
3. OAuth Access Token:
Complete OAuth flow with your business Instagram account
Generate an access token with all required scopes
Configuration
Create a .env file with your Threads access token:
THREADS_ACCESS_TOKEN=your_access_token_hereโ Validate Your Setup
After configuration, test your setup:
# Run the MCP server and test
@threads validate_setupThis will check:
โ Token validity
โ Required scopes
โ Business account access
โ API permissions
Follow any recommendations provided by the validation tool.
Claude Desktop Setup
Add to your Claude Desktop configuration:
{
"mcpServers": {
"threads": {
"command": "threads-mcp-server",
"env": {
"THREADS_ACCESS_TOKEN": "your_access_token_here"
}
}
}
}๐ ๏ธ Available Tools
Profile & Account Management
get_my_profile
Get your Threads profile information
{
fields?: string[] // Profile fields to retrieve
}get_my_insights
Get analytics for your account
{
metrics: string[]; // e.g., ['followers_count', 'posts_count']
period?: string; // 'day', 'week', 'days_28', 'month', 'lifetime'
since?: string; // ISO 8601 date
until?: string; // ISO 8601 date
}get_publishing_limit
Check your current posting quotas and limits
{} // No parameters neededContent Management
get_my_threads
Get your own threads/posts
{
fields?: string[]; // Thread fields to retrieve
limit?: number; // Number of threads to get
since?: string; // ISO 8601 date filter
until?: string; // ISO 8601 date filter
}publish_thread
Create and publish a new thread using Threads API two-step process
{
text: string; // Thread content (required)
media_type?: string; // 'TEXT', 'IMAGE', 'VIDEO'
media_url?: string; // URL for media content
location_name?: string; // Location tagging
}Note: This function implements the proper two-step Threads publishing flow: first creates a media container, then publishes it. The response includes both the container ID and final thread ID.
delete_thread
Delete one of your threads
{
thread_id: string; // ID of your thread to delete
}search_my_threads
Search within your own threads
{
query: string; // Search keywords
limit?: number; // Threads to search through
}Thread Interactions
get_thread_replies
Get replies to your specific thread
{
thread_id: string; // Your thread ID
fields?: string[]; // Reply fields to retrieve
}manage_reply
Hide or show replies to your threads
{
reply_id: string; // Reply ID to manage
hide: boolean; // true to hide, false to show
}get_mentions
Get threads where you are mentioned
{
fields?: string[]; // Fields to retrieve
limit?: number; // Number of mentions
}create_reply
Reply to a specific thread or post
{
reply_to_id: string; // Thread/post ID to reply to (required)
text: string; // Reply content (required)
media_type?: string; // 'TEXT', 'IMAGE', 'VIDEO'
media_url?: string; // Media URL for IMAGE/VIDEO
reply_control?: string; // 'everyone', 'accounts_you_follow', etc.
}Note: Uses two-step process like publish_thread. Creates real replies that appear in thread conversations.
create_thread_chain
Create connected reply chains for threaded conversations
{
parent_thread_id: string; // Starting thread ID (required)
replies: Array<{ // Array of replies (required)
text: string; // Reply text
reply_control?: string; // Who can reply to this reply
}>;
}Note: Creates true threaded conversations where each reply responds to the previous one, enabling Twitter-like thread chains.
Analytics & Performance
get_thread_insights
Get performance metrics for your specific thread
{
thread_id: string; // Your thread ID
metrics: string[]; // e.g., ['views', 'likes', 'replies']
period?: string; // Time period for metrics
}๐ง Setup Validation & Diagnostics
validate_setup
NEW in v5.0.0 - Comprehensive setup validation and diagnostics
{
check_scopes?: boolean; // Check if all required scopes are present
required_scopes?: string[]; // Custom list of required scopes to check
}What it checks:
โ Access token validity
โ Required API scopes
โ Business account verification
โ Profile access permissions
๐ Provides specific setup recommendations
Example response:
{
"status": "valid",
"token_validation": { "valid": true },
"scope_validation": { "hasRequired": true, "missing": [] },
"profile_access": { "success": true },
"setup_recommendations": ["โ
Setup appears to be correct!"]
}๐ข Enterprise Analytics & Automation Tools (Phase 3)
๐ Advanced Analytics
get_enhanced_insights
Get comprehensive analytics with demographic breakdowns
{
thread_id?: string; // Optional thread ID for media insights
metrics: string[]; // views, likes, replies, followers_count, follower_demographics
period?: string; // day, week, month, lifetime
breakdown?: string[]; // country, city, age, gender
since?: string; // ISO 8601 start date
until?: string; // ISO 8601 end date
}get_audience_demographics
Detailed audience demographic analysis
{
categories: string[]; // country, age, gender, city
period?: string; // day, week, month, lifetime
breakdown?: string; // Demographic breakdown level
}get_engagement_trends
Time-series analysis of engagement patterns
{
metrics: string[]; // views, likes, replies, shares
timeframe?: string; // week, month, quarter
granularity?: string; // daily, weekly
}get_follower_growth_analytics
Follower growth analysis with projections
{
period?: string; // month, quarter, year
include_projections?: boolean; // Include growth forecasts
projection_days?: number; // Days to project forward
}analyze_best_posting_times
AI-driven optimal posting time analysis
{
analysis_period?: string; // week, month, quarter
timezone?: string; // User's timezone
content_type?: string; // general, promotional, educational
}get_content_performance_report
Comprehensive performance reporting
{
report_type: string; // summary, detailed, top_performers
period: string; // week, month, quarter
metrics: string[]; // Performance metrics to include
include_comparisons?: boolean; // Period-over-period comparisons
}๐ Professional Content Creation & Automation
auto_hashtag_suggestions
AI-powered hashtag recommendations
{
content: string; // Content to analyze
media_url?: string; // Optional media for visual analysis
suggestion_settings?: {
count?: number; // Number of suggestions (1-10)
style?: string; // trending, niche, branded, mixed
exclude_overused?: boolean; // Filter out overused hashtags
industry_focus?: string; // Industry/niche focus
}
}content_optimization_analysis
Professional content analysis with recommendations
{
content: string; // Content to analyze
analysis_type?: string; // engagement, reach, accessibility, seo, comprehensive
target_audience?: {
demographics?: string[]; // Target demographic groups
interests?: string[]; // Target interests
timezone?: string; // Primary audience timezone
};
optimization_goals?: string[]; // increase_engagement, expand_reach, etc.
}schedule_post
Advanced scheduling with automation features
{
text: string; // Post content
media_url?: string; // Optional media URL
schedule_time?: string; // ISO 8601 datetime for scheduling
automation_settings?: {
auto_optimize_time?: boolean; // Auto-optimize posting time
recurring?: string; // none, daily, weekly, monthly
auto_hashtags?: boolean; // Auto-add relevant hashtags
content_variation?: boolean; // Create variations for recurring posts
};
timezone?: string; // Timezone for scheduling
}create_carousel_post
Multi-media carousel posts with accessibility
{
media_urls: string[]; // 2-10 image/video URLs
text: string; // Post caption
alt_texts?: string[]; // Alt text for accessibility
carousel_settings?: {
auto_alt_text?: boolean; // Generate alt text automatically
aspect_ratio?: string; // square, portrait, landscape
thumbnail_selection?: string; // auto, first, custom
}
}bulk_post_management
Bulk operations and content management
{
action: string; // analyze_performance, content_audit, export_data
filters?: {
date_range?: { start: string; end: string };
content_type?: string; // text, image, video, carousel
performance_threshold?: string; // low, medium, high
};
bulk_operations?: {
add_hashtags?: string[]; // Hashtags to add
update_alt_text?: boolean; // Update alt text
archive_low_performers?: boolean; // Archive underperforming posts
}
}website_integration_setup
Website integration and cross-platform sync
{
integration_type: string; // embed_feed, share_buttons, webhook_setup, auto_crosspost
website_config?: {
domain?: string; // Website domain
platform?: string; // wordpress, shopify, custom, react, vue, angular
styling_preferences?: {
theme?: string; // light, dark, auto
layout?: string; // grid, list, carousel
post_count?: number; // Number of posts to display
}
};
automation_settings?: {
auto_sync?: boolean; // Auto-sync new posts
crosspost_enabled?: boolean; // Enable cross-posting
webhook_url?: string; // Webhook endpoint URL
}
}๐ Test Results
Latest Test Results: โ 10+ functions working + Complete Phase 1 implementation!
Core Functions
Tool | Status | Notes |
| โ Working | Full profile data |
| โ Working | Returns thread list |
| โ Working | Client-side filtering |
| โ Working | Quota information |
| โ Working | Successfully publishes! |
| โ ๏ธ Limited | Error 400 (endpoint issue) |
| โ ๏ธ Limited | Error 500 (permission/endpoint) |
Phase 1: Complete Engagement & Advanced Posting (NEW)
Tool | Status | Notes |
| โ Phase 1 | Creates real replies! |
| โ Phase 1 | True threaded conversations! |
| โ Phase 1A | Quote tweets with commentary! |
| ๐ง Phase 1A | Implemented with fallback patterns |
| ๐ง Phase 1A | Implemented with fallback patterns |
| ๐ง Phase 1A | Implemented with fallback patterns |
| ๐ง Phase 1A | Implemented with fallback patterns |
| ๐ง Phase 1A | Implemented with fallback patterns |
| โ Phase 1B | Advanced posts with hashtags! |
| โ Phase 1B | Future post scheduling! |
Total Tools: 21 functions (11 original + 10 new Phase 1 features)
๐ก Usage Examples
Content Creation & Management
# Publish a new thread
@threads publish "Just testing my personal Threads manager! ๐"
# Get my recent threads
@threads get my recent threads limit 10
# Search my content
@threads search "project" in my threadsPhase 1A: Engagement & Interaction
# Quote another post with your commentary
@threads quote post 123456 "This is exactly what I was thinking! Adding my perspective..."
# Like and unlike posts
@threads like post 123456
@threads unlike post 123456
# Repost content (share to your timeline)
@threads repost thread 123456
@threads unrepost thread 123456
# Get engagement data
@threads get likes for post 123456 limit 50Phase 1B: Advanced Posting
# Create post with hashtags and restrictions
@threads create advanced post "My latest project update!"
hashtags: ["WebDev", "MCP", "Threads"]
mentions: ["techfriend", "developer"]
reply_control: "followers_only"
location: "San Francisco"
# Schedule posts for future publishing
@threads schedule post "Good morning! โ๏ธ"
for: "2025-08-25T08:00:00+07:00"
reply_control: "everyone"Reply & Thread Management
# Reply to a specific thread
@threads reply to thread 123456 "Great post! Thanks for sharing"
# Create a thread chain (multiple connected replies)
@threads create chain from thread 123456 with replies:
- "First point in my response ๐งต"
- "Second point continuing the thought"
- "Final point wrapping up"
# Get replies to my thread
@threads get replies to my thread 123456Analytics & Performance
# Check my publishing limits
@threads check my publishing quotas
# Get my profile stats
@threads get my profile information
# Get thread performance (if available)
@threads get insights for thread 123456Interaction Management
# Get replies to my thread
@threads get replies for my thread 123456
# Hide a reply
@threads hide reply 789012
# Get my mentions
@threads get where I am mentioned๐ง Technical Details
Personal Focus Benefits
No External User Limitations: Only works with your own content
Full Access: All permissions work on your own data
Reliable: No privacy restrictions or access denials
Fast: Direct API calls without workarounds
Error Handling
Automatic retry for transient errors
Clear error messages for permission issues
Graceful handling of API limitations
Rate Limiting
Built-in exponential backoff
Respects Threads API rate limits
Smart retry logic for temporary failures
๐จ Important Notes
Permissions Required
Ensure your Threads app has these permissions enabled:
threads_basic- Basic thread accessthreads_content_publish- Create/publish contentthreads_delete- Delete threads (if using delete functionality)threads_manage_insights- Analytics accessthreads_manage_replies- Reply management
Limitations
Delete Function: Currently returns 400 error (API endpoint needs verification)
Insights: Some analytics endpoints return 500 error (may need additional permissions)
Personal Only: Designed only for your own content management
๐ Roadmap
Planned Improvements
Fix delete thread endpoint
Resolve insights API issues
Add batch operations
Enhanced search filters
Thread scheduling
Content analytics dashboard
๐ค Contributing
This is a focused personal management tool. Feature requests should align with personal Threads management use cases.
๐ License
MIT
๐ฏ Perfect For:
Content Creators: Manage your Threads content efficiently
Social Media Managers: Handle personal brand accounts
Analysts: Track your own content performance
Developers: Integrate Threads into personal workflows
Focus: Your content, your control, your insights! ๐
Available Tools
44 toolsanalyze_best_posting_timesC
AI-driven analysis of optimal posting times based on engagement
| Name | Required | Description | Default |
|---|---|---|---|
| timezone | No | Timezone for recommendations (e.g., "America/New_York") | |
| content_type | No | Content type to analyze | |
| analysis_period | No | Historical data period for analysis |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'AI-driven analysis' but does not explain what action the tool performs (e.g., whether it returns a set of recommended times, how it processes engagement data, or whether it is read-only). It also does not disclose any effects on data or system state, leaving significant opacity for an analysis tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the core purpose. It avoids redundant wording and is efficient, though it is brief enough that it might under-specify. Still, it earns its place without padding, so a 4 is warranted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has three parameters, no output schema, and no annotations, so the description must provide sufficient context. It does not explain what the output looks like (e.g., a list of recommended times, a confidence score, or a heatmap), nor does it mention how the analysis period or content type influences results. This is incomplete for an analysis tool that likely returns complex recommendations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter (timezone, content_type, analysis_period) having a description in the schema. The description text adds no additional parameter-specific meaning beyond 'optimal posting times based on engagement', so it does not compensate further. Baseline 3 is appropriate because the schema already carries the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs 'AI-driven analysis of optimal posting times based on engagement', specifying the resource (posting times) and the basis (engagement). It is more specific than the tool name alone and distinguishes itself from sibling analytics tools like get_engagement_trends or get_content_performance_report by focusing on optimal times, though it does not explicitly name those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternative analytics tools. The description only states what it does, not under what circumstances it should be chosen, nor does it mention prerequisites like having sufficient historical data. Sibling tools like get_enhanced_insights or get_engagement_trends may overlap, but there is no differentiation or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_hashtag_suggestionsC
AI-powered hashtag suggestions based on content analysis
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Post content to analyze for hashtag suggestions | |
| media_url | No | Optional media URL for visual analysis | |
| suggestion_settings | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for disclosing behavior. It only notes that suggestions are 'AI-powered' and based on 'content analysis', but omits whether the tool is read-only, if it requires network access, how it handles media URLs, or any potential side effects. This is insufficient for a tool with no structured safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that gets straight to the point. It is appropriately concise, though it sacrifices substance. The structure is clean, but the brevity might be excessive given the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested settings object, no output schema, and no annotations. The description does not explain the return format, how suggestion_settings influence results, or any limitations. This leaves the agent with significant unknowns, making the description incomplete for effective invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67% (content and media_url have descriptions, and suggestion_settings properties are described internally). The description adds no extra meaning beyond the schema, but the schema itself provides decent detail. Since coverage is moderate and the description does not compensate, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's functionโproviding AI-powered hashtag suggestions based on content analysis. While it lacks an explicit verb like 'generate' or 'suggest', the meaning is unambiguous and distinct from sibling tools, which focus on posting, searching, or user management.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention prerequisites, ideal scenarios, or exclusions. The only implied use case is wanting hashtag suggestions, but no explicit contextual advice is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
block_userC
Block a user
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | User ID to block |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. However, it merely restates the tool name and provides no details about effects such as reversibility, side effects on existing relationships, or permissions required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, but this is under-specification rather than conciseness. The single sentence does not add value beyond the tool name and lacks necessary context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema, no annotations), the description fails to mention important behavioral aspects like return value, permanence of the block, or any follow-up actions. It is inadequate for an agent to understand the full impact.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully describes the only parameter user_id with the description 'User ID to block', so schema coverage is 100%. The tool description adds no additional meaning beyond the schema, which is acceptable per baseline rules.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool blocks a user, using a specific verb ('block') and resource ('a user'). It distinguishes from sibling tools like follow_user and unfollow_user, as none involve blocking, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, exclusions, or how blocking differs from following/unfollowing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bulk_post_managementC
Manage multiple posts with bulk operations and analytics
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Bulk operation to perform | |
| filters | No | ||
| bulk_operations | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits on its own, but it provides none. It does not indicate whether operations are read-only or mutating, whether archiving posts is destructive, if permissions are required, or what side effects occur. The schema reveals potential mutations (add_hashtags, update_alt_text, archive_low_performers), but the description is silent about them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise in length but severely under-specified for a tool with three parameters, nested objects, and four distinct actions. It is not front-loaded with the most crucial information and reads as a generic placeholder rather than a focused summary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the toolโmultiple actions, nested filters, and bulk operationsโand the absence of an output schema, the description is hopelessly incomplete. It provides no information about return values, side effects, or behavior for each action, leaving the agent without essential context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description must compensate, but it does not mention parameters at all. The action, filters, and bulk_operations properties are not explained in the description, leaving the agent to infer semantics solely from the schema's partial descriptions. The text adds no value beyond the schema in terms of parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a general purpose of managing multiple posts with bulk operations and analytics, which is clear but vague. It does not specify the concrete actions (analyze performance, bulk edit, content audit, export data) available via the 'action' parameter, and 'manage' is an unspecific verb. It does imply a distinction from single-post sibling tools by using 'bulk', but lacks precision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The description does not mention suitable contexts, prerequisites, or how it differs from analytics-focused siblings like get_content_performance_report or management tools like delete_thread. There are no exclusions or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_optimization_analysisC
Advanced content analysis with optimization recommendations
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content to analyze | |
| analysis_type | No | Type of optimization analysis | |
| target_audience | No | ||
| optimization_goals | No | Optimization objectives |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states generic 'analysis' and 'recommendations' without specifying whether the tool is read-only, how output is structured, what inputs are required (beyond content), or any limitations or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, very concise and front-loaded with the core topic. However, the word 'Advanced' is filler that adds no substantive information, slightly reducing the merit.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters including nested objects and no output schema, this description is too brief. It does not explain what optimization recommendations look like, how different analysis_type values affect the output, or any expected return format, leaving the agent without enough context to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, and the tool descriptions for content, analysis_type, target_audience, and optimization_goals are already fairly clear. The tool description adds no further clarification or examples, so it does not exceed the baseline for good schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys a general purpose of analyzing content and providing optimization recommendations, but lacks a specific verb and does not distinguish it from sibling analytics tools like get_content_performance_report. It is a noun phrase rather than a clear action-oriented statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as get_enhanced_insights or analyze_best_posting_times. The description does not mention any prerequisites, conditions, or situations where another tool 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.
create_carousel_postB
Create multi-media carousel posts with up to 20 items (September 2024 update)
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Post caption text | |
| alt_texts | No | Alt text for each media item (accessibility) | |
| media_urls | Yes | Array of image/video URLs for carousel (2-20 items supported) | |
| carousel_settings | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing side effects and behavior. It only restates the max item limit (already in schema) and includes a date reference. It does not state whether the post is published immediately, requires authentication, or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, efficient and front-loaded. However, the parenthetical '(September 2024 update)' is extraneous and not actionable for an agent, slightly reducing the score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the nested carousel_settings, four parameters, and no output schema, the description is too minimal. It doesn't clarify whether the post is published immediately or drafts, what the return value is, or how to handle failures. This is inadequate for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover all top-level parameters (media_urls, text, alt_texts, carousel_settings). The description adds minimal extra meaning beyond repeating the 20-item limit, so baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (create), the resource (multi-media carousel posts), and a key constraint (up to 20 items). It distinguishes from sibling tools like create_thread_chain or create_post_with_restrictions by focusing on the carousel nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to choose this tool over alternatives. It doesn't mention exclusions, prerequisites, or comparisons with sibling creation tools. Given the many creation siblings, this is a gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_post_with_restrictionsC
Create post with advanced reply and audience restrictions
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The text content of the thread | |
| hashtags | No | Array of hashtags to include (without #) | |
| mentions | No | Array of usernames to mention (without @) | |
| media_url | No | URL of media to include (for IMAGE/VIDEO) | |
| media_type | No | Type of media (default: TEXT) | |
| location_name | No | Location name for location tagging | |
| reply_control | No | Who can reply to this post | |
| audience_control | No | Who can see this post |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It merely states the action and mentions 'restrictions' but does not reveal any side effects, permission requirements, or limitations. The nature of the restrictions and their enforcement is left undefined.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with no redundant wording or fluff. It is efficiently front-loaded, though it could benefit from a brief preview of the restriction options to improve structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter mutation tool with no annotations and no output schema, the description is under-specified. It does not explain what 'advanced' restrictions mean, potential dependencies between parameters, or expected outcomes. The schema covers parameter syntax but the overall tool context remains incomplete for an agent to confidently invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides thorough descriptions for all 8 parameters, including enums for reply_control and audience_control. The description adds no additional parameter-level meaning, so the baseline of 3 applies given the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' and identifies the resource 'post,' with the qualifier 'advanced reply and audience restrictions' distinguishing it from sibling tools like create_thread_chain or create_reply. However, 'advanced' is vague and no explicit sibling names are mentioned, 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.
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 create_thread_chain or publish_thread. It only states the action without any context about when posting with restrictions is appropriate or how it differs from other posting tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_replyC
Reply to a specific thread/post
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Reply text content | |
| media_url | No | URL of media to include (for IMAGE/VIDEO) | |
| media_type | No | Type of media (default: TEXT) | |
| reply_to_id | Yes | ID of the thread/post to reply to | |
| reply_control | No | Who can reply to this reply |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it only restates the core function ('Reply to a specific thread/post') without disclosing any side effects, return values, or constraints. It does not go beyond what the name implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no redundancy. It is front-loaded but may be too terse to provide meaningful guidance, lacking structure like behavior notes or examples.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, 2 enums, no annotations, and no output schema, the description is insufficient. It does not explain return values, the role of media_type, or how reply_control affects visibility, leaving significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Since the schema describes all 5 parameters (100% coverage), the description does not need to add parameter details. The baseline is 3, and the description adds no additional semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Reply') and the target ('specific thread/post'), which is specific and unambiguous. However, it does not explicitly differentiate from sibling tools like manage_reply or quote_post, 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.
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. There is no mention of prerequisites, exclusions, or comparison with siblings like manage_reply or quote_post.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_thread_chainC
Create a thread chain (multiple connected replies)
| Name | Required | Description | Default |
|---|---|---|---|
| replies | Yes | Array of reply texts to create as a chain | |
| parent_thread_id | Yes | ID of the parent thread to start the chain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only restates the basic action. It does not mention side effects, reply ordering, posting behavior, permissions, or reversibility, leaving significant operational uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately and clearly conveys the tool's purpose. There is no redundancy or wasted wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a creation tool with no annotations and no output schema, yet the description is minimal. It does not address important operational details like how replies are ordered, any limits on the chain, or what happens on failure, leaving the agent to infer critical behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents both parameters with descriptive text, so the description does not need to compensate for missing parameter information. The description itself adds no extra parameter clarification, which 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a thread chain and defines it as 'multiple connected replies', which distinguishes it from a single-reply tool like create_reply. However, it does not explicitly name alternatives or provide additional distinguishing details, preventing a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as create_reply or publish_thread. The description only states what the tool does, without any context on appropriate use cases or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_threadB
Delete one of your threads
| Name | Required | Description | Default |
|---|---|---|---|
| thread_id | Yes | ID of the thread to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral disclosure. It only states 'delete' which is inherent from the tool name, and does not disclose irreversibility, whether replies are cascaded, permission requirements, or success/failure behavior. A destructive operation warrants more transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence with no filler or redundancy. It front-loads the verb 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter delete operation, the description captures the core purpose and ownership constraint, but omits details like return behavior or consequences of deletion. Given the lack of output schema and annotations, it is minimally adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for thread_id ('ID of the thread to delete'), so the schema already provides parameter meaning. The description adds no extra semantic detail beyond what the schema states, so per the baseline rule, a 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete one of your threads' clearly states the action (delete) and the resource (threads), and even narrows scope to user's own threads. It distinguishes from sibling tools like publish_thread or get_my_threads because 'delete' is a unique operation among the listed siblings, though it doesn't 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you want to delete one of your threads, but provides no explicit context, prerequisites, or exclusions. It doesn't mention when to prefer this over other tools or any conditions like 'thread must exist' or 'cannot delete others' threads' beyond the implied ownership.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
follow_userC
Follow a user
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | User ID to follow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for disclosing behavioral traits. It only states the action without mentioning side effects, idempotency, authentication needs, or what happens if already following. This is a significant transparency gap for a state-changing operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using three words to convey the core purpose. It is front-loaded and contains no fluff, making it appropriately sized for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema, so the description plus schema provide enough to understand the basic action. However, the lack of any behavioral context (e.g., effects, errors, or prerequisites) prevents it from being fully complete, especially given there are no annotations to fill the gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the single parameter user_id with a description, achieving 100% coverage. The tool description adds no additional param semantics 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Follow a user' uses a specific verb and resource, clearly indicating the action of following a user. It distinguishes from siblings like unfollow_user or block_user by naming the exact action, 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.
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 unfollow_user or block_user. There is no mention of prerequisites, context, or scenarios where following is appropriate or inappropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_audience_demographicsC
Get detailed audience demographic analysis
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time period for demographic data | |
| breakdown_by | No | Demographic categories to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It only says 'detailed analysis' without specifying whether the operation is read-only, what data it returns, or any limitations. It fails to convey expected behavior beyond the basic 'get' verb.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler words. It is highly concise and efficiently presents the core purpose, earning full marks for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and annotations, the description should provide more context about what the analysis includes or how the data is structured. It only mentions 'demographic analysis' without detailing breakdown possibilities or return format, leaving significant ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters having descriptions and enums. The description adds no extra meaning about parameters, but since the schema already documents them thoroughly, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('get') and resource ('audience demographic analysis'), which conveys the tool's basic function. However, it does not explicitly distinguish itself from sibling analytics tools like get_enhanced_insights or get_my_insights, so it loses one point for lack of differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not state when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. Users must infer from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_content_performance_reportC
Comprehensive performance report across all content
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Report time period | |
| metrics | No | Metrics to include in report | |
| report_type | No | Type of performance report | |
| include_comparisons | No | Include period-over-period comparisons |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for revealing behavior, but it only states the tool creates a 'comprehensive performance report'. It does not disclose whether the operation is read-only, how data is aggregated, whether it has performance implications, or what constitutes 'performance' โ leaving critical behavioral context undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous words, making it highly concise. However, it lacks any structural breakdown or additional context; while every word earns its place, it is too sparse to be fully informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and no annotations, the description must compensate, but it fails to specify the return format, the meaning of 'performance', or the effect of report_type and metrics. With 4 parameters and numerous sibling tools, this description is insufficient for an agent to confidently select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter (period, metrics, report_type, include_comparisons) having its own description, so the description adds no additional meaning. The baseline of 3 applies because the schema already provides adequate parameter semantics, though the description could have been used to explain how parameters combine or what 'metrics' should contain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Comprehensive performance report across all content' clearly indicates the tool provides a performance report for all content, which is a specific resource and scope. It does not explicitly differentiate from sibling analytics tools like get_enhanced_insights or get_engagement_trends, but the phrase 'across all content' implies a broad aggregation unlike thread-specific tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description does not mention any preferred scenarios, prerequisites, or exclusion criteria, leaving the agent to guess based on the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_engagement_trendsC
Analyze engagement patterns and trends over time
| Name | Required | Description | Default |
|---|---|---|---|
| metrics | No | Engagement metrics to track | |
| timeframe | No | Analysis timeframe | |
| granularity | No | Data point frequency |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It fails to state whether the operation is read-only, what data scope it covers (current user, historical, all posts?), or what the response structure looks like. The phrase 'analyze' implies processing but does not reveal edge cases or assumptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler. It is front-loaded and easily parsed, but it is also underspecified semantically. Still, from a structural standpoint, it is efficient and meets the conciseness bar.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, no annotations, and multiple competing analytics tools, the description is insufficient. It does not explain what the returned trend data looks like, how metrics are aggregated across timeframes, or how this tool complements or differs from similar insight tools. This is a significant completeness gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter described (metrics, timeframe, granularity). The tool description adds no extra meaning beyond the schema, so the baseline of 3 is appropriate. The description does not clarify parameter interactions or formats beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Analyze engagement patterns and trends over time' conveys a general objective but lacks specificity about what is returned or how it differs from sibling analytics tools like get_content_performance_report or get_enhanced_insights. It is not a tautology, but it is vague enough that an agent could confuse it with other insight tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention appropriate contexts, exclusions, or which sibling tools cover related cases. Given the large number of analytics siblings, this is a clear gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_enhanced_insightsC
Get advanced analytics including views, clicks, shares, and demographics
| Name | Required | Description | Default |
|---|---|---|---|
| since | No | ISO 8601 start date | |
| until | No | ISO 8601 end date | |
| period | No | Time period for insights | |
| metrics | No | Metrics to retrieve: views, likes, replies, reposts, quotes, shares, clicks, followers_count, follower_demographics | |
| breakdown | No | Demographic breakdown options | |
| thread_id | No | Thread ID for media insights (optional for user insights) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states 'get advanced analytics' without mentioning read-only nature, permissions, rate limits, response format, or any caveats. This is insufficient for transparent behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the action 'Get advanced analytics'. It is efficient with no wasted words, though it could be more informative without becoming overly long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 6 optional parameters, no output schema, and many sibling analytics tools, the description lacks essential context. It doesn't explain what makes these insights 'advanced', how they differ from simpler insights, or what response format to expect. This is a significant gap for tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-specific details beyond re-listing example metrics like 'views' and 'shares' that already appear in the schema. Thus, it provides minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves advanced analytics and provides concrete examples (views, clicks, shares, demographics). However, it does not differentiate from sibling analytics tools like get_engagement_trends or get_content_performance_report, and it leaves out explicit scope (user-level vs thread-level). Thus, it is clear but lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus the many sibling analytics tools. The description only states what it does, with no mention of scenarios, prerequisites, or alternatives. This leaves the agent without usage cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_follower_growth_analyticsC
Track follower growth patterns and projections
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Growth analysis period | |
| include_projections | No | Include growth projections based on trends |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not state that this is a read-only operation, what the output looks like, whether any side effects occur, or what 'projections' entails. The description reveals no behavioral traits beyond the bare functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words, making it concise and front-loaded. However, it is under-specified, but conciseness itself is well-handled.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations, no output schema, and only two simple parameters. The description fails to explain the return format, the meaning of projections, or how to interpret results. It essentially restates the tool name, which is insufficient for a user to understand the tool's full behavior or output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has 100% coverage, including descriptions for both 'period' and 'include_projections'. The tool description adds no additional meaning to the parameters, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Track follower growth patterns and projections' clearly identifies the tool as analyzing follower growth with projections. However, it does not distinguish this tool from sibling analytics tools like get_engagement_trends or get_enhanced_insights, so it lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description is a vague statement of functionality without any context about appropriate scenarios, exclusions, or alternatives. Sibling tools with overlapping purposes are not addressed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_mentionsC
Get threads where you are mentioned
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of mentions to retrieve | |
| fields | No | Fields to retrieve from mentions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description carries the full burden of behavioral disclosure, but it only states the basic read operation. It does not mention pagination behavior, ordering, authentication requirements, or what happens when there are no mentions, so the agent is underinformed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at six words, with no filler or redundancy. However, it is so brief that it misses opportunities to add useful context, so it does not earn a 5 for front-loading essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and annotations, the description is too sparse. It does not explain the return format, result ordering, or how it relates to the sibling 'search_mentions', leaving significant gaps for a tool with no other context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters (limit and fields), so the schema already documents them fully. The description adds no additional meaning or context beyond what the schema provides, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation ('Get') and the resource ('threads where you are mentioned'), making the core purpose understandable. However, it does not differentiate from the sibling tool 'search_mentions', which likely overlaps in functionality, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'search_mentions'. There is no mention of use cases, exclusions, or prerequisites, leaving the agent to guess 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_my_insightsC
Get analytics and insights for your account
| Name | Required | Description | Default |
|---|---|---|---|
| since | No | ISO 8601 start date | |
| until | No | ISO 8601 end date | |
| period | No | Time period for metrics | |
| metrics | Yes | Metrics to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only implies a read operation ('Get') and says nothing about data scope, time range defaults, metric availability, or return format, offering minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler words, making it concise and front-loaded. However, it is so brief that it borders on under-specification, though it successfully states the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, so the description is the only source of context. It fails to explain what specific insights are included, how metrics are defined, or how this differs from the many sibling analytics tools, making it incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all four parameters with descriptions (since, until, period, metrics), so the baseline for parameter semantics is 3. The tool description adds no additional parameter context, but the schema already provides sufficient documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get analytics and insights for your account' clearly states a specific verb ('Get') and a specific resource ('analytics and insights for your account'). However, it does not distinguish this tool from sibling analytics tools like get_thread_insights or get_enhanced_insights, so it lacks differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no context for when to use this tool versus alternatives. It does not mention any conditions, prerequisites, or exclusions, and the existence of many sibling analytics tools makes the lack of guidance more problematic.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_my_profileB
Get your own Threads profile information
| Name | Required | Description | Default |
|---|---|---|---|
| fields | No | Profile fields to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not disclose authentication needs, rate limits, default return shape, or how the 'fields' parameter affects behavior. 'Get' implies a read operation, but minimal behavioral detail is given.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no extraneous words. It is concise, front-loaded, and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with one optional parameter, the description provides the core purpose, but it lacks usage guidance and behavioral details that would help an agent fully understand invocation and edge cases. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the 'fields' parameter with 100% coverage. The tool description adds no additional meaning about the parameters, 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.
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 (your own Threads profile), which distinguishes it from sibling tools like get_my_threads and get_my_insights. The verb+resource structure is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description simply states what it does without explaining context, prerequisites, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_my_threadsC
Get your own threads/posts
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of threads to retrieve | |
| since | No | ISO 8601 date for filtering | |
| until | No | ISO 8601 date for filtering | |
| fields | No | Thread fields to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states the basic action. It does not mention pagination, ordering, response format, authentication requirements, or rate limits, which are important for a retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, but it is under-specified for a tool with four parameters. It is not verbose, yet it omits valuable context such as the default behavior of limit and filtering semantics, making it only minimally adequate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description should provide more context about what the tool returns and any behavioral nuances. It does not explain return format, pagination defaults, or how the parameters interact, leaving the agent with insufficient information for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all four parameters with descriptions (100% coverage), so the baseline is 3. The description adds no additional meaning beyond the schema, but since the schema is adequate, the score remains at baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('your own threads/posts'), making the primary purpose unambiguous. However, it does not explicitly distinguish this from sibling tools like search_my_threads, which could perform a similar retrieval with additional filtering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as search_my_threads or get_my_profile. There is no mention of prerequisites, context, or exclusions, leaving the agent to infer appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_post_likesA
Get list of users who liked a post
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of likes to retrieve | |
| post_id | Yes | ID of the post to get likes for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It clearly states the read operation but does not disclose details such as authentication requirements, response format, or pagination behavior. It is not misleading, but it adds no behavioral context beyond the basic operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence: "Get list of users who liked a post." It contains no filler words and effectively communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple retrieval operation with a low complexity. The description adequately explains the purpose, and the schema documents both parameters. The absence of an output schema is compensated by the straightforward nature of the task, making the description sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions: post_id as 'ID of the post to get likes for' and limit as 'Number of likes to retrieve'. The tool description adds no extra parameter information, which is acceptable given the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description "Get list of users who liked a post" uses a specific verb and resource, making it clear what the tool does. It distinguishes itself from sibling tools like like_post, unlike_post, and get_user_followers by uniquely focusing on retrieving the list of users who liked a specific post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit when-to-use guidance or alternatives. The use case is implied by the tool's unique purpose among siblings, but there is no mention of when to prefer this over other tools or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_publishing_limitA
Check your current publishing quotas and limits
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only says 'check', which implies a read operation, but it does not explicitly state that it does not modify data, nor does it mention authentication requirements, response format, or potential failure modes. For a tool that returns limits, more transparency would be expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the verb 'Check', and contains zero extraneous words. It is compact and immediately conveys the tool's core function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 params, no annotations, no output schema), the description is minimal but adequate. However, without an output schema, the description should clarify what the tool returns (e.g., 'returns the current limits and quotas'). The word 'check' implies retrieval, but it does not specify the nature of the output or whether it returns details about each limit. This leaves some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is 100% (vacuously). Per the rubric, a baseline of 4 applies to 0-parameter tools. The description adds no parameter-specific information because there are no parameters to explain. It does not detract from the schema, and the baseline is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Check your current publishing quotas and limits' โ a specific verb ('check') with a specific resource ('publishing quotas and limits'). This distinguishes it from all sibling tools, none of which mention quotas or limits. The scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. While the absence of similar sibling tools might imply usage, the description itself does not offer any contextual cue beyond its function. It simply states what it does, without explaining when to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_thread_insightsC
Get performance metrics for your specific thread
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time period for metrics | |
| metrics | Yes | Metrics to retrieve | |
| thread_id | Yes | ID of your thread |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only says 'Get', implying a read operation, but does not describe return format, available metric names, pagination, rate limits, or any other behavioral traits. This is inadequate for an analytics 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficiently worded sentence with no filler. While it could be more informative, it does not waste words and is easy to scan. It earns a 4 for brevity and structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This tool has no output schema and no annotations, yet the description gives no indication of what constitutes 'performance metrics', what the return value looks like, or any caveats. Given the large number of sibling analytics tools and the lack of other contextual information, the description is incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all three parameters (100% coverage), including the meaning of thread_id, metrics, and period. The description adds no further semantic value beyond underscoring 'specific thread' and does not attempt to clarify the allowed metric names in the unconstrained array. With full schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states 'Get performance metrics for your specific thread' with a clear verb and resource. However, it does not explicitly differentiate this from sibling analytics tools like get_my_insights or get_enhanced_insights, leaving room for ambiguity about scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as get_my_insights, get_engagement_trends, or get_content_performance_report. The description does not mention any context, prerequisites, or exclusions, leaving the selection entirely to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_thread_repliesB
Get replies to your specific thread
| Name | Required | Description | Default |
|---|---|---|---|
| fields | No | Reply fields to retrieve | |
| thread_id | Yes | ID of your thread |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It simply says 'get replies' without mentioning authentication requirements, reply types (direct vs nested), pagination, or output format. This is minimal for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no redundant information. It is front-loaded and every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is too thin. It doesn't explain what 'replies' includes, whether the thread must be owned by the user, or what fields are returned. More context would be needed for an agent to use this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters (thread_id and fields) with 100% coverage. The description adds no additional parameter semantics, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves replies for a specific thread, using the verb 'get' and specifying the resource ('replies') and scope ('your specific thread'). This distinguishes it from siblings like create_reply or manage_reply.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when you need replies to a thread, but it doesn't explicitly state when to use it over alternatives like get_mentions or search_my_threads, nor does it mention exclusions (e.g., only works for threads owned by the user).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trending_postsC
Get trending/popular posts in various categories
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of trending posts to retrieve | |
| category | No | Trending category (optional) | |
| timeframe | No | Trending timeframe |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. 'Get' implies a read-only operation, but the description does not disclose any behavioral traits such as whether it returns paginated results, how trending is determined, or any rate limits. The description adds minimal behavioral context beyond what the tool name already suggests.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no filler words, making it efficient. However, it lacks any structured guidance or examples, but it still earns points for being appropriately sized and front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too thin given the tool has 3 parameters and no output schema. It does not explain default behavior when no parameters are provided, what the response format looks like, or how category/timeframe filtering works. The agent would need to make assumptions or call the tool to understand its behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter having a description. The tool description adds little beyond the schema, only referencing 'various categories' which weakly relates to the category parameter. Baseline 3 is appropriate as the schema carries the semantic weight.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (Get) and resource (trending/popular posts) with a scope mention of 'various categories'. It is not a tautology, as it adds 'popular' and 'categories' beyond the tool name, but it does not explicitly differentiate from sibling tools like search_posts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or context such as 'use search_posts for specific queries'. The intended use is implied but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_user_followersA
Get followers list for a user
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of followers to retrieve | |
| user_id | No | User ID to get followers for (defaults to current user) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. The verb 'get' implies a read-only operation, but no additional details are given about rate limits, pagination, ordering, or side effects. For a simple list retrieval, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently communicates the tool's purpose without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list-retrieval tool with two optional parameters and no output schema, the description is largely sufficient. It clearly states what is returned (followers list) and the intended target (a user). However, it could be slightly more complete by mentioning defaults or pagination, though the schema partially covers this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, as both 'limit' and 'user_id' have descriptive text. The tool description adds no extra 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get followers list for a user' uses a specific verb ('Get') and resource ('followers list'), clearly distinguishing it from sibling tools like get_user_following, which retrieves a following list. The scope 'for a user' further clarifies that it can target any user, not just the current one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as get_user_following or search_users. The description does not mention exclusions, prerequisites, or comparison with sibling tools, leaving the agent to infer usage solely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_user_followingC
Get following list for a user
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of following to retrieve | |
| user_id | No | User ID to get following for (defaults to current user) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the operation name without revealing pagination, ordering, privacy constraints, or return format. The read-only nature is implicit but not explicitly disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. It is appropriately sized for a simple tool and gets straight to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should clarify what the returned 'following list' contains (e.g., user objects or IDs). It also fails to mention the default behavior for user_id as documented in the schema, leaving a notable gap in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both limit and user_id. The description adds no additional parameter meaning beyond the schema, but this is acceptable given the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('following list for a user'), distinguishing it from the sibling tool get_user_followers by direction. It is specific but could be more precise by noting the default to current user.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like get_user_followers. It does not mention use cases, caller context, or how the user_id parameter affects behavior.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
like_postB
Like a thread/post
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | ID of the post to like |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits, but it only states 'Like a thread/post'. It does not mention side effects, reversibility, permissions, or rate limits, which is insufficient for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema, so the description is minimally adequate. However, it lacks mention of reversibility (e.g., the existence of unlike_post) and any behavioral caveats, leaving some gaps for a complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a clear description for post_id, and schema coverage is 100%. The description adds no extra parameter meaning, but the baseline for full schema coverage is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Like') and the resource ('thread/post'), making the tool's purpose unambiguous. It naturally distinguishes itself from sibling tools like unlike_post and repost_thread.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as unlike_post or repost_thread. There is no mention of context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manage_replyA
Hide or show replies to your threads
| Name | Required | Description | Default |
|---|---|---|---|
| hide | Yes | Whether to hide (true) or show (false) the reply | |
| reply_id | Yes | ID of the reply to manage |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action without covering permissions, reversibility, effects on other users, or response behavior. For a mutation tool, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately communicates the core action. There is no wasted wording or unnecessary detail, making it front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter mutation tool, the description is minimally adequate, but it lacks behavioral context such as what happens when a reply is hidden, whether it is reversible, or who is affected. Given the absence of annotations and output schema, the description could provide more surrounding context to be fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (hide, reply_id) are fully described in the schema. The tool description adds no additional 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action (hide/show) on a specific resource (replies) with scope ('your threads'), distinguishing it from siblings like create_reply or get_thread_replies. It is unambiguous and immediately understandable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool (to manage visibility of replies), but it does not explicitly mention alternatives or exclusions. The context is clear enough that an agent can infer appropriate usage without further guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
publish_threadC
Create and publish a new thread
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The text content of the thread | |
| media_url | No | URL of media to include (for IMAGE/VIDEO) | |
| media_type | No | Type of media (default: TEXT) | |
| location_name | No | Location name for location tagging |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description needed to disclose behavioral traits but only states the obvious 'create and publish.' It omits details such as whether publishing is immediate, requires special permissions, has rate limits, or if there are irreversible effects. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no filler or redundancy. It earns its place and is appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has multiple related siblings and no output schema or annotations. The minimal description leaves significant gaps: no mention of return values, side effects, or relation to other publishing tools, making it incomplete for an agent to fully understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has 100% description coverage for all four parameters, so the baseline is 3. The description adds no additional meaning beyond the schema, such as how parameters interact or default behaviors.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create and publish) and the resource (a new thread), making the primary purpose obvious. However, it does not differentiate this from the sibling tool 'create_thread_chain', 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'schedule_post' or 'create_thread_chain'. There is no mention of use cases, exclusions, or preferred scenarios, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quote_postB
Quote another thread/post with your own text
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Your quote text/commentary | |
| media_url | No | URL of media to include (for IMAGE/VIDEO) | |
| media_type | No | Type of media (default: TEXT) | |
| reply_control | No | Who can reply to this quote | |
| quoted_post_id | Yes | ID of the post to quote |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must carry the full disclosure burden. However, it only states the basic action and fails to mention that quoting usually creates a new post, embeds the quoted content, respects reply_control, or has other side effects. This leaves unexpected behavior unaddressed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded and free of fluff. It communicates the core purpose efficiently without wasting words, earning a high score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters, 2 enums, no output schema, and no annotations, the description needs to provide more context to be complete. It fails to explain what the tool returns, how media and reply controls work in practice, or the overall behavior of a quote post. The description alone is insufficient for an agent to understand the full scope of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, with each property described, so the baseline is 3. The description itself adds no extra parameter semantics beyond what the schema already provides, but it also doesn't need to since the schema is self-explanatory.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Quote') with a clear resource ('another thread/post') and states the action context ('with your own text'). This distinguishes it from sibling tools like create_reply or repost_thread, which have different semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like create_reply, repost_thread, or publish_thread. The description gives no context about appropriate use cases or exclusions, so the agent must infer when quoting is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repost_threadC
Repost/share another thread
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | ID of the post to repost |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description carries the full burden of behavioral disclosure. It only says 'Repost/share another thread' without mentioning whether the action is reversible, requires authentication, or has any side effects on the original thread. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
At four words, the description is extremely concise and free of filler, making it easy to parse. However, it is a fragment rather than a complete sentence and omits important context, so it could be slightly more informative without losing efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter), one might argue the description is sufficient, but it does not explain what 'repost' entails, how it relates to the sibling 'unrepost_thread', or what the expected outcome is. With no output schema to clarify return values, the description leaves the agent with an incomplete picture of the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes post_id as 'ID of the post to repost' with 100% coverage. The description adds only the phrase 'another thread', which is semantically redundant. The description does not need to compensate for missing schema information, but it also adds no extra meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the verb 'Repost/share' and names the resource 'another thread', which clearly states the action. However, it does not provide scope or differentiate from sibling tools like quote_post or unrepost_thread, so it is clear but lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as quote_post or unrepost_thread. No prerequisites, exclusions, or contextual hints are provided, leaving the agent 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.
schedule_postC
Schedule posts with advanced automation and optimal timing
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Post content | |
| timezone | No | Timezone for scheduling (e.g., America/New_York) | |
| media_url | No | Optional media URL | |
| schedule_time | No | ISO 8601 datetime for scheduling | |
| automation_settings | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'advanced automation' and 'optimal timing' but does not explain what these entail (e.g., recurring schedules, auto-hashtags, time optimization). It also does not disclose that this is a write operation with future effects or any other side effects. The description adds little beyond the name and schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler words. It is front-loaded with the key verb and resource. However, it could be more informative without sacrificing brevity, such as mentioning the automation settings or the scheduling datetime. Still, it is concise and free of redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (nested automation_settings object, 5 parameters) and the absence of both annotations and an output schema, the description should provide more context. It does not clarify what 'advanced automation' includes, what the tool returns, or any prerequisites. This is inadequate for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 80%, and all parameters have descriptions in the schema (text, timezone, media_url, schedule_time, automation_settings). The description adds no parameter-specific semantics beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('schedule') and resource ('posts'), clearly indicating the tool's core function. The phrase 'advanced automation and optimal timing' adds context, though it is somewhat vague. It distinguishes from siblings like publish_thread, which implies immediate publishing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as publish_thread or create_post_with_restrictions. There is no mention of prerequisites, exclusions, or scenarios where immediate posting would be more appropriate. The usage context is only implied by the verb 'schedule'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_by_hashtagsC
Search for posts by hashtag or topic tags
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of results to return | |
| hashtags | Yes | Hashtags to search for (without #) | |
| search_type | No | Search results order |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only states a basic search action. It does not mention whether the search is scoped to public posts, whether authentication is required, rate limits, or any other behavioral traits, so significant context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant filler. It is concise and to the point, but its brevity means it sacrifices substance; still, for what it attempts to say, it is efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with three parameters, no output schema, and a broad sibling set, the description is incomplete. It does not clarify return format, pagination, result ordering (despite the search_type enum), or the intended scope, and sibling ambiguity makes it harder to select correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so all three parameters (limit, hashtags, search_type) are already documented. The description adds minimal extra meaning beyond reiterating the hashtag/topic concept, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'search' and the resource 'posts' with a specific qualifier (hashtag or topic tags). However, it does not distinguish from the sibling tool search_by_topics, which likely covers the same functionality, so it misses the 'differentiates from siblings' criterion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool compared to alternatives like search_by_topics or search_posts. There are no explicit use cases, exclusions, or prerequisites, leaving the agent to infer applicability 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.
search_by_topicsB
Search for posts by topic tags
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of results to return | |
| topics | Yes | Topic tags to search for | |
| search_type | No | Search results order |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior, but it only says 'Search for posts by topic tags.' It does not mention default limit, ordering, case sensitivity, pagination, or any side effects or prerequisites. This is a minimal disclosure for a search operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with no unnecessary words. It efficiently conveys the core purpose without padding, which is exactly what conciseness requires.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description should provide more contextual details like result format, default limits, or relationship to other search tools. It doesn't, leaving the agent with only a terse statement that is insufficient for a 3-parameter tool without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all three parameters (limit, topics, search_type), so schema coverage is 100%. The description's mention of 'topic tags' aligns with the 'topics' parameter but adds no additional semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Search'), a resource ('posts'), and a scope ('by topic tags'). This distinguishes it from siblings like search_by_hashtags or search_posts, making the tool's purpose immediately apparent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. Sibling tools such as search_posts and search_by_hashtags exist, but the description does not explain trade-offs or context for choosing this one, leaving the agent without decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_mentionsB
Search for posts that mention you or specific users
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of mentions to retrieve | |
| since | No | ISO 8601 date to search from | |
| until | No | ISO 8601 date to search until | |
| user_id | No | User ID to search mentions for (defaults to current user) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does not state whether results are ordered, paginated, limited to public posts, or any other behavioral traits. It only states the action, leaving the agent to infer behavior from 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It is appropriately concise and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is too minimal. It does not explain what the tool returns, how optional parameters behave, or how it differs from get_mentions. This under-specification could cause confusion for an agent selecting between similar tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all parameters with descriptions (100% coverage), so the baseline is 3. The description adds minimal value by implying user_id is supported, but it does not explain limit/since/until semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action (search) and resource (posts that mention you or specific users). It distinguishes from the sibling get_mentions by allowing searches for other users via user_id, not just the current user.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like get_mentions or search_posts. The description does not mention exclusions, preferred use cases, or differences from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_my_threadsA
Search within your own threads using keywords
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of threads to search through | |
| query | Yes | Search query/keywords |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the search scope but does not mention return format, pagination, read-only nature, or any limitations. For a tool with no annotations, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It communicates the essential purpose efficiently, earning full marks for conciseness and structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with only two params and no output schema, but the description still leaves unanswered questions: what counts as a 'thread', what the search matches against (title, body, etc.), and what the return value looks like. Given no annotations or output schema, the description should provide more context to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has 100% description coverage for both params (query and limit), so the baseline is 3. The description adds 'using keywords' which aligns with the query param, but it does not provide additional meaning beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action: 'Search within your own threads using keywords.' It identifies the resource (own threads) and method (keywords), which distinguishes it from sibling tools like search_posts and get_my_threads.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'your own threads' provides clear context that this tool is for searching personal threads rather than all posts or other entities. However, it does not explicitly name alternative tools or state when not to use it, 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.
search_postsB
Search for posts using keywords
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of results to return (max 100, default 25) | |
| query | Yes | Search keyword or phrase | |
| since | No | ISO 8601 date to search from | |
| until | No | ISO 8601 date to search until | |
| search_type | No | Search results order: TOP (popular) or RECENT (chronological) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden for behavioral disclosure. However, it only restates the basic functionality and does not mention read-only behavior, pagination, default ordering, or what the response contains. This is a significant gap for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It is appropriately sized for the tool's simplicity, and the main keyword is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters and no output schema, yet the description does not clarify the scope (e.g., all posts vs. my posts), the output format, or any rate limits. Since there are no annotations, the description is incomplete for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions cover all 5 parameters with clear explanations (e.g., 'Search keyword or phrase', 'Number of results to return'). The tool description adds no extra detail 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Search for posts using keywords' clearly states a specific action (search) on a resource (posts) with a mechanism (keywords). It is distinct from sibling tools like search_my_threads or search_by_hashtags, though it does not explicitly differentiate them, so it earns a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for keyword-based post search but does not provide explicit when-to-use versus alternative tools. There is no mention of when not to use this tool or which sibling tool to use for hashtag/topic searches, so the guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_usersC
Search for users by username or display name
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of users to return | |
| query | Yes | Username or display name to search for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not disclose whether the operation is read-only, whether authentication is required, or what the response format contains (e.g., user objects, list vs. single result). For a search tool, these details are important but missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently communicates the core action and target, making it appropriately concise for a simple search tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and no annotations, the description should explain what the search returns (e.g., a list of users, including any pagination or limit behavior). It does not, leaving a significant gap for an AI agent to understand the expected result. The description is too minimal to be self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for both parameters (query, limit) with 100% coverage. The description adds 'username or display name' which mirrors the schema's field description, providing no additional meaning beyond what the schema already conveys. Thus, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (search) and the target resource (users), and specifies the search criteria (username or display name). While it doesn't explicitly distinguish from sibling search tools like search_posts, the resource is clearly 'users', which differentiates it by context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives or any context about search behavior (e.g., exact match, partial match, pagination). The description implies its use for user lookup, but it does not state exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unfollow_userC
Unfollow a user
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | User ID to unfollow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. It states only the action 'Unfollow a user' without explaining consequences, such as removal from the following list, whether the operation is idempotent, or if any auth/permissions are required. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the action. It is minimal but appropriately sized for a simple tool, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity and complete schema coverage, the description is minimally adequate. However, it lacks any context about the operational context (e.g., when it should be used, what happens after unfollowing) that would make it fully complete, especially since there are no annotations to supplement it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the only parameter user_id has a clear description ('User ID to unfollow'). The tool description adds nothing beyond the schema, so 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Unfollow a user' uses a clear verb and resource, and is distinct from siblings like follow_user and block_user. It clearly states the primary action, though it lacks explicit differentiation from follow_user beyond being the opposite operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., must be currently following the user), side effects, or any exclusions. The sibling list implies context, but the description itself provides no usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unlike_postB
Remove like from a thread/post
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | ID of the post to unlike |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only says 'Remove like' and does not disclose behaviors such as idempotency, authentication requirements, error handling (e.g., if the post is not liked), or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. It is front-loaded and efficiently communicates the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter mutation tool, the description is minimally adequate. However, given no annotations and no output schema, it lacks any context about return values, idempotency, or prerequisites, which might be useful for an agent to predict behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single post_id parameter that has a clear description. The tool description adds no further semantic value, but the schema fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (Remove like) and the resource (thread/post), making the tool's purpose immediately obvious. It is explicitly distinct from the sibling like_post, which performs the opposite action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like like_post or other post-related tools. The usage context is only implicitly understood from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unrepost_threadA
Remove a repost you previously shared
| Name | Required | Description | Default |
|---|---|---|---|
| post_id | Yes | ID of the post to unrepost |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the core action but does not disclose whether the action is irreversible, requires authentication, or affects the original post in any way.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant information. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple, one-parameter mutation with no output schema and no annotations. The description provides enough to understand the tool's purpose and the required input, though it omits potential side effects and error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the only parameter, post_id, is clearly described in the schema as 'ID of the post to unrepost'. The description adds no additional parameter meaning, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Remove') and resource ('repost'), clearly distinguishing it from operations like repost_thread or delete_thread. It precisely 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use case is implied: undo a repost the user previously shared. However, there is no explicit guidance on alternatives or when not to use this tool, relying on the sibling tool list for context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_setupB
Validate access token, check scopes, and verify business account setup
| Name | Required | Description | Default |
|---|---|---|---|
| check_scopes | No | Check if all required scopes are present | |
| required_scopes | No | Custom list of required scopes to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It lists what is validated but does not disclose the return format, potential errors, or whether the operation is read-only. The term 'validate' implies a non-mutating check, but concrete behavioral details are missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the action and lists three specific checks. Every word earns its place, making it exceptionally concise and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should explain what the tool returns or how success/failure is communicated. It does not. It also leaves 'business account setup' ill-defined, so an agent has limited context to anticipate the tool's response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for its two optional parameters, so the baseline is 3. The description does not add any additional parameter semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Validate access token, check scopes, and verify business account setup.' It uses specific verbs and resources, and it clearly distinguishes itself from sibling tools that focus on posting, searching, or managing content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is used to verify setup prerequisites, but it provides no explicit when-to-use guidance or alternatives. Usage is inferred from the tool's purpose rather than stated directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
website_integration_setupC
Setup Threads integration for websites and external platforms
| Name | Required | Description | Default |
|---|---|---|---|
| website_config | No | ||
| integration_type | Yes | Type of integration to setup | |
| automation_settings | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. 'Setup' implies a mutating operation, but the description does not explain side effects, required permissions, or whether the setup is reversible. No behavioral details beyond the generic action are provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise, but it is under-specified and does not earn its place. There is no structured breakdown of key aspects like integration types, configuration requirements, or expected outcomes. It reads as a placeholder rather than a helpful guide.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (nested objects, multiple enums, one required parameter), the description is inadequate. There is no output schema and no annotations, so the description should explain return values, validation behavior, or potential errors. It does none of this, leaving the agent to guess at setup semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, and the description adds no parameter-level meaning. The description does not explain the relationship between website_config, integration_type, and automation_settings, nor does it elaborate on the enumerated integration types. The schema provides some descriptions, but the tool description 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Setup') and resource ('Threads integration for websites and external platforms'), distinguishing it from sibling tools that focus on posts, users, and insights. However, it lacks specificity about the types of integrations (e.g., embed_feed, share_buttons) which are only revealed in the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no context for what 'integration setup' entails. It also does not mention related tools like validate_setup, leaving the agent to infer usage without support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
44 tool updates
v5.1.0- First observed
analyze_best_posting_times - First observed
auto_hashtag_suggestions - First observed
block_user - First observed
bulk_post_management - First observed
content_optimization_analysis - First observed
create_carousel_post - First observed
create_post_with_restrictions - First observed
create_reply - First observed
create_thread_chain - First observed
delete_thread - First observed
follow_user - First observed
get_audience_demographics - First observed
get_content_performance_report - First observed
get_engagement_trends - First observed
get_enhanced_insights - First observed
get_follower_growth_analytics - First observed
get_mentions - First observed
get_my_insights - First observed
get_my_profile - First observed
get_my_threads - First observed
get_post_likes - First observed
get_publishing_limit - First observed
get_thread_insights - First observed
get_thread_replies - First observed
get_trending_posts - First observed
get_user_followers - First observed
get_user_following - First observed
like_post - First observed
manage_reply - First observed
publish_thread - First observed
quote_post - First observed
repost_thread - First observed
schedule_post - First observed
search_by_hashtags - First observed
search_by_topics - First observed
search_mentions - First observed
search_my_threads - First observed
search_posts - First observed
search_users - First observed
unfollow_user - First observed
unlike_post - First observed
unrepost_thread - First observed
validate_setup - First observed
website_integration_setup
TDQS
Several tools have overlapping purposes, especially in search (search_posts, search_mentions, search_by_hashtags, search_by_topics, search_my_threads) and analytics (get_enhanced_insights, get_audience_demographics, get_engagement_trends, get_follower_growth_analytics, get_content_performance_report). Agents may struggle to choose the right tool for a given task.
Most tools follow a verb_noun snake_case pattern (e.g., create_thread, get_mentions, follow_user), but some deviate with noun phrases or adjective-led names like auto_hashtag_suggestions, content_optimization_analysis, bulk_post_management, and website_integration_setup. The overall style is consistent, but the exceptions create minor inconsistencies.
With 44 tools, this server is overburdened. While the scope is broad (posting, interactions, search, analytics, user management), many tools could be consolidated or omitted. This exceeds the typical recommended range and feels heavy for an agent to navigate.
The tool set covers a wide range of Threads API functionality: posting, replying, liking, following, searching, and detailed analytics. However, there are minor gaps such as no direct get_post_by_id for arbitrary posts and no way to view a single post's details outside of search results, but these are workable.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Threads tools for AI โ generate viral posts, download videos, export profiles
AI-native social media publishing to LinkedIn, Instagram, Threads, TikTok, and X.
Schedule, publish, and analyze social posts on TikTok, Instagram, YouTube, X, Threads, LinkedIn.
Schedule, generate and publish social posts to X, LinkedIn, Instagram, Threads and YouTube
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceManage Threads and Bluesky social media from AI assistants. Schedule posts, check analytics, and automate follow-up replies.3MIT
- AlicenseAqualityCmaintenanceEnables AI assistants to manage Instagram and Threads accounts โ publish content, handle comments, view insights, search hashtags, and manage DMs through the Meta Graph API.594612MIT
- AlicenseCqualityDmaintenanceEnables professional Threads management with enterprise-grade analytics, AI-powered content optimization, and automation features, including posting, scheduling, audience insights, and bulk operations.453812MIT
- AlicenseBqualityCmaintenanceEnables posting and managing Threads content via Meta Threads API, including text, image, video, carousel, and replies.938MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/adhdvital/threads-mcp-fork'
If you have feedback or need assistance with the MCP directory API, please join our Discord server