Skip to main content
Glama

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 contacts

  • bitrix24_get_contact - Retrieve contact by ID

  • bitrix24_list_contacts - List contacts with filtering

  • bitrix24_update_contact - Update existing contacts

Deal Management

  • bitrix24_create_deal - Create new deals

  • bitrix24_get_deal - Retrieve deal by ID

  • bitrix24_list_deals - List deals with filtering

  • bitrix24_update_deal - Update existing deals

Task Management

  • bitrix24_create_task - Create new tasks

  • bitrix24_get_task - Retrieve task by ID

  • bitrix24_list_tasks - List tasks with filtering

  • bitrix24_update_task - Update existing tasks

User Management

  • bitrix24_get_user - Get user information by ID

  • bitrix24_get_all_users - Get all users in the system with names and details

  • bitrix24_resolve_user_names - Resolve user IDs to user names

  • bitrix24_get_contacts_with_user_names - Get contacts with user names resolved

  • bitrix24_get_deals_with_user_names - Get deals with user names resolved

  • bitrix24_get_leads_with_user_names - Get leads with user names resolved

  • bitrix24_get_companies_with_user_names - Get companies with user names resolved

Lead Management

  • bitrix24_create_lead - Create new leads

  • bitrix24_get_lead - Retrieve lead by ID

  • bitrix24_list_leads - List leads with filtering

  • bitrix24_get_latest_leads - Get most recent leads

  • bitrix24_get_leads_from_date_range - Get leads from specific date range

  • bitrix24_update_lead - Update existing leads

Company Management

  • bitrix24_create_company - Create new companies

  • bitrix24_get_company - Retrieve company by ID

  • bitrix24_list_companies - List companies with filtering

  • bitrix24_get_latest_companies - Get most recent companies

  • bitrix24_get_companies_from_date_range - Get companies from specific date range

  • bitrix24_update_company - Update existing companies

Enhanced Deal Filtering

  • bitrix24_get_deal_pipelines - Get all deal pipelines/categories

  • bitrix24_get_deal_stages - Get deal stages for pipelines

  • bitrix24_filter_deals_by_pipeline - Filter deals by pipeline

  • bitrix24_filter_deals_by_budget - Filter deals by budget range

  • bitrix24_filter_deals_by_status - Filter deals by stage/status

Utilities

  • bitrix24_search_crm - Search across CRM entities

  • bitrix24_get_current_user - Get current user info

  • bitrix24_validate_webhook - Validate webhook connection

  • bitrix24_diagnose_permissions - Diagnose webhook permissions

  • bitrix24_check_crm_settings - Check CRM settings and configuration

  • bitrix24_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 rates

  • bitrix24_analyze_account_performance - Analyze performance for specific accounts (companies/contacts)

  • bitrix24_compare_user_performance - Compare performance metrics between multiple users

  • bitrix24_track_deal_progression - Track deal progression through pipeline stages with timing analysis

  • bitrix24_monitor_sales_activities - Monitor sales-related activities (tasks, follow-ups, meetings)

  • bitrix24_generate_sales_report - Generate comprehensive sales reports with customizable metrics

  • bitrix24_get_team_dashboard - Get real-time team performance dashboard

  • bitrix24_analyze_customer_engagement - Analyze customer engagement patterns and relationship health

  • bitrix24_forecast_performance - Generate performance forecasts and predictive analytics

šŸ› ļø Installation

Prerequisites

  • Node.js 18+

  • npm or yarn

  • Bitrix24 webhook URL

Setup

  1. Clone and install dependencies:

git clone <repository-url>
cd bitrix24-mcp-server
npm install
  1. Configure environment:

cp .env.example .env
# Edit .env with your Bitrix24 webhook URL
  1. Build the project:

npm run build
  1. Test 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=info

Bitrix24 Webhook Setup

  1. Go to your Bitrix24 instance

  2. Navigate to Applications → Webhooks

  3. Create an Incoming webhook

  4. Copy the webhook URL (format: https://domain.bitrix24.com/rest/USER_ID/WEBHOOK_CODE/)

  5. 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 789

Creating 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 contact

Managing Tasks

Create a task titled "Follow up with client" with high priority, deadline tomorrow, and link it to contact ID 123

Searching 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.md

Development 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 start

Adding New Tools

  1. 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']
  }
};
  1. Add the execution handler:

case 'bitrix24_new_action':
  // Implementation
  return { success: true, result: 'Action completed' };
  1. Add to allTools array and rebuild.

