Bitrix24 MCP Server
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., "@Bitrix24 MCP Serverlist my recent deals with their current stages"
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.
Bitrix24 MCP Server
A comprehensive Model Context Protocol (MCP) server for Bitrix24 CRM integration, enabling AI agents to seamlessly interact with your Bitrix24 instance through a powerful set of tools.
š Features
Complete CRM Management: Create, read, update, and list contacts, deals, and tasks
Advanced Search: Search across all CRM entities with flexible filtering
Rate Limiting: Built-in rate limiting to respect Bitrix24 API limits
Type Safety: Full TypeScript implementation with comprehensive type definitions
Error Handling: Robust error handling and validation
Easy Integration: Simple setup with Claude Desktop and other MCP-compatible clients
Related MCP server: Bitrix24 MCP Server
š Available Tools
Contact Management
bitrix24_create_contact- Create new contactsbitrix24_get_contact- Retrieve contact by IDbitrix24_list_contacts- List contacts with filteringbitrix24_update_contact- Update existing contacts
Deal Management
bitrix24_create_deal- Create new dealsbitrix24_get_deal- Retrieve deal by IDbitrix24_list_deals- List deals with filteringbitrix24_update_deal- Update existing deals
Task Management
bitrix24_create_task- Create new tasksbitrix24_get_task- Retrieve task by IDbitrix24_list_tasks- List tasks with filteringbitrix24_update_task- Update existing tasks
User Management
bitrix24_get_user- Get user information by IDbitrix24_get_all_users- Get all users in the system with names and detailsbitrix24_resolve_user_names- Resolve user IDs to user namesbitrix24_get_contacts_with_user_names- Get contacts with user names resolvedbitrix24_get_deals_with_user_names- Get deals with user names resolvedbitrix24_get_leads_with_user_names- Get leads with user names resolvedbitrix24_get_companies_with_user_names- Get companies with user names resolved
Lead Management
bitrix24_create_lead- Create new leadsbitrix24_get_lead- Retrieve lead by IDbitrix24_list_leads- List leads with filteringbitrix24_get_latest_leads- Get most recent leadsbitrix24_get_leads_from_date_range- Get leads from specific date rangebitrix24_update_lead- Update existing leads
Company Management
bitrix24_create_company- Create new companiesbitrix24_get_company- Retrieve company by IDbitrix24_list_companies- List companies with filteringbitrix24_get_latest_companies- Get most recent companiesbitrix24_get_companies_from_date_range- Get companies from specific date rangebitrix24_update_company- Update existing companies
Enhanced Deal Filtering
bitrix24_get_deal_pipelines- Get all deal pipelines/categoriesbitrix24_get_deal_stages- Get deal stages for pipelinesbitrix24_filter_deals_by_pipeline- Filter deals by pipelinebitrix24_filter_deals_by_budget- Filter deals by budget rangebitrix24_filter_deals_by_status- Filter deals by stage/status
Utilities
bitrix24_search_crm- Search across CRM entitiesbitrix24_get_current_user- Get current user infobitrix24_validate_webhook- Validate webhook connectionbitrix24_diagnose_permissions- Diagnose webhook permissionsbitrix24_check_crm_settings- Check CRM settings and configurationbitrix24_test_leads_api- Test leads API endpoints
Sales Team Monitoring
bitrix24_monitor_user_activities- Monitor user activities (calls, emails, timeline interactions, response times)bitrix24_get_user_performance_summary- Get comprehensive performance summary with deal metrics and conversion ratesbitrix24_analyze_account_performance- Analyze performance for specific accounts (companies/contacts)bitrix24_compare_user_performance- Compare performance metrics between multiple usersbitrix24_track_deal_progression- Track deal progression through pipeline stages with timing analysisbitrix24_monitor_sales_activities- Monitor sales-related activities (tasks, follow-ups, meetings)bitrix24_generate_sales_report- Generate comprehensive sales reports with customizable metricsbitrix24_get_team_dashboard- Get real-time team performance dashboardbitrix24_analyze_customer_engagement- Analyze customer engagement patterns and relationship healthbitrix24_forecast_performance- Generate performance forecasts and predictive analytics
š ļø Installation
Prerequisites
Node.js 18+
npm or yarn
Bitrix24 webhook URL
Setup
Clone and install dependencies:
git clone <repository-url>
cd bitrix24-mcp-server
npm installConfigure environment:
cp .env.example .env
# Edit .env with your Bitrix24 webhook URLBuild the project:
npm run buildTest the connection:
npm testāļø Configuration
Environment Variables
Create a .env file with the following variables:
BITRIX24_WEBHOOK_URL=https://your-domain.bitrix24.com/rest/USER_ID/WEBHOOK_CODE/
NODE_ENV=development
LOG_LEVEL=infoBitrix24 Webhook Setup
Go to your Bitrix24 instance
Navigate to Applications ā Webhooks
Create an Incoming webhook
Copy the webhook URL (format:
https://domain.bitrix24.com/rest/USER_ID/WEBHOOK_CODE/)Set appropriate permissions for CRM and Tasks
š§ Claude Desktop Integration
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"bitrix24": {
"command": "node",
"args": ["/path/to/your/bitrix24-mcp-server/build/index.js"],
"env": {
"BITRIX24_WEBHOOK_URL": "https://your-domain.bitrix24.com/rest/USER_ID/WEBHOOK_CODE/"
}
}
}
}š Usage Examples
Creating a Contact
Create a new contact named John Smith with email john@example.com and phone +39 123 456 789Creating a Deal with Contact
Create a new contact for Maria Rossi with email maria@company.com, then create a deal titled "Website Development Project" for ā¬5000 and link it to this contactManaging Tasks
Create a task titled "Follow up with client" with high priority, deadline tomorrow, and link it to contact ID 123Searching CRM
Search for all contacts and deals related to "example.com"šļø Development
Project Structure
bitrix24-mcp-server/
āāā src/
ā āāā bitrix24/
ā ā āāā client.ts # Bitrix24 API client
ā āāā tools/
ā ā āāā index.ts # MCP tools definitions
ā āāā utils/
ā ā āāā logger.ts # Logging utilities
ā āāā config/
ā ā āāā index.ts # Configuration management
ā āāā index.ts # Main MCP server
āāā test/
ā āāā integration.test.js # Integration tests
āāā build/ # Compiled JavaScript
āāā package.json
āāā tsconfig.json
āāā README.mdDevelopment Commands
# Install dependencies
npm install
# Build the project
npm run build
# Watch mode for development
npm run dev
# Run tests
npm test
# Start the server
npm startAdding New Tools
Define the tool in
src/tools/index.ts:
export const newTool: Tool = {
name: 'bitrix24_new_action',
description: 'Description of the new action',
inputSchema: {
type: 'object',
properties: {
// Define parameters
},
required: ['requiredParam']
}
};Add the execution handler:
case 'bitrix24_new_action':
// Implementation
return { success: true, result: 'Action completed' };Add to
allToolsarray and rebuild.
š Security Considerations
Webhook Security: Keep your webhook URL secret and rotate it regularly
Environment Variables: Never commit
.envfiles to version controlRate Limiting: The client includes built-in rate limiting (2 requests/second)
Error Handling: Sensitive information is not exposed in error messages
š Troubleshooting
Common Issues
"Webhook validation failed"
Verify your webhook URL is correct
Check that the webhook has appropriate permissions
Ensure your Bitrix24 instance is accessible
"Cannot find module" errors
Run
npm installto install dependenciesEnsure you've built the project with
npm run build
Rate limiting errors
The client automatically handles rate limiting
If you see persistent rate limit errors, consider reducing request frequency
Debug Mode
Set NODE_ENV=development and LOG_LEVEL=debug in your .env file for detailed logging.
š API Reference
Bitrix24Client Methods
Contacts
createContact(contact: BitrixContact): Promise<string>getContact(id: string): Promise<BitrixContact>updateContact(id: string, contact: Partial<BitrixContact>): Promise<boolean>listContacts(params?: ListParams): Promise<BitrixContact[]>
Deals
createDeal(deal: BitrixDeal): Promise<string>getDeal(id: string): Promise<BitrixDeal>updateDeal(id: string, deal: Partial<BitrixDeal>): Promise<boolean>listDeals(params?: ListParams): Promise<BitrixDeal[]>
Tasks
createTask(task: BitrixTask): Promise<string>getTask(id: string): Promise<BitrixTask>updateTask(id: string, task: Partial<BitrixTask>): Promise<boolean>listTasks(params?: TaskListParams): Promise<BitrixTask[]>
Users
getUser(userId: string): Promise<any>getAllUsers(): Promise<any[]>getUsersByIds(userIds: string[]): Promise<any[]>resolveUserNames(userIds: string[]): Promise<Record<string, string>>enhanceWithUserNames<T>(items: T[], userIdFields?: string[]): Promise<T[]>
Utilities
getCurrentUser(): Promise<any>searchCRM(query: string, entityTypes?: string[]): Promise<any>validateWebhook(): Promise<boolean>
š¤ Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
š License
MIT License - see LICENSE file for details.
š Support
For issues and questions:
Check the troubleshooting section
Review Bitrix24 API documentation
Open an issue on GitHub
Built with ā¤ļø for the AI automation community
Available Tools
50 toolsbitrix24_analyze_account_performanceC
Analyze performance and activities for specific accounts (companies/contacts)
| Name | Required | Description | Default |
|---|---|---|---|
| accountId | Yes | Account ID (company or contact ID) | |
| accountType | Yes | Type of account to analyze | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| includeAllInteractions | No | Include all user interactions with this account | |
| includeDealProgression | No | Include deal progression analysis | |
| includeTimelineHistory | No | Include complete timeline history |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions analyzing 'performance and activities' but doesn't disclose behavioral traits like whether this is a read-only operation, what permissions are needed, whether it's computationally intensive, what format the analysis returns, or if there are rate limits. For a 7-parameter analysis tool with no annotations, this is inadequate.
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 that front-loads the core purpose. Every word earns its place with no redundancy or unnecessary elaboration. It's appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter analysis tool with no annotations and no output schema, the description is incomplete. It doesn't explain what 'performance' means in this context, what types of activities are analyzed, what the output looks like, or any behavioral constraints. The agent would struggle to understand the tool's full behavior and output expectations.
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 all parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema (e.g., it doesn't explain what 'performance' metrics are analyzed or what 'activities' include). 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 clearly states the tool's purpose: 'Analyze performance and activities for specific accounts (companies/contacts)'. It specifies the verb ('analyze'), resource ('accounts'), and scope ('performance and activities'), but doesn't explicitly differentiate from sibling tools like 'bitrix24_analyze_customer_engagement' or 'bitrix24_get_user_performance_summary'.
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 doesn't mention prerequisites, appropriate contexts, or exclusions. With many sibling tools for analyzing performance (e.g., 'bitrix24_analyze_customer_engagement', 'bitrix24_compare_user_performance'), the agent lacks direction on selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_analyze_customer_engagementC
Analyze customer engagement patterns and relationship health
| Name | Required | Description | Default |
|---|---|---|---|
| accountId | No | Account ID (company or contact ID) - optional | |
| accountType | No | Type of account | |
| userId | No | User ID to filter analysis (optional) | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| includeCommunicationPatterns | No | Include communication pattern analysis | |
| includeResponseQuality | No | Include response quality metrics | |
| includeEngagementScores | No | Calculate engagement scores | |
| includeRelationshipHealth | No | Assess relationship health |
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 mentions analysis of 'patterns' and 'health' but doesn't describe what the tool actually doesāwhether it performs calculations, returns metrics, generates reports, or has side effects. There's no information on permissions, rate limits, or output format, leaving significant gaps for a tool with 9 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasteā'Analyze customer engagement patterns and relationship health'. It is appropriately sized and front-loaded, though its brevity contributes to gaps in other dimensions. Every word earns its place in conveying the 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 complexity (9 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what the analysis entails, what data it uses, or what the output looks like. For a tool with multiple boolean flags controlling analysis components, more context is needed to guide effective use, especially without annotations or output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all parameters with descriptions, defaults, and enums. The description adds no additional meaning beyond implying analysis of 'engagement patterns' and 'relationship health', which loosely maps to parameters like 'includeEngagementScores' and 'includeRelationshipHealth'. 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 'Analyze customer engagement patterns and relationship health' states the general purpose but lacks specificity. It mentions the verb 'analyze' and the domain 'customer engagement' but doesn't specify what resources or data sources are used, nor does it differentiate from sibling tools like 'bitrix24_analyze_account_performance' or 'bitrix24_monitor_sales_activities'. The purpose is clear but vague about scope and methodology.
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. With many sibling tools for analysis, monitoring, and reporting (e.g., 'bitrix24_analyze_account_performance', 'bitrix24_generate_sales_report'), there is no indication of specific use cases, prerequisites, or exclusions. The agent must infer usage from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_check_crm_settingsB
Check CRM settings including lead fields, statuses, and mode
| 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 the full burden. It states 'Check' which implies a read-only operation, but doesn't disclose behavioral traits like whether it requires specific permissions, returns structured data, has side effects, or handles errors. For a tool with zero annotation coverage, this is a significant gap in 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, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and resource, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description is minimally complete for a simple check operation. However, without annotations or output details, it lacks context on what the check returns (e.g., a summary, raw settings, or validation status), which could hinder the agent's ability 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?
The tool has 0 parameters with 100% schema description coverage (empty schema), so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, earning a baseline score of 4 for adequately handling the lack of parameters.
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 ('Check') and the target resource ('CRM settings including lead fields, statuses, and mode'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_diagnose_permissions' or 'bitrix24_test_leads_api', which might also involve checking aspects of the CRM system.
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 doesn't mention prerequisites, context (e.g., for troubleshooting or setup), or exclusions, 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.
bitrix24_compare_user_performanceC
Compare performance metrics between multiple users
| Name | Required | Description | Default |
|---|---|---|---|
| userIds | No | Array of user IDs to compare (optional - if not provided, compares all users) | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| metrics | No | Specific metrics to compare | |
| includeRankings | No | Include performance rankings | |
| includeTrends | No | Include trend 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 states the tool compares performance metrics but doesn't explain what 'performance metrics' entail, how the comparison is presented (e.g., as a report, ranking, or chart), whether it's a read-only operation, or if it has any side effects like data aggregation. This leaves significant gaps in understanding the tool's behavior beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any fluff or redundancy. It's front-loaded with the core action and resource, making it easy for an agent to parse quickly. Every word earns its place, achieving optimal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of comparing multiple users with various metrics and options, the description is insufficient. It lacks output schema, and with no annotations, it doesn't cover behavioral aspects like return format (e.g., structured data, visual report), error handling, or performance implications. For a tool with 6 parameters and no structured output, more context is needed to guide effective usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, providing clear details for all parameters (e.g., user IDs as an optional array, date formats, metric enums, and boolean flags). The description adds no additional semantic context beyond what's in the schema, such as explaining what 'performance rankings' or 'trend analysis' mean in practice. Since the schema does the heavy lifting, 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 the tool's purpose as 'Compare performance metrics between multiple users,' which specifies the verb (compare) and resource (performance metrics between users). However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_get_user_performance_summary' or 'bitrix24_analyze_account_performance,' which might have overlapping functionality, so it doesn't reach the highest 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?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing user IDs or date ranges, or compare it to siblings like 'bitrix24_get_user_performance_summary' for individual user analysis or 'bitrix24_analyze_account_performance' for broader metrics. This lack of context leaves the agent to infer usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_create_companyC
Create a new company in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Company name | |
| companyType | No | Company type (e.g., CLIENT, SUPPLIER, PARTNER) | |
| industry | No | Industry sector | |
| phone | No | Company phone number | |
| No | Company email address | ||
| website | No | Company website URL | |
| address | No | Company address | |
| employees | No | Number of employees | |
| revenue | No | Annual revenue | |
| comments | No | Additional comments | |
| assignedById | No | Assigned user ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states the basic action ('Create a new company'). It fails to disclose critical behavioral traits like required authentication, potential side effects (e.g., data persistence), error handling, or response format, leaving significant gaps 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, clear sentence with zero wasted words, making it highly efficient and front-loaded. It directly communicates the core purpose without unnecessary elaboration, earning full marks 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?
For a creation tool with 11 parameters, no annotations, and no output schema, the description is incomplete. It lacks details on behavioral aspects (e.g., success/error responses, idempotency), usage context, and differentiation from siblings, making it insufficient for informed tool selection and 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 description adds no parameter-specific information beyond what the schema already provides, as schema description coverage is 100%. This meets the baseline for adequate but not exceptional, as the schema fully documents all 11 parameters and their purposes.
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 resource ('new company in Bitrix24 CRM'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'bitrix24_create_contact' or 'bitrix24_create_deal' beyond specifying the resource type, missing explicit distinction.
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 'bitrix24_update_company' or other creation tools (e.g., for contacts or deals). It lacks context about prerequisites, such as required permissions or system states, leaving usage entirely implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_create_contactC
Create a new contact in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | First name | |
| lastName | Yes | Last name | |
| phone | No | Phone number | |
| No | Email address | ||
| company | No | Company name | |
| position | No | Job position | |
| comments | No | Additional comments |
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. While 'create' implies a write/mutation operation, the description doesn't mention authentication requirements, permission levels needed, whether the operation is idempotent, what happens on duplicate data, or what the response looks like. For a mutation tool with zero annotation coverage, this leaves significant behavioral questions unanswered.
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 that states the core purpose without any wasted words. It's appropriately sized for a simple creation tool and gets straight to the point with no unnecessary elaboration or fluff.
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 mutation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't address key contextual questions: what permissions are required, what happens on success/failure, whether there are rate limits, what the return value contains, or how this differs from creating other CRM entities. The description provides only the most basic functional statement without the context needed for safe and effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all 7 parameters clearly documented in the input schema. The description adds no additional parameter information beyond what's already in the structured schema. According to the scoring rules, when schema_description_coverage is high (>80%), the baseline is 3 even with no param info in the description, which applies here.
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 resource ('new contact in Bitrix24 CRM'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'bitrix24_create_company' or 'bitrix24_create_lead' which also create CRM entities, leaving room for confusion about when to choose contact creation over other entity types.
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. With sibling tools like 'bitrix24_create_company', 'bitrix24_create_lead', and 'bitrix24_update_contact', there's no indication of when contact creation is appropriate versus creating other entities or updating existing contacts. The description lacks any context about prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_create_dealC
Create a new deal in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Deal title | |
| amount | No | Deal amount | |
| currency | No | Currency code (e.g., EUR, USD) | EUR |
| contactId | No | Associated contact ID | |
| stageId | No | Deal stage ID | |
| comments | No | Deal comments |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states the basic action without behavioral details. It doesn't disclose permissions required, whether the operation is idempotent, error handling, or what happens on success (e.g., returns a deal ID). For a mutation tool, this is a significant gap in 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, direct sentence with zero wasted words, efficiently conveying the core purpose. It's appropriately sized and front-loaded, making it easy for an agent to parse quickly without unnecessary elaboration.
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 creation tool with no annotations and no output schema, the description is incomplete. It doesn't address behavioral aspects like authentication needs, rate limits, or return values, leaving gaps that could hinder correct tool invocation in a real-world 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%, with each parameter clearly documented in the input schema (e.g., 'title' as deal title, 'currency' with default 'EUR'). The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline for high schema coverage without compensating 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 action ('Create') and resource ('new deal in Bitrix24 CRM'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'bitrix24_create_contact' or 'bitrix24_create_lead' beyond the resource type, missing explicit distinction between different creation operations in the CRM.
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 'bitrix24_create_lead' or 'bitrix24_update_deal'. The description lacks context about prerequisites (e.g., needing contact IDs or stage IDs), appropriate scenarios, or exclusions, leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_create_leadC
Create a new lead in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Lead title | |
| name | No | First name | |
| lastName | No | Last name | |
| company | No | Company name | |
| phone | No | Phone number | |
| No | Email address | ||
| sourceId | No | Lead source ID (e.g., CALL, EMAIL, WEB) | |
| statusId | No | Lead status ID | |
| opportunity | No | Expected deal amount | |
| currency | No | Currency code (e.g., EUR, USD) | EUR |
| comments | No | Additional comments |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states this is a creation operation, implying it's a write/mutation tool, but doesn't mention any behavioral traits like authentication requirements, rate limits, error conditions, or what happens on success (e.g., returns lead ID). For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves.
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 that states exactly what the tool does with zero wasted words. It's appropriately sized for a creation tool and front-loads the essential information. Every word earns its place.
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 mutation tool with no annotations and no output schema, the description is inadequate. It doesn't explain what happens after creation (e.g., returns lead ID), what permissions are needed, or any error conditions. The schema covers parameters well, but the description fails to provide the behavioral context needed for safe and 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 description adds no parameter information beyond what's already in the schema, which has 100% coverage with clear descriptions for all 11 parameters. The baseline score of 3 is appropriate since the schema does all the heavy lifting, though the description could have provided context about which fields are most important or how they interrelate.
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 resource ('new lead in Bitrix24 CRM'), making the purpose immediately understandable. It distinguishes this tool from sibling tools like bitrix24_create_company or bitrix24_create_contact by specifying 'lead' as the resource type. However, it doesn't explicitly differentiate from bitrix24_update_lead or other lead-related tools beyond the obvious create vs. update distinction.
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 doesn't mention prerequisites (like required permissions), when to choose this over bitrix24_create_contact or bitrix24_create_deal, or any constraints on usage. The agent must infer usage from the tool name and context alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_diagnose_permissionsB
Diagnose webhook permissions and access to different CRM entities
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
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 hints at a diagnostic/read-only operation but doesn't specify whether it requires authentication, what the output format might be, or if it has side effects like logging. For a tool with zero annotation coverage, this is insufficient to fully inform the agent about its 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, efficient sentence: 'Diagnose webhook permissions and access to different CRM entities.' It's front-loaded with the core purpose, has no unnecessary words, and effectively communicates the tool's function without redundancy or fluff.
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 (diagnostic with no parameters) and the absence of annotations and output schema, the description is minimally adequate. It states what the tool does but lacks details on behavior, output, or usage context. For a diagnostic tool, more information on what 'diagnose' entails would improve completeness, but it meets the basic threshold.
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 0 parameters with 100% schema description coverage, so the schema fully documents the inputs. The description doesn't need to add parameter details, and it doesn't introduce any confusion. A baseline of 4 is appropriate since there are no parameters to explain, and the description aligns with this simplicity.
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: 'Diagnose webhook permissions and access to different CRM entities.' It uses specific verbs ('diagnose') and identifies the target resources ('webhook permissions' and 'CRM entities'). However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_validate_webhook' or 'bitrix24_check_crm_settings,' which prevents 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?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, timing, or how it differs from related tools such as 'bitrix24_validate_webhook' or 'bitrix24_check_crm_settings.' This lack of contextual direction leaves the agent without clear usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_filter_deals_by_budgetC
Filter deals by budget/opportunity amount range
| Name | Required | Description | Default |
|---|---|---|---|
| minBudget | Yes | Minimum budget amount | |
| maxBudget | No | Maximum budget amount (optional) | |
| currency | No | Currency code (e.g., EUR, USD) | EUR |
| limit | No | Maximum number of deals to return | |
| orderBy | No | Field to order by | OPPORTUNITY |
| orderDirection | No | Order direction | DESC |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states the filtering action without disclosing behavioral traits like whether it's read-only, if it requires permissions, rate limits, pagination details, or what the output looks like. For a tool with 6 parameters and no output schema, this is inadequate.
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 zero waste. It's front-loaded and appropriately sized for its purpose, earning its place without unnecessary elaboration.
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 (6 parameters, no annotations, no output schema), the description is incomplete. It lacks behavioral context, usage guidance, and output details, making it insufficient for an agent to fully understand how to invoke and interpret results 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 100%, so the schema fully documents all 6 parameters. The description adds no additional parameter semantics beyond implying budget/opportunity filtering, which is already covered by parameter names and schema descriptions. Baseline 3 is appropriate when 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 states the tool's purpose: 'Filter deals by budget/opportunity amount range.' It specifies the verb ('filter'), resource ('deals'), and filtering criteria ('budget/opportunity amount range'). However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_filter_deals_by_pipeline' or 'bitrix24_filter_deals_by_status,' which would require 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. It doesn't mention sibling filtering tools (e.g., by pipeline or status), list tools (e.g., 'bitrix24_list_deals'), or search tools (e.g., 'bitrix24_search_crm'), leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_filter_deals_by_pipelineB
Filter deals by specific pipeline/category ID
| Name | Required | Description | Default |
|---|---|---|---|
| pipelineId | Yes | Pipeline/Category ID to filter by | |
| limit | No | Maximum number of deals to return | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'filter' but doesn't disclose behavioral traits such as whether this is a read-only operation, if it requires specific permissions, pagination details, or rate limits. The description is too minimal to provide adequate transparency for a tool with 4 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded, making it easy to parse quickly.
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 moderate complexity (4 parameters, no output schema, no annotations), the description is minimal but covers the core purpose. However, it lacks behavioral context and usage guidance, making it incomplete for optimal agent decision-making. It's adequate but has 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?
Schema description coverage is 100%, so the schema fully documents all parameters. The description adds no additional meaning beyond implying 'pipelineId' is the filtering criterion, which is already clear from the schema. This meets the baseline of 3 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 verb 'filter' and resource 'deals' with the specific criterion 'by pipeline/category ID', making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_filter_deals_by_budget' or 'bitrix24_filter_deals_by_status', which would require 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 'bitrix24_list_deals' or other filtering tools. It mentions the filtering criterion but doesn't explain context, prerequisites, or exclusions, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_filter_deals_by_statusB
Filter deals by stage/status IDs
| Name | Required | Description | Default |
|---|---|---|---|
| stageIds | Yes | Array of stage IDs to filter by | |
| pipelineId | No | Pipeline ID to limit search to (optional) | |
| limit | No | Maximum number of deals to return | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
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 states the filtering action but doesn't describe any behavioral traits: it doesn't mention whether this is a read-only operation, what permissions might be required, whether it supports pagination beyond the 'limit' parameter, what happens if no deals match the filter, or the format of returned data. For a tool with 5 parameters and no output schema, this leaves significant gaps.
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 that directly states the tool's purpose with zero wasted words. It's appropriately sized for a filtering tool and front-loads the core functionality without unnecessary elaboration.
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 moderate complexity (5 parameters, no output schema, no annotations), the description is minimally adequate but incomplete. It states what the tool does but lacks behavioral context, usage guidance, and output details. The high schema coverage helps, but for a filtering operation that likely returns deal data, the absence of output schema or description of return values is a notable 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 description coverage is 100%, so the schema fully documents all 5 parameters with descriptions, defaults, and enums. The description adds no additional parameter semantics beyond implying that 'stageIds' are the primary filter. This meets the baseline of 3 when the schema does the heavy lifting, but the description doesn't compensate with any extra context like parameter interactions or examples.
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 'Filter deals by stage/status IDs' clearly states the verb ('filter') and resource ('deals'), with the specific filtering criterion ('by stage/status IDs'). It distinguishes from siblings like 'bitrix24_filter_deals_by_budget' or 'bitrix24_filter_deals_by_pipeline' by specifying the filter type, but doesn't explicitly mention how it differs from broader tools like 'bitrix24_list_deals' or 'bitrix24_search_crm'.
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 doesn't mention when this specific stage/status filtering is appropriate compared to other filtering tools (e.g., 'bitrix24_filter_deals_by_budget'), general listing tools (e.g., 'bitrix24_list_deals'), or search tools (e.g., 'bitrix24_search_crm'). The agent must 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.
bitrix24_forecast_performanceC
Generate performance forecasts and predictive analytics
| Name | Required | Description | Default |
|---|---|---|---|
| forecastType | Yes | Type of forecast to generate | |
| userId | No | User ID to forecast (optional - if not provided, forecasts for all users) | |
| historicalPeriod | No | Historical period to use for forecasting | 6_months |
| forecastPeriod | No | Period to forecast into the future | 1_month |
| includePipelineAnalysis | No | Include pipeline forecasting | |
| includeRiskAssessment | No | Include risk assessment | |
| includeGoalTracking | No | Include goal achievement tracking |
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 states the tool 'generates' forecasts, implying a read-only operation that produces data, but doesn't cover critical aspects like whether it requires specific permissions, has rate limits, returns structured data or reports, or involves computational processing time. This leaves significant gaps for a tool with 7 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence ('Generate performance forecasts and predictive analytics') that front-loads the core purpose without unnecessary words. It's appropriately sized for the tool's complexity, with every word earning its place.
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 (7 parameters, no output schema, and no annotations), the description is incomplete. It doesn't explain what the output looks like (e.g., a report, data table, or visualization), how forecasts are generated (e.g., based on historical data), or behavioral traits like permissions or processing requirements. This makes it inadequate for guiding an agent 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?
The input schema has 100% description coverage, with clear parameter names and enum values (e.g., forecastType options like 'pipeline_forecast'). The description adds no additional parameter semantics beyond what's in the schema, such as explaining how parameters interact or providing examples. This meets the baseline score of 3 since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Generate performance forecasts and predictive analytics' clearly states the verb ('generate') and resource ('performance forecasts and predictive analytics'), making the purpose understandable. However, it doesn't explicitly differentiate this forecasting tool from sibling tools like 'bitrix24_analyze_account_performance' or 'bitrix24_generate_sales_report', which might also involve performance analysis.
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 doesn't mention prerequisites, context (e.g., for planning or reporting), or compare it to siblings like 'bitrix24_get_user_performance_summary' or 'bitrix24_analyze_account_performance', leaving the agent to infer usage 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.
bitrix24_generate_sales_reportC
Generate comprehensive sales report with customizable metrics and date ranges
| Name | Required | Description | Default |
|---|---|---|---|
| reportType | Yes | Type of report to generate | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| userIds | No | Specific user IDs to include (optional) | |
| includeMetrics | No | Specific metrics to include in report | |
| includeTrendAnalysis | No | Include trend analysis | |
| includeComparisons | No | Include performance comparisons |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions 'comprehensive' and 'customizable' but doesn't disclose whether this is a read-only operation, what permissions might be required, whether it's resource-intensive, or what format the report takes. For a 7-parameter tool with no annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that communicates the core purpose without unnecessary words. It's appropriately sized and front-loaded with the main action, making it easy to understand at a glance.
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 7-parameter tool with no annotations and no output schema, the description is inadequate. It doesn't explain what kind of output to expect (format, structure, size), doesn't mention any constraints or limitations, and provides minimal guidance on parameter usage. The high parameter count and lack of structured metadata require more descriptive 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%, providing complete parameter documentation. The description adds minimal value beyond the schema by mentioning 'customizable metrics and date ranges' which aligns with parameters like 'includeMetrics', 'startDate', and 'endDate'. However, it doesn't provide additional context about parameter interactions or usage patterns.
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 ('generate') and resource ('comprehensive sales report') with additional context about customizable metrics and date ranges. It distinguishes from siblings like 'bitrix24_get_user_performance_summary' by emphasizing report generation rather than data retrieval, though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'bitrix24_get_user_performance_summary' or 'bitrix24_compare_user_performance'. The description mentions customizable metrics and date ranges but doesn't specify appropriate contexts or exclusions for this report generation tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_all_usersC
Get all users in the system with their names and details
| Name | Required | Description | Default |
|---|---|---|---|
| includeInactive | No | Include inactive users |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'Get all users' implies a read operation, it doesn't specify whether this is paginated, rate-limited, permission-dependent, or what format/details are returned. The phrase 'with their names and details' is vague about what specific details are included. For a tool with zero annotation coverage, this leaves significant behavioral gaps.
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 that communicates the core purpose. It's appropriately sized for a simple retrieval tool. However, it could be slightly more structured by front-loading the most critical information more explicitly.
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 (1 parameter, no output schema, no annotations), the description is minimally adequate. It covers what the tool does but lacks important context about behavioral characteristics, return format, and differentiation from sibling tools. For a read operation with no annotations, more completeness would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents the single parameter 'includeInactive'. The description doesn't add any parameter-specific information beyond what's in the schema. According to guidelines, when schema coverage is high (>80%), the baseline score is 3 even with no param info in the description.
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 'all users in the system' with additional detail 'with their names and details'. It's specific about scope (all users) and output content (names and details). However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_get_user' or 'bitrix24_resolve_user_names', which prevents 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?
The description provides no guidance on when to use this tool versus alternatives. There's no mention of when this tool is appropriate compared to 'bitrix24_get_user' (single user) or 'bitrix24_resolve_user_names' (name resolution). No context about prerequisites, limitations, or typical use cases is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_companies_from_date_rangeB
Get companies created within a specific date range
| Name | Required | Description | Default |
|---|---|---|---|
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional) | |
| limit | No | Maximum number of companies to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral context. It implies a read-only operation but doesn't disclose pagination behavior, rate limits, authentication requirements, error conditions, or what happens when no companies match the date range. The description doesn't contradict annotations (none exist), but it's insufficient for a tool with potential complexity.
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 that directly states the tool's purpose without unnecessary words. It's front-loaded with the core functionality and contains zero redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (date filtering with optional parameters), no annotations, and no output schema, the description is minimally adequate but incomplete. It covers the basic purpose but lacks behavioral details, usage context, and output expectations that would help an agent 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 100%, so the schema fully documents all three parameters (startDate, endDate, limit) with formats and defaults. The description mentions 'date range' which aligns with the schema but adds no additional semantic context beyond what's already in the structured fields.
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 ('companies') with the specific scope 'created within a specific date range'. It distinguishes from general listing tools like 'bitrix24_list_companies' but doesn't explicitly differentiate from similar date-range siblings like 'bitrix24_get_deals_from_date_range' or 'bitrix24_get_leads_from_date_range'.
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. It doesn't mention when to choose this over 'bitrix24_list_companies', 'bitrix24_get_latest_companies', or 'bitrix24_get_companies_with_user_names', nor does it specify prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_companies_with_user_namesB
Get companies with user names resolved (assigned, created, modified by)
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of companies to return | |
| filter | No | Filter criteria | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
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 states the tool retrieves companies with resolved user names, implying a read-only operation, but doesn't clarify critical aspects like whether it's paginated (beyond the 'limit' parameter), what the output format is, or if there are rate limits or authentication requirements. For a tool with no annotations, this leaves significant gaps in understanding its 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, efficient sentence that front-loads the core functionality: 'Get companies with user names resolved (assigned, created, modified by)'. It avoids redundancy and wastes no words, making it easy to parse quickly. Every part of the sentence contributes directly to understanding 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?
Given the tool's moderate complexity (4 parameters, nested filter object, no output schema) and lack of annotations, the description is minimally adequate. It clarifies the key feature (resolved user names) but omits details on output structure, error handling, or usage context relative to siblings. With no output schema, the description should ideally hint at return values, but it doesn't, leaving room for improvement 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?
The input schema has 100% description coverage, with clear documentation for all parameters (limit, filter, orderBy, orderDirection). The description adds no parameter-specific information beyond what the schema provides, such as details on filter criteria or how user names are resolved. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema handles the heavy lifting without extra value from the description.
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: 'Get companies with user names resolved (assigned, created, modified by)'. It specifies the verb ('Get'), resource ('companies'), and key feature ('user names resolved'), making it distinct from generic list tools like 'bitrix24_list_companies'. However, it doesn't explicitly differentiate from 'bitrix24_get_companies_from_date_range' or 'bitrix24_get_latest_companies', which might also retrieve companies with similar parameters.
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 doesn't mention sibling tools like 'bitrix24_list_companies' (which might list companies without resolved user names) or 'bitrix24_get_companies_from_date_range' (which might filter by date). Without such context, an agent must infer usage from the name and description alone, which is insufficient for optimal tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_companyB
Retrieve company information by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Company ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'retrieve' implies a read operation, it doesn't specify authentication requirements, rate limits, error conditions, or what happens with invalid IDs. For a tool with zero annotation coverage, this leaves significant behavioral gaps.
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 maximally concise at just 4 words, front-loading the essential information with zero wasted words. Every element ('retrieve', 'company information', 'by ID') serves a clear purpose in communicating the tool's 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?
For a simple read operation with one parameter and no output schema, the description is minimally adequate. However, with no annotations and multiple similar sibling tools, it lacks important context about when to use it versus alternatives and what behavioral constraints exist. The description meets basic requirements but leaves gaps in a competitive toolset.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage with 'id' clearly documented as 'Company ID'. The description adds no additional parameter information beyond what's already in the schema. With complete schema coverage, the baseline score of 3 is appropriate as the description doesn't enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Retrieve company information by ID' clearly states the verb ('retrieve') and resource ('company information'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'bitrix24_get_companies_from_date_range' or 'bitrix24_list_companies' which also retrieve company data but with different approaches.
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. With multiple sibling tools for retrieving company data (e.g., get_companies_from_date_range, list_companies, get_companies_with_user_names), there's no indication whether this is for single-record lookup versus bulk operations, or what makes it distinct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_contactC
Retrieve contact information by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Contact ID |
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 states it's a retrieval operation, implying it's likely read-only, but doesn't confirm this or detail aspects like error handling, rate limits, authentication requirements, or what happens if the ID is invalid. This leaves significant gaps for a tool that accesses potentially sensitive contact data.
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 that directly states the tool's function without unnecessary words. It's front-loaded with the core action, making it easy to parse quickly.
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 no annotations and no output schema, the description is insufficient. It doesn't explain what 'contact information' includes (e.g., fields returned), error conditions, or behavioral traits like whether it's idempotent or has side effects. This leaves the agent with incomplete context for reliable 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 has 100% description coverage, with the 'id' parameter clearly documented as 'Contact ID'. The description adds no additional meaning beyond this, such as format examples (e.g., numeric vs. string) or constraints. Given the high schema coverage, 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 ('Retrieve') and resource ('contact information'), making the purpose understandable. However, it doesn't distinguish this tool from sibling tools like 'bitrix24_get_contact' or 'bitrix24_get_contacts_with_user_names', which might retrieve similar data in different ways.
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 doesn't mention when to choose this over 'bitrix24_get_contacts_with_user_names' or 'bitrix24_get_latest_contacts', nor does it specify prerequisites like needing a specific ID format or permissions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_contacts_with_user_namesB
Get contacts with user names resolved (assigned, created, modified by)
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of contacts to return | |
| filter | No | Filter criteria |
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 describes the core functionality (getting contacts with resolved user names) but lacks critical behavioral details: it doesn't mention whether this is a read-only operation, if it requires specific permissions, how results are ordered, pagination behavior (beyond the 'limit' parameter), or what the output format looks like. For a tool with no annotation coverage, this leaves significant gaps.
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 that front-loads the key information: the action (Get), resource (contacts), and unique feature (user names resolved). There is zero wasted text, and it's appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (2 parameters, nested object in filter, no output schema, no annotations), the description is minimally adequate. It covers the purpose but lacks behavioral context (e.g., read-only nature, permissions, output format) and usage guidelines. With no output schema, it should ideally hint at return values, but the concise description focuses on the core feature without addressing these gaps fully.
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 fully documents both parameters ('limit' and 'filter'). The description adds no additional parameter semantics beyond what the schema providesāit doesn't explain typical filter criteria, how user name resolution works with filters, or provide examples. With high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but doesn't need to heavily.
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 ('contacts'), and specifies the key feature of resolving user names for assigned, created, and modified by fields. It distinguishes from generic list tools like 'bitrix24_list_contacts' by highlighting the user name resolution, but doesn't explicitly differentiate from similar sibling tools like 'bitrix24_get_companies_with_user_names' or 'bitrix24_get_deals_with_user_names' beyond the resource type.
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 doesn't mention when to prefer this over 'bitrix24_list_contacts' (which likely doesn't resolve user names) or 'bitrix24_get_contact' (for single contacts), nor does it specify prerequisites or exclusions. Usage is implied by the name and description 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.
bitrix24_get_dealC
Retrieve deal information by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Deal ID |
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 states this is a retrieval operation, implying it's likely read-only, but doesn't confirm this or mention any other behavioral traits like authentication requirements, rate limits, error handling, or what happens if the ID doesn't exist. For a tool with zero annotation coverage, this leaves significant gaps.
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 just four words, front-loading the essential information with zero wasted words. Every element ('retrieve', 'deal information', 'by ID') contributes directly to understanding the tool's 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 lack of annotations and output schema, the description is incomplete for a retrieval tool. It doesn't explain what information is returned (e.g., deal fields, format), whether it's a read-only operation, or any error conditions. For a tool that likely returns structured data, more context would be helpful for an AI agent to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions retrieving 'by ID', which aligns with the single 'id' parameter in the schema. Since schema description coverage is 100% (the parameter already has a clear description), the description adds minimal value beyond what's already documented in the structured data. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('retrieve') and resource ('deal information by ID'), making the purpose immediately understandable. However, it doesn't distinguish this from sibling tools like 'bitrix24_get_deals_from_date_range' or 'bitrix24_list_deals', which also retrieve deal information but with different parameters or scopes.
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. With sibling tools like 'bitrix24_get_deals_from_date_range', 'bitrix24_list_deals', and 'bitrix24_get_latest_deals' available, there's no indication that this tool is specifically for retrieving a single deal by ID rather than multiple deals by other criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_deal_pipelinesB
Get all available deal pipelines/categories with their IDs and names
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states what it returns without behavioral details. It doesn't disclose if this is a read-only operation, requires authentication, has rate limits, or how it handles errorsācritical for a tool with zero parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action and output. There's no wasted verbiage, making it easy to parse quickly.
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 read operation with no parameters and no output schema, the description is minimally adequate but lacks depth. It doesn't explain the return format (e.g., list structure, pagination) or behavioral context, leaving gaps despite the low 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?
The tool has 0 parameters with 100% schema description coverage, so no parameter documentation is needed. The description doesn't add param info, which is appropriate, earning a baseline score of 4 for adequately handling the lack of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'deal pipelines/categories' along with the specific data returned 'IDs and names'. It distinguishes itself from siblings like 'bitrix24_get_deal_stages' by focusing on pipelines/categories rather than stages, though it doesn't 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. It doesn't mention prerequisites, context for retrieving pipelines, or differentiate from similar tools like 'bitrix24_filter_deals_by_pipeline' that might use pipeline data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_deals_from_date_rangeC
Get deals created within a specific date range
| Name | Required | Description | Default |
|---|---|---|---|
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional) | |
| limit | No | Maximum number of deals to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral context. It doesn't disclose whether this is a read-only operation, what permissions might be required, whether results are paginated, the format of returned data, or any rate limits. 'Get' implies a read operation, but lacks details about mutation safety, authentication needs, or response characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a straightforward filtering tool and front-loads the essential information. Every word earns its place.
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 3 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what 'deals' are in this context, what fields are returned, whether results are sorted, or how to handle large result sets. The lack of behavioral transparency and output information creates significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters (startDate, endDate, limit) with formats and defaults. The description adds no parameter-specific information beyond implying date-range filtering, which is already clear from the schema. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 ('deals'), specifying the scope ('created within a specific date range'). It distinguishes from generic list tools like 'bitrix24_list_deals' by focusing on date filtering, but doesn't explicitly differentiate from similar date-range tools like 'bitrix24_get_companies_from_date_range' or 'bitrix24_get_leads_from_date_range'.
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 doesn't mention when to choose this over 'bitrix24_list_deals' (unfiltered listing), 'bitrix24_get_latest_deals' (recent deals without date parameters), or other filtering tools like 'bitrix24_filter_deals_by_status'. No prerequisites, exclusions, or complementary tools are specified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_deal_stagesB
Get all deal stages for a specific pipeline or all pipelines
| Name | Required | Description | Default |
|---|---|---|---|
| pipelineId | No | Pipeline ID to get stages for (optional - if not provided, gets all stages) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states what the tool does, not how it behaves. It doesn't disclose whether this is a read-only operation, what authentication is needed, rate limits, error conditions, or what format the stages are returned in. The description adds minimal behavioral context beyond the basic function.
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 that clearly states the tool's purpose with zero wasted words. It's appropriately sized for a simple retrieval tool and front-loads the 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?
For a simple read operation with 1 parameter and 100% schema coverage, the description is minimally adequate. However, with no annotations and no output schema, it should ideally provide more context about return format, authentication requirements, or error handling 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 the schema already documents the single optional parameter pipelineId. The description adds marginal value by reinforcing the optional nature and clarifying that omitting it returns all stages, but doesn't provide additional semantic context beyond what's in 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 the verb 'Get' and resource 'deal stages', specifying scope with 'for a specific pipeline or all pipelines'. It distinguishes from sibling tools like 'bitrix24_get_deal_pipelines' by focusing on stages rather than pipelines, though it doesn't explicitly mention this distinction.
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 context by mentioning the optional pipelineId parameter, but doesn't provide explicit guidance on when to use this tool versus alternatives like 'bitrix24_get_deal' or 'bitrix24_track_deal_progression'. No when-not-to-use or prerequisite information is included.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_deals_with_user_namesB
Get deals with user names resolved (assigned, created, modified by)
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of deals to return | |
| filter | No | Filter criteria | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
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 states the tool fetches deals with resolved user names, implying a read-only operation that enriches data with user information. However, it lacks details on permissions required, rate limits, pagination behavior (beyond the 'limit' parameter), error handling, or what 'resolved' entails (e.g., whether it includes full names or IDs). For a tool with no annotation coverage, 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, efficient sentence: 'Get deals with user names resolved (assigned, created, modified by)'. It's front-loaded with the core purpose and includes clarifying parentheses. There's no wasted verbiage, repetition, or unnecessary details, making it highly concise and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, nested objects, no output schema), the description is minimally adequate. It clarifies the key feature (user name resolution) but lacks context on behavioral aspects like permissions or error handling. With no annotations and no output schema, the description should ideally provide more completeness, but it meets a basic threshold by stating the purpose clearly.
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, with clear documentation for all parameters (limit, filter, orderBy, orderDirection). The description adds no additional parameter semantics beyond what the schema providesāit doesn't explain how 'filter' interacts with user resolution or if 'orderBy' affects performance. Given the high schema coverage, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
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: 'Get deals with user names resolved (assigned, created, modified by)'. It specifies the verb ('Get'), resource ('deals'), and key feature ('user names resolved'), which distinguishes it from generic deal-fetching tools. However, it doesn't explicitly differentiate from similar siblings like 'bitrix24_get_deals_from_date_range' or 'bitrix24_list_deals', which would require more specific comparison.
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 doesn't mention when it's preferred over other deal-related tools (e.g., 'bitrix24_list_deals', 'bitrix24_get_deals_from_date_range') or clarify if it's for specific scenarios like reporting or user attribution analysis. Without such context, the agent must infer usage from the name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_latest_companiesB
Get the most recent companies ordered by creation date
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of companies to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions ordering but doesn't disclose pagination behavior, rate limits, authentication needs, or whether it's read-only (implied by 'Get' but not explicit). Lacks 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?
Single sentence, front-loaded with the core purpose, no redundant words. Every part of the description earns its place by specifying the action, resource, and ordering.
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 read operation with one parameter and no output schema, the description is minimally adequate. However, without annotations, it lacks details on safety, performance, or error handling that would enhance completeness for agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'limit' fully documented in the schema. The description adds no additional parameter semantics beyond what the schema 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 clearly states the action ('Get') and resource ('most recent companies'), specifying ordering by creation date. It distinguishes from generic 'list_companies' but doesn't explicitly differentiate from sibling 'bitrix24_get_companies_from_date_range' which also involves temporal 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?
No guidance on when to use this tool versus alternatives like 'bitrix24_get_companies_from_date_range' or 'bitrix24_list_companies'. The description implies recency-based retrieval but doesn't specify scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_latest_contactsB
Get the most recent contacts ordered by creation date
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of contacts to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states ordering by creation date but doesn't disclose pagination behavior, rate limits, authentication needs, or what fields are returned. For a read operation with zero annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, zero waste, front-loaded with core purpose. Every word earns its place without redundancy or fluff.
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 read tool with one parameter and no output schema, the description is minimally adequate but lacks behavioral context (e.g., return format, pagination). Without annotations, it should provide more operational details 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%, with the single parameter 'limit' fully documented in the schema. The description adds no parameter-specific information beyond implying ordering by creation date, which isn't a parameter. Baseline 3 is appropriate when 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 states the verb ('Get') and resource ('most recent contacts'), specifying ordering by creation date. It distinguishes from 'bitrix24_list_contacts' by focusing on recency, but doesn't explicitly contrast with 'bitrix24_get_contacts_with_user_names' or 'bitrix24_get_contact'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'bitrix24_list_contacts' (unfiltered list) or 'bitrix24_get_contacts_with_user_names' (includes user data). The description implies usage for recent contacts but lacks explicit when/when-not statements or named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_latest_dealsB
Get the most recent deals ordered by creation date
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of deals to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool retrieves data (implied read-only) but doesn't disclose behavioral traits like pagination, rate limits, authentication needs, or error handling. For a read operation with no annotations, this leaves significant gaps.
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 that front-loads the core purpose. It wastes no words and is appropriately sized for a simple tool with one parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one parameter and no output schema, the description covers the basic purpose. However, without annotations or output details, it lacks context on return format, error cases, or sibling differentiation, making it 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?
Schema description coverage is 100%, with the 'limit' parameter fully documented in the schema. The description doesn't add meaning beyond the schema, as it doesn't explain parameter interactions or usage nuances. Baseline 3 is appropriate when 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 states the verb ('Get') and resource ('most recent deals'), specifying ordering by creation date. It distinguishes from siblings like 'bitrix24_list_deals' by focusing on recency, though it doesn't explicitly compare to 'bitrix24_get_deals_from_date_range' for date-based 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?
No guidance on when to use this tool versus alternatives like 'bitrix24_list_deals' (general listing) or 'bitrix24_get_deals_from_date_range' (custom date range). The description implies usage for recent deals but lacks explicit comparisons or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_latest_leadsC
Get the most recent leads ordered by creation date
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of leads to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool retrieves leads ordered by creation date but doesn't disclose behavioral traits like whether it's read-only, pagination behavior, rate limits, authentication needs, or what happens if no leads exist. For a tool with zero annotation coverage, this is inadequate.
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 that front-loads the core purpose without unnecessary words. Every part of the sentence contributes to understanding the tool's 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 no annotations and no output schema, the description is incomplete. It lacks details on return format, error handling, or behavioral constraints. For a tool with one parameter but no structured safety or output information, the description should provide more context to be fully helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'limit' documented in the schema. The description doesn't add any parameter-specific information beyond what the schema provides, so it meets the baseline of 3 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 action ('Get') and resource ('most recent leads'), specifying ordering by creation date. It distinguishes from other lead-related tools like 'bitrix24_list_leads' by focusing on recency, but doesn't explicitly contrast with 'bitrix24_get_leads_from_date_range' which offers date-range 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?
No guidance on when to use this tool versus alternatives like 'bitrix24_list_leads' or 'bitrix24_get_leads_from_date_range'. The description implies usage for retrieving recent leads but lacks explicit 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.
bitrix24_get_leadC
Retrieve lead information by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Lead ID |
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 states the tool retrieves information, implying a read-only operation, but doesn't cover aspects like authentication requirements, error handling (e.g., invalid ID), rate limits, or response format. This leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Retrieve lead information by ID') with no wasted words. It's appropriately sized for a simple tool with one parameter, making it easy to parse quickly.
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 (1 parameter, 100% schema coverage) but lack of annotations and output schema, the description is incomplete. It doesn't address behavioral aspects like error cases or response structure, which are crucial for an agent to use it correctly. For a retrieval tool with no structured output info, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal value beyond the input schema, which has 100% coverage. It mentions 'by ID', aligning with the schema's 'id' parameter, but doesn't provide additional context such as ID format or examples. With high schema coverage, the baseline is 3, as the description doesn't compensate with extra semantic details.
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 'Retrieve lead information by ID' clearly states the action (retrieve) and resource (lead information), with the specific mechanism (by ID) for identification. It distinguishes from sibling tools like 'bitrix24_get_latest_leads' or 'bitrix24_get_leads_from_date_range' by focusing on individual retrieval rather than listing or filtering, though it doesn't explicitly name these alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 implies usage when you have a specific lead ID, but it doesn't mention prerequisites (e.g., needing a valid ID), exclusions (e.g., not for bulk retrieval), or name sibling tools like 'bitrix24_get_latest_leads' for different scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_leads_from_date_rangeB
Get leads created within a specific date range
| Name | Required | Description | Default |
|---|---|---|---|
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional) | |
| limit | No | Maximum number of leads to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states a read operation ('Get'), which implies non-destructive behavior, but doesn't disclose any behavioral traits such as authentication requirements, rate limits, pagination details, error handling, or the format/structure of returned data. This leaves significant gaps for a tool with no 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, efficient sentence that directly states the tool's purpose with zero redundant or verbose language. It is appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a read operation with potential complexity (date-range filtering, limit handling), the description is insufficient. It doesn't explain what data is returned, how results are structured, or any behavioral constraints, leaving the agent with incomplete context for proper 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 100%, with clear documentation for all three parameters (startDate, endDate, limit) including formats, optionality, and defaults. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline of 3 for high schema coverage without compensating 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 verb ('Get') and resource ('leads'), specifying the scope ('created within a specific date range'). It distinguishes from siblings like 'bitrix24_list_leads' by indicating date-based filtering, but doesn't explicitly contrast with 'bitrix24_get_latest_leads' or 'bitrix24_get_leads_with_user_names', which offer different filtering approaches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving leads within a date range, but provides no explicit guidance on when to use this tool versus alternatives like 'bitrix24_get_latest_leads' (for recent leads) or 'bitrix24_list_leads' (for unfiltered listing). It lacks any mention of prerequisites, exclusions, or comparative contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_leads_with_user_namesC
Get leads with user names resolved (assigned, created, modified by)
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of leads to return | |
| filter | No | Filter criteria | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states what the tool does (get leads with resolved user names) but lacks behavioral details: it doesn't mention whether this is a read-only operation, what permissions are required, how user names are resolved (e.g., from user IDs), whether there are rate limits, or what the output format looks like (especially important without an output schema). The description is functional but misses critical operational context.
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 that clearly states the tool's purpose with no wasted words. It's front-loaded with the core functionality and includes a helpful parenthetical clarification. Every part of the description earns its place by adding value.
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 (4 parameters, nested filter object, no output schema, and no annotations), the description is incomplete. It explains what the tool does but lacks crucial context: no information about output structure, error handling, authentication requirements, or how user name resolution interacts with parameters like filter. For a tool with rich input options and no structured output documentation, this leaves significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are well-documented in the schema. The description adds no parameter-specific information beyond what's in the schema (e.g., it doesn't explain how the filter object works with user name resolution or provide examples). This meets the baseline of 3 since the schema does the heavy lifting, but the description doesn't enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'leads', with the specific enhancement 'with user names resolved' and clarifies which user fields are resolved (assigned, created, modified by). It distinguishes from generic lead-getting tools like 'bitrix24_list_leads' by specifying the user name resolution feature. However, it doesn't explicitly differentiate from 'bitrix24_get_leads_from_date_range' which might also return leads with 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. It doesn't mention when to choose this over 'bitrix24_list_leads' (which might not resolve user names) or 'bitrix24_get_leads_from_date_range' (which might offer different filtering). No context about prerequisites, limitations, or typical use cases is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_team_dashboardC
Get real-time team performance dashboard with key metrics and alerts
| Name | Required | Description | Default |
|---|---|---|---|
| includeRealTimeMetrics | No | Include real-time performance metrics | |
| includeTopPerformers | No | Include top performers identification | |
| includeAttentionNeeded | No | Include accounts/deals needing attention | |
| includeWorkloadDistribution | No | Include workload distribution analysis | |
| timeframe | No | Timeframe for dashboard metrics | today |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but provides minimal behavioral context. It mentions 'real-time' and 'dashboard' but doesn't disclose permissions needed, rate limits, data freshness, or what happens if parameters conflict. For a 5-parameter tool with no annotation coverage, this is inadequate.
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 that front-loads key information ('Get real-time team performance dashboard'). It could be slightly more structured but avoids redundancy and wastes no words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters with full schema coverage but no annotations or output schema, the description is minimally adequate. It states the purpose but lacks behavioral context, usage guidance, and output details, leaving gaps for a tool that likely returns complex dashboard data.
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 parameters are fully documented in the schema. The description adds no additional parameter semantics beyond implying metrics and alerts, which aligns with schema descriptions. Baseline 3 is appropriate when 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 states the action ('Get') and resource ('real-time team performance dashboard') with specific content ('key metrics and alerts'). It distinguishes from most siblings focused on individual entities or specific analyses, though not explicitly contrasting with similar dashboard tools like 'bitrix24_get_user_performance_summary'.
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 is provided. The description implies a dashboard view but doesn't specify scenarios, prerequisites, or exclusions compared to sibling tools like 'bitrix24_monitor_sales_activities' or 'bitrix24_forecast_performance'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_userC
Get user information by ID
| Name | Required | Description | Default |
|---|---|---|---|
| userId | Yes | User ID to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'Get user information' which implies a read-only operation, but doesn't disclose any behavioral traits like authentication requirements, rate limits, error handling, or what specific information is returned (e.g., contact details, permissions). This leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without any wasted words. It's appropriately sized for a simple lookup tool with one parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete. It doesn't explain what 'user information' includes (e.g., fields returned), potential errors, or system constraints. For a tool in a complex CRM context with many siblings, this minimal description leaves the agent under-informed about behavioral and output expectations.
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%, with the parameter 'userId' clearly documented as 'User ID to retrieve'. The description adds no additional meaning beyond this, such as format examples (e.g., numeric vs. string ID) or constraints. With high schema coverage, 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 'Get user information by ID' clearly states the verb ('Get') and resource ('user information'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_get_all_users' or 'bitrix24_resolve_user_names', which would require 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. With siblings like 'bitrix24_get_all_users' (list all users) and 'bitrix24_resolve_user_names' (likely for name resolution), the agent receives no help in choosing between them for specific scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_get_user_performance_summaryC
Get comprehensive performance summary for users including deal metrics and conversion rates
| Name | Required | Description | Default |
|---|---|---|---|
| userId | No | User ID to analyze (optional - if not provided, analyzes all users) | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| includeDealMetrics | No | Include deal creation/conversion metrics | |
| includeActivityRatios | No | Include activity type ratios | |
| includeConversionRates | No | Calculate conversion rates |
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 'comprehensive performance summary' but lacks details on what that entails (e.g., format, pagination, rate limits, or permissions required). It doesn't specify if this is a read-only operation, how data is aggregated, or potential performance impacts, leaving significant gaps for an AI agent.
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 that front-loads the core purpose. It avoids unnecessary words and directly states what the tool does. However, it could be slightly more structured by explicitly listing key features or use cases, but it's still highly concise and 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?
Given the complexity of a performance summary tool with 6 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the return format, data aggregation methods, or any behavioral traits like error handling or data freshness. This leaves the AI agent with insufficient context to use the tool effectively beyond basic parameter input.
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 all parameters thoroughly. The description adds minimal value beyond the schema by implying metrics like 'deal metrics and conversion rates,' which map to parameters like 'includeDealMetrics' and 'includeConversionRates,' but doesn't provide additional syntax or format details. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get comprehensive performance summary for users including deal metrics and conversion rates.' It specifies the verb 'Get' and resource 'performance summary for users' with details about included metrics. However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_compare_user_performance' or 'bitrix24_get_team_dashboard,' which might offer similar functionality.
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 doesn't mention sibling tools like 'bitrix24_compare_user_performance' for comparisons or 'bitrix24_get_team_dashboard' for team-level insights. There's no context about prerequisites, such as needing user data availability, or exclusions, like not working for historical data beyond a certain range.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_list_companiesC
List companies with optional filtering and ordering
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of companies to return | |
| filter | No | Filter criteria (e.g., {"TITLE": "Tech Corp"}) | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
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. While 'List' implies a read operation, it doesn't specify whether this is paginated, rate-limited, requires authentication, or what the return format looks like. The mention of 'optional filtering and ordering' hints at capabilities but doesn't describe behavioral constraints or side effects. For a tool with 4 parameters and no annotation coverage, this is inadequate.
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 perfectly concise at 7 words, front-loading the core purpose ('List companies') and efficiently adding scope information ('with optional filtering and ordering'). Every word earns its place with zero redundancy or unnecessary elaboration. This is an excellent example of economical description writing.
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, no annotations, and no output schema, the description is insufficiently complete. While concise, it doesn't compensate for the lack of structured metadata about behavior, return values, or usage context. Given the complexity of filtering objects and ordering operations, more guidance would be helpful despite the good schema coverage.
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%, with all parameters well-documented in the input schema. The description adds minimal value beyond what's already in the schema - it mentions 'optional filtering and ordering' which corresponds to the 'filter', 'orderBy', and 'orderDirection' parameters, but provides no additional semantic context. With complete schema coverage, 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 the verb ('List') and resource ('companies'), making the purpose immediately understandable. It distinguishes from siblings like 'bitrix24_get_company' (singular fetch) and 'bitrix24_get_companies_from_date_range' (specific filter), though it doesn't explicitly name these alternatives. The mention of 'optional filtering and ordering' adds useful scope but doesn't fully differentiate from all similar list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'bitrix24_get_companies_from_date_range', 'bitrix24_get_companies_with_user_names', and 'bitrix24_get_latest_companies', there's no indication of when this general listing tool is preferable over more specific ones. The description lacks any context about prerequisites, typical use cases, or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_list_contactsC
List contacts with optional filtering
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of contacts to return | |
| filter | No | Filter criteria (e.g., {"NAME": "John"}) |
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 mentions 'optional filtering' but doesn't describe key behaviors like whether this is a read-only operation, what permissions are needed, how results are paginated or sorted, or what the output format looks like. For a listing tool with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves.
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 just 5 words, front-loading the core purpose without any wasted words. Every element ('List contacts', 'optional filtering') directly contributes to understanding the tool's 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 lack of annotations and output schema, the description is insufficiently complete. It doesn't explain what the tool returns (e.g., contact fields, format), behavioral constraints, or how it differs from sibling contact tools. For a listing operation in a complex CRM system with many alternatives, more context is needed for effective 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%, with both parameters ('limit' and 'filter') well-documented in the schema. The description adds minimal value beyond this by mentioning 'optional filtering' which aligns with the 'filter' parameter, but doesn't provide additional context about filter syntax, examples, or limitations. This meets the baseline of 3 when schema coverage is high.
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 'List contacts with optional filtering' clearly states the verb ('List') and resource ('contacts'), making the basic purpose understandable. However, it doesn't distinguish this tool from sibling tools like 'bitrix24_get_contact', 'bitrix24_get_contacts_with_user_names', or 'bitrix24_get_latest_contacts', leaving ambiguity about when to use this specific listing tool versus other contact-related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With multiple sibling tools for accessing contacts (e.g., 'bitrix24_get_contact' for single contact, 'bitrix24_get_latest_contacts' for recent ones), the agent receives no explicit or implied direction about appropriate contexts, prerequisites, or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_list_dealsB
List deals with optional filtering and ordering
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of deals to return | |
| filter | No | Filter criteria (e.g., {"TITLE": "Project"}) | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'List' implies a read operation, it doesn't specify whether this requires authentication, what permissions are needed, whether results are paginated, or what format the output takes. The mention of 'optional filtering and ordering' hints at capabilities but lacks operational details.
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 just 7 words, front-loading the core purpose ('List deals') immediately. Every word earns its place by adding meaningful information about capabilities ('with optional filtering and ordering').
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 list/read operation with no annotations and no output schema, the description provides basic purpose but lacks important context about authentication requirements, result format, pagination behavior, or how it differs from similar sibling tools. The 100% schema coverage helps, but the description itself leaves significant gaps for agent 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 description mentions 'optional filtering and ordering' which aligns with the 'filter', 'orderBy', and 'orderDirection' parameters in the schema. However, with 100% schema description coverage, the schema already documents all four parameters thoroughly. The description adds minimal value beyond what's already in the structured schema fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('deals'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'bitrix24_get_deal', 'bitrix24_get_deals_from_date_range', or 'bitrix24_get_latest_deals', which all appear to retrieve deals in different ways.
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 mentions 'optional filtering and ordering' which implies some usage context, but provides no explicit guidance on when to use this tool versus the many sibling deal-related tools. There's no mention of alternatives, prerequisites, or specific scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_list_leadsB
List leads with optional filtering and ordering
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of leads to return | |
| filter | No | Filter criteria (e.g., {"STATUS_ID": "NEW"}) | |
| orderBy | No | Field to order by | DATE_CREATE |
| orderDirection | No | Order direction | DESC |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'optional filtering and ordering' but doesn't disclose critical behavioral traits like whether this is a read-only operation, pagination behavior, rate limits, authentication requirements, or what happens when no leads match filters. For a listing tool with no annotation coverage, this leaves significant gaps.
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 that front-loads the core purpose ('List leads') followed by key capabilities ('with optional filtering and ordering'). Every word earns its place with zero waste or 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 moderate complexity (4 parameters, nested objects, no output schema), the description is minimally adequate but incomplete. It covers the basic purpose but lacks behavioral context (especially critical with no annotations), doesn't explain return format or structure, and provides no differentiation from similar sibling tools. For a listing tool in a crowded namespace, more contextual guidance would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 4 parameters thoroughly. The description adds minimal value beyond what's in the schema - it mentions 'optional filtering and ordering' which aligns with the 'filter' and 'orderBy/orderDirection' parameters but provides no additional semantic context. Baseline 3 is appropriate when 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 states the verb ('List') and resource ('leads'), making the purpose immediately understandable. However, it doesn't distinguish this tool from sibling tools like 'bitrix24_get_latest_leads', 'bitrix24_get_leads_from_date_range', or 'bitrix24_get_leads_with_user_names', which appear to serve similar listing/filtering purposes.
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 the many sibling listing tools (e.g., 'bitrix24_get_latest_leads', 'bitrix24_get_leads_from_date_range'). It mentions 'optional filtering and ordering' but doesn't specify use cases, prerequisites, or when alternative tools might be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_monitor_sales_activitiesC
Monitor sales-related activities including tasks, follow-ups, and meetings
| Name | Required | Description | Default |
|---|---|---|---|
| userId | No | User ID to monitor (optional - if not provided, monitors all users) | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| includeTaskCompletion | No | Include task completion rates | |
| includeFollowUpTracking | No | Include follow-up tracking | |
| includeMeetingTracking | No | Include meeting tracking | |
| includeQuoteActivity | No | Include quote/proposal activity |
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 states the tool 'monitors' activities, which implies a read-only operation, but doesn't clarify whether this requires specific permissions, what format the monitoring output takes, whether it's real-time or historical, or any rate limits. For a monitoring tool with 7 parameters and no annotation coverage, this leaves significant behavioral gaps.
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 that clearly states the tool's purpose. There's no wasted language or unnecessary elaboration. However, it could be slightly more structured by front-loading the most critical information about scope or differentiation from sibling tools.
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 monitoring tool with 7 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what the monitoring output looks like, how results are structured, whether there are pagination considerations, or what behavioral constraints exist. The agent would need to invoke the tool to understand its full behavior and output format.
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, with all 7 parameters well-documented in the schema itself. The description mentions 'tasks, follow-ups, and meetings' which aligns with some parameters (includeTaskCompletion, includeFollowUpTracking, includeMeetingTracking), but doesn't add meaningful semantic context beyond what the schema already provides. The baseline score of 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 clearly states the tool's purpose: 'Monitor sales-related activities including tasks, follow-ups, and meetings'. It specifies the verb ('monitor') and resource ('sales-related activities'), but doesn't explicitly differentiate it from the sibling tool 'bitrix24_monitor_user_activities', which appears to have a broader scope. The description is specific about what types of activities are monitored.
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 doesn't mention any prerequisites, constraints, or compare it to sibling tools like 'bitrix24_monitor_user_activities' or 'bitrix24_generate_sales_report'. The agent must infer usage from the tool name and description alone without explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_monitor_user_activitiesC
Monitor user activities including calls, emails, timeline interactions, and response times
| Name | Required | Description | Default |
|---|---|---|---|
| userId | No | User ID to monitor (optional - if not provided, monitors all users) | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| includeCallVolume | No | Include call volume metrics | |
| includeEmailActivity | No | Include email activity metrics | |
| includeTimelineActivity | No | Include timeline interactions | |
| includeResponseTimes | No | Calculate response times |
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 monitoring activities but fails to describe what the tool returns (e.g., metrics, summaries, raw data), whether it's a read-only operation, any performance implications, or error conditions. This is a significant gap for a tool with 7 parameters and no 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, efficient sentence that lists the monitored activities without unnecessary words. It's appropriately sized for the tool's scope, though it could be slightly more structured (e.g., by grouping related activities).
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 (7 parameters, no annotations, no output schema), the description is incomplete. It lacks details on return values, behavioral traits (e.g., read-only vs. mutation, performance), and differentiation from siblings, making it insufficient for an agent to fully understand the tool's context and usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting all 7 parameters with defaults and optionality. The description adds no parameter-specific information beyond what's in the schema, so it meets the baseline of 3 for adequate schema coverage without extra 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's purpose with a specific verb ('monitor') and resource ('user activities'), listing the types of activities tracked (calls, emails, timeline interactions, response times). However, it doesn't explicitly differentiate from sibling tools like 'bitrix24_monitor_sales_activities' or 'bitrix24_get_user_performance_summary', which prevents 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?
The description provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites, context, or comparison to sibling tools (e.g., 'bitrix24_monitor_sales_activities' or 'bitrix24_get_user_performance_summary'), leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_resolve_user_namesB
Resolve user IDs to user names
| Name | Required | Description | Default |
|---|---|---|---|
| userIds | Yes | Array of user IDs to resolve to names |
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 states the tool's function but doesn't describe behavioral traits such as whether it's a read-only operation, what happens with invalid IDs, if there are rate limits, authentication requirements, or the format of returned data. For a tool with zero annotation coverage, this is a significant gap in 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, efficient sentence: 'Resolve user IDs to user names'. It's front-loaded with the core purpose, contains zero wasted words, and is appropriately sized for a simple mapping tool. Every word earns its place.
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 apparent simplicity (one parameter, 100% schema coverage, no output schema), the description is minimally complete. However, without annotations or output schema, it lacks details on behavioral aspects like error handling, return format, or performance characteristics. For a tool that likely involves data retrieval, more context would be helpful, but it's adequate for basic 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 input schema has 100% description coverage, with the 'userIds' parameter clearly documented as 'Array of user IDs to resolve to names'. The description adds no additional meaning beyond what the schema provides, such as ID format examples, constraints, or handling of empty arrays. With high schema coverage, 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 the tool's purpose: 'Resolve user IDs to user names' - a specific verb ('resolve') acting on a resource ('user IDs') to produce an outcome ('user names'). It distinguishes itself from sibling tools like 'bitrix24_get_user' which likely retrieves user details rather than mapping IDs to names. However, it doesn't explicitly differentiate from other user-related tools beyond the core function.
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 doesn't mention sibling tools like 'bitrix24_get_all_users' or 'bitrix24_get_user' that might serve similar purposes, nor does it specify use cases, prerequisites, or exclusions. The agent must infer usage from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_search_crmC
Search across CRM entities (contacts, companies, deals, leads)
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query (email, phone, name) | |
| entityTypes | No | Entity types to search |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool searches across entities but doesn't disclose behavioral traits such as search scope (e.g., partial vs. exact matches), permissions required, rate limits, or what the output looks like (e.g., list of results with fields). For a search tool with zero annotation coverage, this leaves significant gaps in understanding how it behaves.
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 zero waste. It front-loads the core purpose ('Search across CRM entities') and specifies the entity types concisely. Every word earns its place 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?
Given the complexity of a search tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral aspects (e.g., search behavior, permissions), output format, and usage context. While the schema covers parameters well, the overall context for an AI agent to invoke the tool effectively is insufficient.
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%, with clear descriptions for both parameters ('query' and 'entityTypes'), including default values and enums. The description adds minimal value beyond the schema by listing entity types, but doesn't provide additional context like search syntax or performance implications. 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 states the action ('Search across') and target resources ('CRM entities'), specifying the entity types (contacts, companies, deals, leads). It distinguishes from sibling tools like 'bitrix24_list_contacts' or 'bitrix24_get_contact' by indicating a cross-entity search. However, it doesn't explicitly contrast with 'bitrix24_filter_deals_by_budget' or other filtering tools, missing full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 doesn't mention scenarios like broad searches vs. specific entity lookups, or compare to sibling tools like 'bitrix24_list_contacts' for listing all contacts without a query. There's no explicit when/when-not 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.
bitrix24_test_leads_apiC
Test various leads API endpoints to identify specific issues
| 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 the full burden. It mentions 'test' and 'identify specific issues,' which suggests diagnostic or read-only behavior, but doesn't disclose details like whether it modifies data, requires permissions, has side effects, or returns structured results. This is inadequate for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, though it could be slightly more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (implied diagnostic/testing function) and lack of annotations or output schema, the description is incomplete. It doesn't explain what 'test' involves, what issues might be identified, or what the output looks like, 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?
The tool has 0 parameters with 100% schema description coverage, so no parameter documentation is needed. The description doesn't add param info, which is acceptable here, but it also doesn't compensate for any gaps since there are none. Baseline is 4 for 0 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool 'tests various leads API endpoints to identify specific issues,' which provides a general purpose (testing/identifying issues) but is vague about what 'test' entails and doesn't specify which endpoints or issues. It distinguishes from siblings by focusing on leads API testing rather than analysis, creation, or updates, but lacks specificity.
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 implies usage for testing leads API issues, but it doesn't specify scenarios, prerequisites, or exclusions, leaving the agent without clear direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_track_deal_progressionB
Track deal progression through pipeline stages with timing analysis
| Name | Required | Description | Default |
|---|---|---|---|
| dealId | No | Specific deal ID to track (optional - if not provided, tracks all deals) | |
| userId | No | User ID to filter deals (optional) | |
| pipelineId | No | Pipeline ID to filter deals (optional) | |
| startDate | Yes | Start date in YYYY-MM-DD format | |
| endDate | No | End date in YYYY-MM-DD format (optional - defaults to today) | |
| includeStageDuration | No | Calculate time spent in each stage | |
| identifyStalled | No | Identify stalled deals | |
| calculateVelocity | No | Calculate pipeline velocity |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'track' implies a read operation, it doesn't clarify whether this requires specific permissions, what data format is returned, whether it's paginated, or if there are rate limits. The mention of 'timing analysis' hints at calculations, but doesn't specify if these are performed server-side or require client-side processing. For an analysis tool with 8 parameters and no annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every word earns its place: 'track' (action), 'deal progression' (resource), 'through pipeline stages' (scope), 'with timing analysis' (capability). There's zero waste or 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 (8 parameters, analysis functionality) and absence of both annotations and output schema, the description is minimally adequate. It identifies the tool's purpose but doesn't address behavioral aspects, return format, or usage context that would help an agent understand what to expect from invocation. The 100% schema coverage helps, but for an analysis tool without output schema, more guidance would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly with descriptions and defaults. The description adds no additional parameter semantics beyond what's in the schema - it doesn't explain relationships between parameters (e.g., how dealId interacts with other filters) or provide usage examples. With complete schema coverage, 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 tool's purpose as 'Track deal progression through pipeline stages with timing analysis', which includes a specific verb ('track'), resource ('deal progression'), and scope ('pipeline stages with timing analysis'). It distinguishes from siblings like 'bitrix24_list_deals' or 'bitrix24_get_deal' by emphasizing progression tracking and analysis rather than simple listing or retrieval. However, it doesn't explicitly differentiate from all potential overlapping tools like 'bitrix24_monitor_sales_activities'.
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 doesn't mention prerequisites, when this tool is preferred over similar tools like 'bitrix24_list_deals' or 'bitrix24_monitor_sales_activities', or any constraints on usage. The agent must infer usage from the purpose alone without explicit direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_update_companyC
Update an existing company in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Company ID | |
| title | No | Company name | |
| companyType | No | Company type | |
| industry | No | Industry sector | |
| phone | No | Company phone number | |
| No | Company email address | ||
| website | No | Company website URL | |
| address | No | Company address | |
| employees | No | Number of employees | |
| revenue | No | Annual revenue | |
| comments | No | Additional comments | |
| assignedById | No | Assigned user ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states it's an update operation without detailing behavioral aspects. It doesn't cover permissions required, whether updates are partial or full, error handling, or response format, leaving significant gaps 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, clear sentence with no wasted words. It's front-loaded with the core action and resource, 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?
For a mutation tool with 12 parameters, no annotations, and no output schema, the description is insufficient. It lacks critical context like required permissions, update behavior (e.g., partial vs. full), error scenarios, and what the tool returns, making it incomplete for safe and effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 12 parameters. The description adds no additional parameter information beyond implying an update action, which doesn't enhance understanding of individual parameters. 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 states the action ('Update') and resource ('an existing company in Bitrix24 CRM'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'bitrix24_update_contact' or 'bitrix24_update_deal' beyond specifying the resource type, which slightly limits distinction.
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 doesn't mention prerequisites (e.g., needing an existing company ID), contrast with creation tools like 'bitrix24_create_company', or specify scenarios for updating versus other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_update_contactC
Update an existing contact in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Contact ID | |
| name | No | First name | |
| lastName | No | Last name | |
| phone | No | Phone number | |
| No | Email address | ||
| company | No | Company name | |
| position | No | Job position | |
| comments | No | Additional comments |
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. While 'Update' implies a mutation operation, the description fails to mention critical behavioral aspects: what permissions are required, whether the update is partial or full, how validation works, what happens on failure, or what the response contains. For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves.
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 that states the core purpose without any fluff. It's appropriately sized for a straightforward update operation and front-loads the essential information. Every word earns its place, making it easy to parse quickly.
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 that this is a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't address behavioral transparency (permissions, error handling), usage guidelines, or what to expect upon success/failure. While the schema covers parameters well, the overall context for safe and effective tool invocation is lacking.
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%, with all 8 parameters clearly documented in the schema itself. The description adds no additional parameter information beyond what's in the schema (e.g., no examples, constraints, or formatting details). According to the rules, when schema coverage is high (>80%), the baseline score is 3 even without parameter details in the description.
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 ('Update') and resource ('existing contact in Bitrix24 CRM'), making the purpose immediately understandable. It distinguishes itself from sibling tools like 'bitrix24_create_contact' by specifying it updates existing contacts rather than creating new ones. However, it doesn't fully differentiate from other update tools like 'bitrix24_update_company' or 'bitrix24_update_deal' beyond the resource type.
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 doesn't mention prerequisites (e.g., needing an existing contact ID), when not to use it (e.g., for creating new contacts), or how it differs from similar update tools for companies or deals. The agent must infer usage from the tool name and sibling list alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_update_dealC
Update an existing deal in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Deal ID | |
| title | No | Deal title | |
| amount | No | Deal amount | |
| currency | No | Currency code (e.g., EUR, USD) | |
| contactId | No | Associated contact ID | |
| stageId | No | Deal stage ID | |
| comments | No | Deal comments |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states it's an update operation without disclosing behavioral traits. It doesn't mention permission requirements, whether the update is partial or full, what happens to unspecified fields, error conditions, or any rate limits. 'Update' implies mutation but lacks crucial context for safe usage.
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 that directly states the tool's purpose without any unnecessary words. It's perfectly front-loaded and wastes no space, making it easy to parse quickly.
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 mutation tool with 7 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what the tool returns, error handling, or behavioral constraints. While the schema covers parameters well, the overall context for using this update operation safely and effectively is missing.
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%, with all 7 parameters clearly documented in the schema itself. The description adds no additional parameter information beyond what's already in the schema, so it meets the baseline of 3 where the schema does the heavy lifting without compensating for gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and resource ('an existing deal in Bitrix24 CRM'), making the purpose immediately understandable. However, it doesn't differentiate this tool from sibling update tools like bitrix24_update_company or bitrix24_update_contact, which follow the same pattern for different CRM entities.
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 doesn't mention prerequisites (like needing an existing deal ID), when not to use it (e.g., for creating new deals), or refer to sibling tools like bitrix24_create_deal for creation or bitrix24_get_deal for retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_update_leadC
Update an existing lead in Bitrix24 CRM
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Lead ID | |
| title | No | Lead title | |
| name | No | First name | |
| lastName | No | Last name | |
| company | No | Company name | |
| phone | No | Phone number | |
| No | Email address | ||
| sourceId | No | Lead source ID | |
| statusId | No | Lead status ID | |
| opportunity | No | Expected deal amount | |
| currency | No | Currency code | |
| comments | No | Additional comments |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. 'Update an existing lead' implies mutation but doesn't disclose permission requirements, whether updates are partial or complete, what happens to unspecified fields, error handling, or rate limits. For a mutation tool with 12 parameters, this is inadequate disclosure.
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 that communicates the core purpose without unnecessary words. It's appropriately sized for a tool with comprehensive schema documentation 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?
For a mutation tool with 12 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what constitutes a successful update, what data is returned, error conditions, or how this tool fits within the broader CRM workflow alongside sibling 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?
Schema description coverage is 100%, with all 12 parameters clearly documented in the schema. The description adds no parameter-specific information beyond the generic 'update' context, so it meets the baseline for high schema coverage but doesn't enhance understanding of individual parameters.
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 ('update') and resource ('an existing lead in Bitrix24 CRM'), making the purpose immediately understandable. However, it doesn't differentiate from sibling update tools like bitrix24_update_company or bitrix24_update_contact, which have identical verb structures but different resources.
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 bitrix24_create_lead or bitrix24_get_lead. There's no mention of prerequisites, constraints, or typical use cases for updating leads versus other CRM operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bitrix24_validate_webhookB
Validate the Bitrix24 webhook connection
| 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 burden. It states the tool validates a webhook connection but doesn't disclose behavioral traits like what validation entails (e.g., checking connectivity, verifying permissions, returning status), potential side effects, or error handling. This is a significant gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with zero waste, efficiently conveying the core purpose without unnecessary elaboration. It's appropriately sized and front-loaded 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?
Given the tool has 0 parameters, no annotations, and no output schema, the description is minimally adequate but incomplete. It states what the tool does but lacks details on behavior, output, or context, leaving gaps for the agent to understand how to interpret results or handle errors.
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 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, earning a baseline score of 4 as it doesn't need to compensate for any gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('validate') and the target ('Bitrix24 webhook connection'), making the purpose understandable. However, it doesn't differentiate this tool from siblings like 'bitrix24_check_crm_settings' or 'bitrix24_test_leads_api', which might also involve validation or testing operations.
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 doesn't mention prerequisites (e.g., after setting up a webhook), exclusions, or related tools, 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
50 tool updates
v1.0.0- First observed
bitrix24_analyze_account_performance - First observed
bitrix24_analyze_customer_engagement - First observed
bitrix24_check_crm_settings - First observed
bitrix24_compare_user_performance - First observed
bitrix24_create_company - First observed
bitrix24_create_contact - First observed
bitrix24_create_deal - First observed
bitrix24_create_lead - First observed
bitrix24_diagnose_permissions - First observed
bitrix24_filter_deals_by_budget - First observed
bitrix24_filter_deals_by_pipeline - First observed
bitrix24_filter_deals_by_status - First observed
bitrix24_forecast_performance - First observed
bitrix24_generate_sales_report - First observed
bitrix24_get_all_users - First observed
bitrix24_get_companies_from_date_range - First observed
bitrix24_get_companies_with_user_names - First observed
bitrix24_get_company - First observed
bitrix24_get_contact - First observed
bitrix24_get_contacts_with_user_names - First observed
bitrix24_get_deal - First observed
bitrix24_get_deal_pipelines - First observed
bitrix24_get_deal_stages - First observed
bitrix24_get_deals_from_date_range - First observed
bitrix24_get_deals_with_user_names - First observed
bitrix24_get_latest_companies - First observed
bitrix24_get_latest_contacts - First observed
bitrix24_get_latest_deals - First observed
bitrix24_get_latest_leads - First observed
bitrix24_get_lead - First observed
bitrix24_get_leads_from_date_range - First observed
bitrix24_get_leads_with_user_names - First observed
bitrix24_get_team_dashboard - First observed
bitrix24_get_user - First observed
bitrix24_get_user_performance_summary - First observed
bitrix24_list_companies - First observed
bitrix24_list_contacts - First observed
bitrix24_list_deals - First observed
bitrix24_list_leads - First observed
bitrix24_monitor_sales_activities - First observed
bitrix24_monitor_user_activities - First observed
bitrix24_resolve_user_names - First observed
bitrix24_search_crm - First observed
bitrix24_test_leads_api - First observed
bitrix24_track_deal_progression - First observed
bitrix24_update_company - First observed
bitrix24_update_contact - First observed
bitrix24_update_deal - First observed
bitrix24_update_lead - First observed
bitrix24_validate_webhook
TDQS
Most tools have distinct purposes targeting specific CRM entities (companies, contacts, deals, leads) or analytical functions, but some overlap exists, such as 'bitrix24_list_companies' and 'bitrix24_get_companies_from_date_range', which could cause confusion in selection. However, descriptions help clarify differences, like date-based filtering versus general listing.
Tool names follow a highly consistent 'bitrix24_verb_noun' pattern throughout, with clear and predictable structures like 'bitrix24_create_company' or 'bitrix24_analyze_account_performance'. There are no deviations in naming conventions, making the set easy to navigate and understand.
With 50 tools, the count is excessive for a CRM server, leading to potential overwhelm and redundancy. While the domain is broad, many tools could be consolidated (e.g., multiple 'get' and 'list' variants), making it feel heavy and less scoped than ideal for efficient agent use.
The tool set provides comprehensive coverage for Bitrix24 CRM operations, including full CRUD for core entities (companies, contacts, deals, leads), analytics, reporting, user management, and system diagnostics. There are no obvious gaps, and the surface supports complete workflows from data entry to performance tracking.
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
- PlixanaOAuthcom.plixana
Operate the Plixana CRM from any AI: contacts, deals, quotes, WhatsApp and metrics.
Operate Obriym CRM from your AI assistant: leads, deals, orders, catalog, stock, marketplaces.
Your own CRM, fully customizable and agent-driven. Start with contacts, companies and a sales pipeli
Agent-native CRM. 25 tools ā contacts, deals, sequences, enrichment waterfall, audit log.
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceEnables AI agents to interact with Bitrix24 CRM for managing contacts, deals, tasks, and leads via a comprehensive set of tools. It supports advanced features like sales team monitoring, performance analytics, and automated CRM searching.-
- FlicenseNot gradedqualityDmaintenanceA comprehensive MCP server for Bitrix24 CRM integration that enables AI agents to manage contacts, deals, tasks, leads, and companies. It also provides advanced tools for sales team monitoring, performance analytics, and automated CRM search capabilities.13-
- FlicenseNot gradedqualityDmaintenanceEnables language models to interact with Bitrix24 CRM, providing tools to manage deals, leads, contacts, tasks, activities, users, files, chat messages, and live chat sessions.131-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with Bitrix24 CRM through standardized MCP tools, including searching and managing contacts, deals, leads, tasks, and replying in chats.MIT
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/gunnit/bitrix24-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server