šŸ”’ Security Considerations

  • Webhook Security: Keep your webhook URL secret and rotate it regularly

  • Environment Variables: Never commit .env files to version control

  • Rate 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 install to install dependencies

  • Ensure 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

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests if applicable

  5. Submit a pull request

šŸ“„ License

MIT License - see LICENSE file for details.

šŸ†˜ Support

For issues and questions:

  1. Check the troubleshooting section

  2. Review Bitrix24 API documentation

  3. Open an issue on GitHub


Built with ā¤ļø for the AI automation community

Available Tools

50 tools
bitrix24_analyze_account_performanceC

Analyze performance and activities for specific accounts (companies/contacts)

ParametersJSON Schema
NameRequiredDescriptionDefault
accountIdYesAccount ID (company or contact ID)
accountTypeYesType of account to analyze
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
includeAllInteractionsNoInclude all user interactions with this account
includeDealProgressionNoInclude deal progression analysis
includeTimelineHistoryNoInclude complete timeline history

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema 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.

Purpose4/5

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

The description clearly states the tool's purpose: '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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
accountIdNoAccount ID (company or contact ID) - optional
accountTypeNoType of account
userIdNoUser ID to filter analysis (optional)
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
includeCommunicationPatternsNoInclude communication pattern analysis
includeResponseQualityNoInclude response quality metrics
includeEngagementScoresNoCalculate engagement scores
includeRelationshipHealthNoAssess relationship health

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all parameters 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.

Purpose3/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdsNoArray of user IDs to compare (optional - if not provided, compares all users)
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
metricsNoSpecific metrics to compare
includeRankingsNoInclude performance rankings
includeTrendsNoInclude trend analysis

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the tool's purpose 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesCompany name
companyTypeNoCompany type (e.g., CLIENT, SUPPLIER, PARTNER)
industryNoIndustry sector
phoneNoCompany phone number
emailNoCompany email address
websiteNoCompany website URL
addressNoCompany address
employeesNoNumber of employees
revenueNoAnnual revenue
commentsNoAdditional comments
assignedByIdNoAssigned user ID

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives 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

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesFirst name
lastNameYesLast name
phoneNoPhone number
emailNoEmail address
companyNoCompany name
positionNoJob position
commentsNoAdditional comments

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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

For a mutation tool with 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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesDeal title
amountNoDeal amount
currencyNoCurrency code (e.g., EUR, USD)EUR
contactIdNoAssociated contact ID
stageIdNoDeal stage ID
commentsNoDeal comments

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, with each parameter 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.

Purpose4/5

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.

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives 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

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesLead title
nameNoFirst name
lastNameNoLast name
companyNoCompany name
phoneNoPhone number
emailNoEmail address
sourceIdNoLead source ID (e.g., CALL, EMAIL, WEB)
statusIdNoLead status ID
opportunityNoExpected deal amount
currencyNoCurrency code (e.g., EUR, USD)EUR
commentsNoAdditional comments

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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

For a mutation tool with 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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's complexity (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.

Parameters4/5

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.

Purpose4/5

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

The description clearly states the tool's purpose: '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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
minBudgetYesMinimum budget amount
maxBudgetNoMaximum budget amount (optional)
currencyNoCurrency code (e.g., EUR, USD)EUR
limitNoMaximum number of deals to return
orderByNoField to order byOPPORTUNITY
orderDirectionNoOrder directionDESC

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 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.

Purpose4/5

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

The description clearly states the tool's purpose: '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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
pipelineIdYesPipeline/Category ID to filter by
limitNoMaximum number of deals to return
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's moderate complexity (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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all parameters. The description 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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives 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

ParametersJSON Schema
NameRequiredDescriptionDefault
stageIdsYesArray of stage IDs to filter by
pipelineIdNoPipeline ID to limit search to (optional)
limitNoMaximum number of deals to return
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's moderate complexity (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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
forecastTypeYesType of forecast to generate
userIdNoUser ID to forecast (optional - if not provided, forecasts for all users)
historicalPeriodNoHistorical period to use for forecasting6_months
forecastPeriodNoPeriod to forecast into the future1_month
includePipelineAnalysisNoInclude pipeline forecasting
includeRiskAssessmentNoInclude risk assessment
includeGoalTrackingNoInclude goal achievement tracking

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
reportTypeYesType of report to generate
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
userIdsNoSpecific user IDs to include (optional)
includeMetricsNoSpecific metrics to include in report
includeTrendAnalysisNoInclude trend analysis
includeComparisonsNoInclude performance comparisons

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives 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

ParametersJSON Schema
NameRequiredDescriptionDefault
includeInactiveNoInclude inactive users

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness3/5

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

Given the tool's simplicity (1 parameter, no output schema, 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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents 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.

Purpose4/5

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

The description clearly states the verb 'Get' and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional)
limitNoMaximum number of companies to return

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's moderate complexity (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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 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.

Purpose4/5

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

The description clearly states the action ('Get') and resource ('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.

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It 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)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of companies to return
filterNoFilter criteria
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's moderate complexity (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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the tool's purpose: 'Get 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCompany ID

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesContact ID

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of contacts to return
filterNoFilter criteria

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's moderate complexity (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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents 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.

Purpose4/5

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

The description clearly states the verb ('Get') and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDeal ID

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters4/5

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.

Purpose4/5

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

The description clearly states the verb 'Get' and the resource '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.

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional)
limitNoMaximum number of deals to return

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 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.

Purpose4/5

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

The description clearly states the verb ('Get') and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
pipelineIdNoPipeline ID to get stages for (optional - if not provided, gets all stages)

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema 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.

Purpose4/5

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

The description clearly states the verb 'Get' and 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.

Usage Guidelines3/5

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)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of deals to return
filterNoFilter criteria
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's moderate complexity (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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the tool's purpose: 'Get 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of companies to return

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the action ('Get') and resource ('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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of contacts to return

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

For a simple read tool with one 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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the verb ('Get') and 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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of deals to return

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

For a simple read tool with one 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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the verb ('Get') and 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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of leads to return

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the action ('Get') and resource ('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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesLead ID

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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

Given the tool's simplicity (1 parameter, 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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description 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

ParametersJSON Schema
NameRequiredDescriptionDefault
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional)
limitNoMaximum number of leads to return

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the verb ('Get') and 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.

Usage Guidelines3/5

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

The description implies usage for retrieving 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)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of leads to return
filterNoFilter criteria
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so parameters are 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.

Purpose4/5

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

The description clearly states the verb 'Get' and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
includeRealTimeMetricsNoInclude real-time performance metrics
includeTopPerformersNoInclude top performers identification
includeAttentionNeededNoInclude accounts/deals needing attention
includeWorkloadDistributionNoInclude workload distribution analysis
timeframeNoTimeframe for dashboard metricstoday

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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

Schema description coverage is 100%, so parameters are 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.

Purpose4/5

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

The description clearly states the action ('Get') and resource ('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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYesUser ID to retrieve

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdNoUser ID to analyze (optional - if not provided, analyzes all users)
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
includeDealMetricsNoInclude deal creation/conversion metrics
includeActivityRatiosNoInclude activity type ratios
includeConversionRatesNoCalculate conversion rates

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema 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.

Purpose4/5

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

The description clearly states the tool's purpose: 'Get 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of companies to return
filterNoFilter criteria (e.g., {"TITLE": "Tech Corp"})
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of contacts to return
filterNoFilter criteria (e.g., {"NAME": "John"})

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of deals to return
filterNoFilter criteria (e.g., {"TITLE": "Project"})
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of leads to return
filterNoFilter criteria (e.g., {"STATUS_ID": "NEW"})
orderByNoField to order byDATE_CREATE
orderDirectionNoOrder directionDESC

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's moderate complexity (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.

Parameters3/5

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

Schema description coverage is 100%, so the schema 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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus 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

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdNoUser ID to monitor (optional - if not provided, monitors all users)
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
includeTaskCompletionNoInclude task completion rates
includeFollowUpTrackingNoInclude follow-up tracking
includeMeetingTrackingNoInclude meeting tracking
includeQuoteActivityNoInclude quote/proposal activity

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the tool's purpose: '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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdNoUser ID to monitor (optional - if not provided, monitors all users)
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
includeCallVolumeNoInclude call volume metrics
includeEmailActivityNoInclude email activity metrics
includeTimelineActivityNoInclude timeline interactions
includeResponseTimesNoCalculate response times

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the tool's purpose 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdsYesArray of user IDs to resolve to names

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the tool's purpose: '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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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)

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query (email, phone, name)
entityTypesNoEntity types to search

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, with clear descriptions for 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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters4/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description 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

ParametersJSON Schema
NameRequiredDescriptionDefault
dealIdNoSpecific deal ID to track (optional - if not provided, tracks all deals)
userIdNoUser ID to filter deals (optional)
pipelineIdNoPipeline ID to filter deals (optional)
startDateYesStart date in YYYY-MM-DD format
endDateNoEnd date in YYYY-MM-DD format (optional - defaults to today)
includeStageDurationNoCalculate time spent in each stage
identifyStalledNoIdentify stalled deals
calculateVelocityNoCalculate pipeline velocity

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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

Given the tool's complexity (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.

Parameters3/5

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

Schema description coverage is 100%, so the schema 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.

Purpose4/5

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

The description clearly states the tool's purpose 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCompany ID
titleNoCompany name
companyTypeNoCompany type
industryNoIndustry sector
phoneNoCompany phone number
emailNoCompany email address
websiteNoCompany website URL
addressNoCompany address
employeesNoNumber of employees
revenueNoAnnual revenue
commentsNoAdditional comments
assignedByIdNoAssigned user ID

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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

For a mutation tool with 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.

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 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.

Purpose4/5

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

The description clearly states the action ('Update') and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesContact ID
nameNoFirst name
lastNameNoLast name
phoneNoPhone number
emailNoEmail address
companyNoCompany name
positionNoJob position
commentsNoAdditional comments

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the action ('Update') and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDeal ID
titleNoDeal title
amountNoDeal amount
currencyNoCurrency code (e.g., EUR, USD)
contactIdNoAssociated contact ID
stageIdNoDeal stage ID
commentsNoDeal comments

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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

For a mutation tool with 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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the action ('Update') and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesLead ID
titleNoLead title
nameNoFirst name
lastNameNoLast name
companyNoCompany name
phoneNoPhone number
emailNoEmail address
sourceIdNoLead source ID
statusIdNoLead status ID
opportunityNoExpected deal amount
currencyNoCurrency code
commentsNoAdditional comments

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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

For a mutation tool with 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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the action ('update') and 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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives 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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It 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.

  1. 50 tool updatesv1.0.0
    • First observedbitrix24_analyze_account_performance
    • First observedbitrix24_analyze_customer_engagement
    • First observedbitrix24_check_crm_settings
    • First observedbitrix24_compare_user_performance
    • First observedbitrix24_create_company
    • First observedbitrix24_create_contact
    • First observedbitrix24_create_deal
    • First observedbitrix24_create_lead
    • First observedbitrix24_diagnose_permissions
    • First observedbitrix24_filter_deals_by_budget
    • First observedbitrix24_filter_deals_by_pipeline
    • First observedbitrix24_filter_deals_by_status
    • First observedbitrix24_forecast_performance
    • First observedbitrix24_generate_sales_report
    • First observedbitrix24_get_all_users
    • First observedbitrix24_get_companies_from_date_range
    • First observedbitrix24_get_companies_with_user_names
    • First observedbitrix24_get_company
    • First observedbitrix24_get_contact
    • First observedbitrix24_get_contacts_with_user_names
    • First observedbitrix24_get_deal
    • First observedbitrix24_get_deal_pipelines
    • First observedbitrix24_get_deal_stages
    • First observedbitrix24_get_deals_from_date_range
    • First observedbitrix24_get_deals_with_user_names
    • First observedbitrix24_get_latest_companies
    • First observedbitrix24_get_latest_contacts
    • First observedbitrix24_get_latest_deals
    • First observedbitrix24_get_latest_leads
    • First observedbitrix24_get_lead
    • First observedbitrix24_get_leads_from_date_range
    • First observedbitrix24_get_leads_with_user_names
    • First observedbitrix24_get_team_dashboard
    • First observedbitrix24_get_user
    • First observedbitrix24_get_user_performance_summary
    • First observedbitrix24_list_companies
    • First observedbitrix24_list_contacts
    • First observedbitrix24_list_deals
    • First observedbitrix24_list_leads
    • First observedbitrix24_monitor_sales_activities
    • First observedbitrix24_monitor_user_activities
    • First observedbitrix24_resolve_user_names
    • First observedbitrix24_search_crm
    • First observedbitrix24_test_leads_api
    • First observedbitrix24_track_deal_progression
    • First observedbitrix24_update_company
    • First observedbitrix24_update_contact
    • First observedbitrix24_update_deal
    • First observedbitrix24_update_lead
    • First observedbitrix24_validate_webhook

TDQS

B3.2/5.0
Disambiguation4/5

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.

Naming Consistency5/5

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.

Tool Count2/5

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.

Completeness5/5

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

ActivityInactive
ResponsivenessNo issues

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

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A 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
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables language models to interact with Bitrix24 CRM, providing tools to manage deals, leads, contacts, tasks, activities, users, files, chat messages, and live chat sessions.
    13
    1
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables 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

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