Passgage MCP Server
OfficialClick on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Passgage MCP Servershow my pending approval requests"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Passgage MCP Server
A comprehensive Model Context Protocol (MCP) server for integrating with the Passgage Public API. This server provides 130+ tools to interact with all aspects of the Passgage workforce management system through Claude and other MCP-compatible AI assistants.
Quick Start
Get Passgage API credentials → Contact
deneyim@passgage.comNo installation needed → Uses NPX automatically
Configure Claude Desktop → Follow platform-specific setup below
Restart Claude Desktop → Start using Passgage tools!
Related MCP server: Officient MCP Server
Table of Contents
Overview
What is Passgage MCP Server?
Passgage MCP Server is a comprehensive Model Context Protocol server that provides browser automation capabilities for workforce management using the Passgage API. It allows large language models (LLMs) like Claude to interact with your complete HR system through 130+ structured tools, eliminating the need for manual navigation or complex API knowledge.
How to use Passgage MCP Server?
To use Passgage MCP Server, install it locally, configure it with your Passgage credentials in Claude Desktop using the command examples below, and start asking Claude to help with workforce management tasks. You can configure it to run with either company admin access or personal user access, depending on your needs.
Key features of Passgage MCP Server?
Fast and comprehensive operation covering all 25 Passgage services with 130+ tools
LLM-friendly - requiring no manual API knowledge and operating purely on natural language
Permission-aware tool availability, automatically adjusting based on your access level
Dual authentication modes - switch between company admin and personal user access
Use cases of Passgage MCP Server?
HR management and leave approvals - Review and process employee requests efficiently
Employee onboarding and user management - Create accounts and assign roles automatically
Data analysis and reporting - Export and analyze workforce metrics and trends
Shift management and scheduling - Assign staff and track working hours seamlessly
FAQ
Can Passgage MCP Server be used for all types of workforce management?
Yes! Passgage MCP Server supports the complete Passgage API surface area, covering user management, time tracking, approvals, payroll, shift management, device management, and all other workforce operations available in your Passgage system.
Is Passgage MCP Server free to use?
Yes! The MCP server itself is open-source and free to use for everyone. However, you need valid Passgage API credentials and an active Passgage subscription to access the workforce management system.
How does Passgage MCP Server handle security and permissions?
Passgage MCP Server implements comprehensive permission management with dual authentication modes. It securely handles JWT tokens and API keys, automatically adapts tool availability based on your access level, and includes comprehensive error handling for authentication issues.
What happens if my API credentials expire or change?
The server handles JWT token refresh automatically for user credentials. For API key changes, simply update your Claude Desktop configuration and restart. The server includes comprehensive error handling and clear error messages for authentication issues.
Does the server work with on-premises Passgage installations?
Yes! Simply configure the PASSGAGE_BASE_URL environment variable to point to your on-premises Passgage instance instead of the default cloud API at https://api.passgage.com.
Key Features
✅ Complete Passgage Integration - Access all 25 services with 130+ tools
✅ Smart Authentication - Dual mode system (company admin + personal user)
✅ Permission Management - Tools adapt based on your access level
✅ Advanced Querying - Ransack filters with 20+ operators (_eq, _cont, _in, etc.)
✅ Bulk Operations - Mass approvals, data exports, batch processing
✅ Real-time API - Instant responses with automatic JWT refresh
✅ Type-Safe - Full TypeScript implementation with comprehensive error handling
✅ Production Ready - Debug mode, timeouts, retry logic, and monitoring
Permission System
The MCP server implements a comprehensive permission system based on authentication modes:
Company Mode Permissions
✅ Full admin access - All CRUD operations on all resources
✅ User management - Create, update, delete users
✅ System administration - Manage departments, branches, devices
✅ Payroll access - View payroll data
✅ Bulk operations - Mass approval, data export
✅ All specialized tools - File upload, dashboard stats, search
User Mode Permissions
✅ Read access - View users, departments, branches, devices
✅ Personal operations - Create/update own leave requests
✅ Limited approvals - Create approval requests (not approve them)
✅ Basic tools - File upload, search, entrance tracking
❌ Admin operations - Cannot create/delete users or manage system
❌ Payroll data - Cannot access salary information
❌ Bulk operations - Cannot perform mass operations
Permission Errors
When a tool is not available in the current mode, you'll receive clear error messages:
"This operation requires company-level access. Creating users requires admin privileges"To resolve permission issues, switch to the appropriate authentication mode using the mode management tools.
Installation
Prerequisites
Node.js 18.0.0 or higher
Passgage API credentials (contact
deneyim@passgage.com)
Option 1: NPX (Recommended - No Installation Required)
NPX automatically downloads and runs the package when needed:
npx passgage-mcp-server
# Should start without errors, press Ctrl+C to stopOption 2: Global Installation
Install globally:
npm install -g passgage-mcp-serverVerify installation:
passgage-mcp-server # Should start without errors, press Ctrl+C to stop
Option 3: Development Setup
Clone and build:
git clone https://github.com/passgage/mcp-server.git cd mcp-server npm install npm run buildVerify installation:
node dist/index.js # Should start without errors, press Ctrl+C to stop
Claude Desktop Setup
Step 1: Find Your Node.js Path
# On any platform, run:
which node # macOS/Linux
where node # WindowsStep 2: Create Configuration
Create or edit your Claude Desktop config file:
Config file locations:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Option A: Using NPX (Recommended)
{
"mcpServers": {
"passgage": {
"command": "npx",
"args": ["passgage-mcp-server"],
"env": {
"PASSGAGE_API_KEY": "your_api_key_here",
"PASSGAGE_BASE_URL": "https://api.passgage.com"
}
}
}
}Option B: Using Global NPM Package
{
"mcpServers": {
"passgage": {
"command": "passgage-mcp-server",
"env": {
"PASSGAGE_API_KEY": "your_api_key_here",
"PASSGAGE_BASE_URL": "https://api.passgage.com"
}
}
}
}Option C: Using Node.js directly (Development)
{
"mcpServers": {
"passgage": {
"command": "/path/to/node",
"args": ["/path/to/mcp-server/dist/index.js"],
"env": {
"PASSGAGE_API_KEY": "your_api_key_here",
"PASSGAGE_BASE_URL": "https://api.passgage.com"
}
}
}
}Replace paths with your actual paths (Option B only):
/path/to/node→ Your Node.js path from Step 1/path/to/mcp-server→ Where you cloned this repository
Step 3: Restart Claude Desktop
Completely quit Claude Desktop (from system tray/dock)
Restart Claude Desktop
Test: Ask Claude "What Passgage tools do you have available?"
First Steps After Installation
Once you've successfully configured Claude Desktop with the Passgage MCP Server, here are the essential first steps to verify everything is working and get started.
Verify Installation Success
Step 1: Check Tool Availability
In a new Claude conversation, ask:
"What Passgage tools do you have available?"Expected Response: Claude should list categories like:
Authentication tools (8 tools)
User management tools (5 tools)
Leave management tools (5 tools)
And 25+ other service categories
Step 2: Test Authentication Status
Check your authentication setup:
"Check my Passgage authentication status"Expected Response: Claude should show your current authentication mode (company/user) and available permissions.
Your First Passgage Tasks
Try these beginner-friendly commands to get familiar with the system:
For HR Managers (Company API Key):
"Show me all pending leave requests from the last 7 days""List all users in the Engineering department""Get dashboard statistics for this month"For Employees (User Credentials):
"Show my recent clock-in times""Check my leave balance and upcoming time off""List my upcoming shift assignments"For System Administrators:
"Show me all access zones and their current status""List all devices and when they were last active""Export user data for the Sales department to CSV"Understanding Tool Responses
Passgage tools return structured data that Claude can interpret. Here's what to expect:
✅ Successful Response Example:
Found 15 pending leave requests:
- John Smith: Annual leave, March 15-20, 2024
- Sarah Johnson: Sick leave, March 18, 2024
- Mike Davis: Personal leave, March 22-23, 2024
...⚠️ Permission-Related Response:
"This operation requires company-level access. Creating users requires admin privileges.
Switch to company mode using your API key to perform this action."❌ Authentication Error:
"Authentication failed. Please check your Passgage credentials or contact deneyim@passgage.com"Next Steps: Advanced Operations
Once you're comfortable with basic queries, try these more advanced workflows:
Multi-Step HR Workflow:
"Find all employees who have used more than 15 days of annual leave this year,
show their remaining balance, and help me review any pending requests from them"Data Analysis Workflow:
"Analyze attendance patterns for the last quarter, identify departments with the highest
absenteeism, and export a detailed report"Employee Onboarding Workflow:
"I need to onboard a new employee: Create user account for alice.brown@company.com in Marketing,
assign her to the main branch office, set up her access card, and assign her to the standard day shift"Quick Troubleshooting
❌ Tools not appearing in Claude?
Restart Claude Desktop completely (quit from system tray)
Check your config file paths are correct
Test server manually:
node dist/index.js
❌ Authentication errors?
Verify API key with Passgage support:
deneyim@passgage.comCheck
PASSGAGE_BASE_URLmatches your instance
Use Cases
HR Leave Management
User: "Show me all pending leave requests from March and help me approve them"
Claude: "I found 23 pending leave requests from March:
- Engineering: 8 requests (5 annual, 2 sick, 1 personal)
- Marketing: 7 requests (6 annual, 1 sick)
- Sales: 8 requests (5 annual, 3 personal)
Would you like me to show the details for a specific department?"
User: "Show me Engineering requests and approve the reasonable ones"
Claude: "Here are Engineering requests with my recommendations:
- John Smith: 5 days annual leave (Apr 15-19) ✅ Approve - good attendance
- Sarah Wilson: 2 days sick leave (Mar 28-29) ✅ Approve - has sick days
- Mike Chen: 1 day personal (Apr 5) ⚠️ Check - already has leave that week
I'll approve the first two now."Employee Onboarding
User: "Onboard Alex Rodriguez starting Monday in Sales"
Claude: "I'll set up Alex's complete profile:
✅ Created user account (alex.rodriguez@company.com)
✅ Assigned to Sales department
✅ Set up access card (AC2024-0318-001)
✅ Assigned standard day shift (9 AM - 6 PM)
✅ Added to main branch and sales floor access
Equipment checklist created:
- Laptop assignment (pending IT)
- Phone ext: 2847 available
- Parking: Level 2, spot 47
- Security badge ready for pickup"Quick Reference
Configuration Templates
Basic Configuration Template (NPX)
{
"mcpServers": {
"passgage": {
"command": "npx",
"args": ["passgage-mcp-server"],
"env": {
"PASSGAGE_API_KEY": "your_api_key",
"PASSGAGE_BASE_URL": "https://api.passgage.com"
}
}
}
}Advanced Configuration Template (NPX)
{
"mcpServers": {
"passgage": {
"command": "npx",
"args": ["passgage-mcp-server"],
"env": {
"PASSGAGE_API_KEY": "your_company_api_key",
"PASSGAGE_USER_EMAIL": "user@company.com",
"PASSGAGE_USER_PASSWORD": "secure_password",
"PASSGAGE_BASE_URL": "https://api.passgage.com",
"PASSGAGE_DEFAULT_AUTH_MODE": "company",
"PASSGAGE_TIMEOUT": "30000",
"PASSGAGE_DEBUG": "false"
}
}
}
}Alternative: Global Installation Template
{
"mcpServers": {
"passgage": {
"command": "passgage-mcp-server",
"env": {
"PASSGAGE_API_KEY": "your_company_api_key",
"PASSGAGE_USER_EMAIL": "user@company.com",
"PASSGAGE_USER_PASSWORD": "secure_password",
"PASSGAGE_BASE_URL": "https://api.passgage.com",
"PASSGAGE_DEFAULT_AUTH_MODE": "company",
"PASSGAGE_TIMEOUT": "30000",
"PASSGAGE_DEBUG": "false"
}
}
}
}Development Configuration Template
{
"mcpServers": {
"passgage": {
"command": "/path/to/node",
"args": ["/path/to/mcp-server/dist/index.js"],
"env": {
"PASSGAGE_API_KEY": "your_company_api_key",
"PASSGAGE_USER_EMAIL": "user@company.com",
"PASSGAGE_USER_PASSWORD": "secure_password",
"PASSGAGE_BASE_URL": "https://api.passgage.com",
"PASSGAGE_DEFAULT_AUTH_MODE": "company",
"PASSGAGE_TIMEOUT": "30000",
"PASSGAGE_DEBUG": "false"
}
}
}
}Common Commands Cheat Sheet
Authentication Commands
"Check my Passgage authentication status"
"Switch to company mode"
"Switch to user mode"
"Login with my user credentials"
"What authentication modes are available?"User Management (Admin)
"List all users in [department name]"
"Create a new user for [name] ([email]) in [department]"
"Show me user details for [name/email]"
"Update user [name] to [new department]"
"Deactivate user [name/email]"Leave Management
"Show all pending leave requests"
"List leave requests for [department/user]"
"Approve leave request [ID] with note [message]"
"Show my leave balance and history"
"Submit annual leave request for [dates]"Reporting & Analytics
"Get dashboard statistics for [period]"
"Show attendance report for [department] [period]"
"Export [data type] for [department] to CSV"
"Analyze overtime patterns for [team/period]"
"Generate security audit report"Device & Access Management
"List all access zones and their status"
"Show device status for all entrances"
"Check who has access to [zone/building]"
"List all active access cards"
"Generate access audit for [user]"Filtering Examples
Date Filters
"created_at_gteq": "2024-01-01" # Created after January 1st
"updated_at_lteq": "2024-12-31" # Updated before December 31st
"start_date_eq": "2024-03-15" # Exact start date matchText Filters
"name_cont": "john" # Name contains "john"
"email_eq": "user@company.com" # Exact email match
"department_name_cont": "engineer" # Department contains "engineer"Status Filters
"is_active_eq": true # Active records only
"status_in": ["pending","approved"] # Multiple status values
"approval_status_not_eq": "rejected" # Exclude rejected itemsNumeric Filters
"salary_gt": 50000 # Salary greater than 50,000
"leave_days_lteq": 10 # Leave days 10 or fewer
"overtime_hours_gteq": 5 # 5+ overtime hoursDevelopment Mode
For development and testing:
npm run dev # Development with hot reload
npm start # Production modeTool Categories
Authentication Tools
passgage_login- Login with email/password (switches to user mode)passgage_refresh_token- Refresh current JWT tokenpassgage_logout- Logout and clear user sessionpassgage_auth_status- Check authentication status and available modespassgage_set_company_mode- Switch to company API key modepassgage_switch_to_user_mode- Switch to user JWT mode (requires previous login)passgage_switch_to_company_mode- Switch to company mode (requires API key)passgage_get_auth_modes- Get detailed information about available modes
CRUD Tools (5 tools per service × 25 services = 125 tools)
For each service (users, branches, departments, etc.):
passgage_list_{service}- List with filtering and paginationpassgage_get_{service}- Get single item by IDpassgage_create_{service}- Create new itempassgage_update_{service}- Update existing itempassgage_delete_{service}- Delete item by ID
Specialized Tools
passgage_upload_file- File upload with presigned URLspassgage_approve_request- Approve/reject single requestpassgage_bulk_approve- Bulk approval operationspassgage_assign_user_to_shift- Staff shift assignmentspassgage_track_entrance- Record entry/exit eventspassgage_search- Universal search across resourcespassgage_export_data- Data export in multiple formatspassgage_get_dashboard_stats- Dashboard metrics
Examples
Authentication & Mode Management
// Login with user credentials (switches to user mode)
{
"name": "passgage_login",
"arguments": {
"email": "user@company.com",
"password": "secure_password"
}
}
// Switch to company mode for admin operations
{
"name": "passgage_set_company_mode",
"arguments": {
"api_key": "your_company_api_key"
}
}
// Switch back to user mode (if previously logged in)
{
"name": "passgage_switch_to_user_mode",
"arguments": {}
}
// Check current authentication status and available modes
{
"name": "passgage_auth_status",
"arguments": {}
}
// Get detailed information about authentication modes
{
"name": "passgage_get_auth_modes",
"arguments": {}
}User Management
// List users with filtering
{
"name": "passgage_list_users",
"arguments": {
"page": 1,
"per_page": 25,
"filters": {
"is_active_eq": true,
"department_id_eq": "dept-uuid",
"name_cont": "john"
}
}
}
// Get specific user
{
"name": "passgage_get_user",
"arguments": {
"id": "user-uuid-here"
}
}
// Create new user
{
"name": "passgage_create_user",
"arguments": {
"data": {
"email": "newuser@company.com",
"first_name": "John",
"last_name": "Doe",
"department_id": "dept-uuid"
}
}
}Leave Management
// List pending leave requests
{
"name": "passgage_list_leaves",
"arguments": {
"filters": {
"status_eq": "pending",
"start_date_gteq": "2024-01-01"
}
}
}
// Approve leave request
{
"name": "passgage_approve_request",
"arguments": {
"approval_id": "approval-uuid",
"action": "approve",
"notes": "Approved by manager"
}
}Advanced Search
// Search across multiple resources
{
"name": "passgage_search",
"arguments": {
"query": "john doe",
"resources": ["users", "departments", "leaves"],
"limit": 10
}
}
// Export user data
{
"name": "passgage_export_data",
"arguments": {
"resource": "users",
"format": "csv",
"date_range": {
"start_date": "2024-01-01",
"end_date": "2024-12-31"
}
}
}API Coverage
This MCP server provides comprehensive coverage of the Passgage Public API:
25 Core Services with full CRUD operations
Advanced Filtering using Ransack query syntax
Pagination Support for large datasets (max 50 per page)
File Upload with presigned URL support
Approval Workflows with single and bulk operations
Time Tracking and entrance management
Dashboard Analytics and reporting
Multi-format Export (CSV, JSON, Excel)
Filtering Examples
The server supports advanced Ransack-style filtering:
{
"filters": {
"name_cont": "john", // Contains "john"
"email_eq": "user@example.com", // Exact email match
"created_at_gteq": "2024-01-01", // Created after date
"is_active_eq": true, // Boolean exact match
"department_id_in": ["id1","id2"] // ID in array
}
}Available Filter Operations
_eq- Equal to_not_eq- Not equal to_cont- Contains (case insensitive)_in/_not_in- In/not in array_gt/_gteq- Greater than / greater than or equal_lt/_lteq- Less than / less than or equal_present/_blank- Field present / blank_null/_not_null- Null / not null
Development
Scripts
npm run dev # Development mode with hot reload
npm run build # Build TypeScript to JavaScript
npm run start # Start production server
npm run test # Run tests
npm run lint # Lint code
npm run lint:fix # Fix linting issues
npm run type-check # TypeScript type checkingProject Structure
src/
├── api/ # API client implementation
├── config/ # Configuration management
├── tools/ # MCP tool implementations
│ ├── auth.ts # Authentication tools
│ ├── crud.ts # CRUD operation tools
│ └── specialized.ts # Specialized tools
├── types/ # TypeScript type definitions
└── index.ts # Main server entry pointError Handling
The server provides comprehensive error handling:
Authentication errors - Clear messages for login failures
API errors - Detailed error information from Passgage API
Validation errors - Field-level validation feedback
Network errors - Connection and timeout handling
Permission errors - Access control feedback
Contributing
We welcome contributions! Please follow these guidelines for the best experience:
Development Workflow
Fork the repository
Create a feature branch:
git checkout -b feature/your-featureMake your changes following our conventions
Add tests for new functionality
Run the development checks:
npm run type-check npm run lint npm test npm run buildSubmit a pull request
Commit Convention
This project uses Conventional Commits for automated versioning and changelog generation. Use the following format:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]Types:
feat: A new feature (triggers minor version bump)
fix: A bug fix (triggers patch version bump)
docs: Documentation changes (triggers patch version bump)
refactor: Code changes that neither fix bugs nor add features (triggers patch version bump)
perf: Performance improvements (triggers patch version bump)
test: Adding or fixing tests
build: Changes to build system or dependencies
ci: Changes to CI configuration
chore: Other changes that don't modify src or test files
Examples:
git commit -m "feat: add bulk user import tool"
git commit -m "fix: resolve authentication timeout issue"
git commit -m "docs: update installation instructions"
git commit -m "feat!: restructure API authentication (BREAKING CHANGE)"Breaking Changes:
Add ! after the type or include BREAKING CHANGE: in the footer to trigger a major version bump:
git commit -m "feat!: change API key format requirement"Automated Releases
Releases are automated via GitHub Actions:
Push to
mainbranch triggers automated testing, building, versioning, and npm publishingVersion numbers are determined by commit message types
Changelog is automatically generated and updated
NPM package is published with proper provenance
Troubleshooting
Common Issues
❌ Tools not appearing in Claude?
Restart Claude Desktop completely (quit from system tray)
Check Node.js path:
which node(macOS/Linux) orwhere node(Windows)Verify server path points to
dist/index.jsTest manually:
node dist/index.js
❌ Path issues on Windows?
Use double backslashes:
"C:\\Program Files\\nodejs\\node.exe"Avoid paths with spaces if possible
❌ Authentication errors?
Verify API key with Passgage:
deneyim@passgage.comCheck
PASSGAGE_BASE_URLmatches your instanceEnable debug:
"PASSGAGE_DEBUG": "true"
❌ JSON syntax errors?
Validate at jsonlint.com
Check for missing commas, extra quotes
Debug Mode
{
"env": {
"PASSGAGE_DEBUG": "true"
}
}Getting Help
Technical Issues: Create an issue in this repository
API Access: Contact
deneyim@passgage.com
License
MIT License - see LICENSE file for details.
Available Tools
151 toolspassgage_approve_requestA
Approve or reject a pending approval request
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Optional notes for the approval decision | |
| action | Yes | Action to take on the approval | |
| approval_id | Yes | UUID of the approval request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action (approve/reject) but does not mention side effects, reversibility, permission requirements, or what happens to the request after the action, leaving significant behavioral ambiguity for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with no filler or redundancy. The key action and target are front-loaded, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has simple parameters with a well-described schema, but the lack of annotations, output schema, and any mention of side effects or prerequisites leaves notable gaps. The description is minimally viable for selecting the tool but not fully complete for understanding the broader context of invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage of parameter descriptions, including the enum for action. The description adds minimal context beyond the schema, only implying that the request is pending. This meets the baseline for high schema coverage but does not add extra parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Approve or reject') with a clear resource ('pending approval request'), which immediately distinguishes it from other approval tools like bulk_approve or update_approval. It fully captures the tool's primary function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'pending approval request' implies when to use the tool, but there is no explicit guidance on when not to use it or how it differs from alternatives such as passgage_bulk_approve or passgage_update_approval. Usage context is only implied, not clearly articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_assign_user_to_shiftC
Assign a user to a specific shift
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date for the shift assignment (YYYY-MM-DD) | |
| user_id | Yes | UUID of the user to assign | |
| shift_id | Yes | UUID of the shift | |
| branch_id | No | UUID of the branch (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description alone carries the burden of disclosure. It states the action but does not mention side effects, idempotency, conflict handling, permissions, or response behavior. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no fluff. It is appropriately front-loaded, though extremely brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutation tool with no annotations and no output schema, so the description needs to explain behavioral context. It does not address success/failure responses, optional parameters, or potential conflicts, leaving it incomplete for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-level meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool assigns a user to a shift, using a specific verb and resource. It does not explicitly differentiate from sibling tools like create_user_shift or update_user_shift, but the action is obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, no prerequisites, and no exclusions. The description implies usage but does not articulate context or decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_auth_statusA
Check authentication status, current mode, and available authentication methods
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden. 'Check' implies a read-only operation, and listing the three outputs adds value. However, it does not disclose potential error conditions, whether authentication is required to call this endpoint, or the return format, which leaves behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that is concise and free of waste. Every word contributes meaning, listing exactly what the tool checks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple no-parameter status check with no output schema or annotations, the description adequately conveys the core return values (status, mode, methods). It lacks explicit detail on edge cases or error behavior, but the simplicity of the tool keeps this from being a major deficiency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. There is no parameter information needed, and the description appropriately focuses on output rather than input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Check') with a clear resource ('authentication status') and lists three concrete aspects: status, current mode, and available authentication methods. This distinguishes it from sibling tools like passgage_get_auth_modes, which likely only lists modes without the current state.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it is for checking authentication state, giving some usage context. However, it does not explicitly mention when to use this tool versus siblings like passgage_get_auth_modes or passgage_login, nor does it state any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_bulk_approveB
Approve or reject multiple approval requests at once
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Optional notes for all approval decisions | |
| action | Yes | Action to take on all approvals | |
| approval_ids | Yes | Array of approval request UUIDs |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It merely states the action without explaining partial failure behavior, permission requirements, reversibility, or response format—significant gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words, directly stating the action and scope. It is front-loaded and appropriately sized for the information it conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a bulk mutation tool with no annotations and no output schema, this description is too sparse. It fails to clarify whether 'at once' implies atomicity, how notes apply to all decisions, or what the outcome/response will be.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters (approval_ids, action, notes). The description adds no extra parameter semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific verb (approve/reject) and resource (multiple approval requests), and 'at once' effectively distinguishes this bulk action from singular approval tools like passgage_approve_request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies bulk usage but does not explicitly mention when to use this tool versus the singular approval tool or provide exclusions. It lacks guidance on prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_access_zoneC
Create a new access_zone
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the access_zone |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It simply says 'Create a new access_zone,' which only restates the tool's name without detailing side effects, required permissions, id generation, or response behavior. For a mutation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler or redundancy, making it easy to parse. However, it is so minimal that it borders on under-specification, though it does clearly state the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested open data object, no annotations, and no output schema, making substantial context necessary. The description fails to explain the data object's structure, constraints, or invocation context, leaving a critical gap for an agent trying to construct a valid call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes the only parameter 'data' as 'The data for creating the access_zone,' which is circular and unhelpful. The tool description adds no information about the required fields within the data object, and because additionalProperties is true, the agent has no structural guidance for constructing valid input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new access_zone' uses a specific verb and resource, clearly stating what the tool does. Although it does not explicitly differentiate from sibling create_* tools, the resource name is unambiguous and the action is distinct from list/get/update/delete siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as update_access_zone or delete_access_zone. The description omits any context about prerequisites, use cases, or exclusions, leaving the agent to infer usage purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_approvalC
Create a new approval
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the approval |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description offers no behavioral details beyond the name. It does not disclose side effects, required authentication, data validation rules, or any constraints. The description is entirely tautological, providing zero value beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with no filler words. However, it is so terse that it sacrifices utility; a single short sentence earns its place but provides minimal information to the agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a create operation with a complex nested object parameter and no output schema or annotations. The description gives no context about what an approval is, what fields are expected, how it relates to other resources, or any constraints. It is completely inadequate for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has a single 'data' parameter with a description ('The data for creating the approval') that essentially mirrors the tool description. Schema coverage is 100% so baseline is 3, but the description and schema both fail to specify the expected structure or required fields within the data object, limiting practical use.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('a new approval'), providing a specific verb+resource statement. However, it does not differentiate from sibling tools like passgage_approve_request or passgage_update_approval, which could be confused with creating an approval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The description does not mention prerequisites, typical scenarios, or relationships to other approval-related operations, 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.
passgage_create_approval_flowC
Create a new approval_flow
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the approval_flow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It merely states 'Create' without any details on side effects, required permissions, reversibility, or response format. This is a write operation, but the description offers no insight into the consequences or behavior beyond the verb, making it effectively uninformative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, immediately stating the action and resource. It is concise and front-loaded with no fluff. However, it is so minimal that it borders on under-specification, though for a simple tool definition, this level of brevity is not inherently poor.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, and the presence of many sibling CRUD tools, the description is too sparse to be complete. It does not explain what data is needed, what the created approval_flow represents, or any related usage context. The tool is a basic create operation, but even basic tools benefit from at least a sentence about required fields or typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one parameter 'data' with a description that is tautological ('The data for creating the approval_flow') and an object type with additionalProperties true, giving no field-level detail. The tool description adds no insight into what fields are expected. Even though schema coverage is 100%, the content is empty, so the description fails to provide meaningful parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('approval_flow'), which is sufficient to distinguish it from sibling tools like 'create_approval' or 'update_approval_flow'. However, it does not elaborate on what an approval_flow is or differentiate it beyond the resource name, so it stops short of a top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not specify prerequisites, context, or exclusions. The user is left to infer that creation is appropriate whenever a new approval_flow is needed, but there is no explicit or implicit comparison to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_assignment_requestB
Create a new assignment_request
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the assignment_request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action 'Create' without mentioning side effects, authentication needs, idempotency, or what happens on success or failure. Minimal behavioral information is conveyed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the action and object. Every word earns its place, with no redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a free-form 'data' object with no specified sub-fields, and no output schema is present. The description does not explain what an assignment_request is, what data structure is expected, or what the response will be. This leaves a significant gap for the agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one parameter 'data' with a description and 100% coverage, so the baseline is 3. The tool description adds no additional parameter semantics, but since the schema already covers the parameter, this is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new assignment_request' uses a specific verb and resource, clearly stating the tool's purpose. It distinguishes itself from sibling tools that perform list, get, update, or delete operations on the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as when to use update or delete instead. There are no prerequisites, exclusions, or context about the use case, leaving the agent to infer solely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_brancheC
Create a new branche
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the branche |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'Create a new branche,' which implies a mutation but does not disclose required permissions, idempotency, side effects, return values, or validation behavior. This falls short of meaningful transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, making it concise and front-loaded. However, it largely restates the tool name (passgage_create_branche) and adds no additional context, so it does not fully earn its place in terms of informative value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a single generic 'data' object parameter, no annotations, and no output schema, the description is severely incomplete. An agent has no idea what fields to include in 'data', whether authentication is required, or what the response looks like. This is inadequate for a create operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter 'data' with 100% coverage, but its description is generic ('The data for creating the branche') and additionalProperties allows anything. The tool description adds nothing about the required structure or fields. Since schema coverage is high, the baseline is 3, and the description does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('a new branche'), which distinguishes it from sibling tools like passgage_list_branches, passgage_get_branche, and passgage_update_branche. However, the typo 'branche' and lack of detail about what a branche is prevent a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It merely states the action, without mentioning prerequisites, exclusions, or when to prefer other tools such as update or delete. This is effectively no usage guidance beyond the obvious implication from the verb 'create'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_branch_groupC
Create a new branch_group
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the branch_group |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations and a description that merely restates the tool's name, there is zero disclosure about behavioral traits. The agent is not informed about required data structure, idempotency, permissions, or response behavior. The description adds no value beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, but it is under-specified to the point of being a restatement of the tool name. While brevity is valued, this sacrifices essential information and is better characterized as missing specification rather than true conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a complex input (an unrestricted object), no output schema, no annotations, and a description that says nothing about data shape, return values, or error handling. For a create operation with significant ambiguity, this is severely incomplete and would prevent correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema description coverage is 100%, the only parameter 'data' is described as 'The data for creating the branch_group'—a tautology. It provides no structural information, required fields, or examples. The tool description also lacks parameter context, leaving the agent completely in the dark about what to pass.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new branch_group' explicitly states the action and resource, clearly distinguishing it from sibling operations like update, delete, get, and list for branch groups. The verb and noun are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., existing parent resources), when to prefer update over create, or any exclusion criteria. The description is purely declarative with no selection assistance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_cardC
Create a new card
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the card |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry all behavioral disclosure. It only states the core action but omits side effects, return values, permissions, idempotency, or required data shape. For a mutation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately short and front-loaded, but it is under-specified rather than concise. Every word is informative yet insufficient for a tool with complex input, warranting a mid-range score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested object parameter with arbitrary properties and no output schema or annotations. The description does not clarify the card data structure, required fields, or operation context, making it inadequate for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has high coverage for the single 'data' parameter, but both the schema description and the tool description are tautological ('The data for creating the card'). No subfields, examples, or structure hints are provided, so the agent gains no meaningful understanding beyond the parameter name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new card' uses a specific verb and resource, clearly indicating the action. It distinguishes from update/delete/get/list card siblings, though it doesn't differentiate among the many create_* tools (e.g., create_user, create_approval) beyond the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus update_card or other create_* tools. There is no mention of prerequisites, alternatives, or conditions that warrant creating a card instead of updating one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_departmentB
Create a new department
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the department |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not mention authentication requirements, potential side effects, required permissions, or response format. For a mutation tool, this lack of behavioral context is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that avoids redundancy or filler. It is concise and to the point, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a create operation with no annotations, no output schema, and an opaque 'data' parameter. The description does not explain what the department object should contain, how the API behaves, or what the response looks like. Given the potential complexity of the data payload, the description is incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter, 'data', with a description ('The data for creating the department') and additionalProperties set to true. Since schema description coverage is 100%, the baseline is 3. The tool description adds no additional parameter details beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new department' uses a specific verb ('create') and resource ('department'), clearly distinguishing it from sibling tools that list, get, update, or delete departments. It is unambiguous and directly states the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 passgage_update_department or passgage_delete_department. There is no mention of prerequisites, context, or exclusions, so the usage is only implied by the verb 'create'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_deviceC
Create a new device
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the device |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for disclosing behavioral traits. It only states 'Create a new device' and does not mention required data, permissions, side effects, idempotency, or return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
While the description is extremely short (one sentence), it is under-specified rather than appropriately concise. It lacks any structural elements like usage context or parameter guidance, making it closer to a tautology than a useful tool description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (an opaque 'data' object with additionalProperties allowed, no output schema, and no annotations), the description is far too brief to be complete. It fails to explain what a 'device' is, what fields are required, or what successful creation entails.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter 'data' has a schema description that is circular ('The data for creating the device'), adding no real meaning. The tool description similarly provides no insight into the expected structure, required fields, or examples for this opaque parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Create') and resource ('a new device'), making its purpose unmistakable. It aligns well with the tool name and distinguishes it from sibling tools like passgage_list_devices, passgage_get_device, passgage_update_device, and passgage_delete_device.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no information about when to use this tool versus alternatives, nor any prerequisites or context. It simply states the action without addressing usage scenarios or relationships to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_entranceC
Create a new entrance
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the entrance |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Create a new entrance,' which implies a mutation but does not disclose side effects, required permissions, idempotency, or return behavior. This is a severe transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—a single sentence with no fluff. However, it is under-specified to the point of being terse, making it not 'appropriately sized' for a tool that likely requires more context to be used correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a loose schema (additionalProperties true), no output schema, and no annotations. The description offers no details about what constitutes an 'entrance,' what fields are expected, or any constraints. This is inadequate for an agent to invoke the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter 'data' with a description ('The data for creating the entrance') and additionalProperties true, giving 100% schema coverage. The tool description adds no extra meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('a new entrance'), which is specific enough to convey the basic purpose. However, it does not distinguish this tool from sibling tools like passgage_update_entrance or passgage_track_entrance, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as passgage_update_entrance or passgage_track_entrance. There is no mention of prerequisites, context, or exclusions, leaving the agent without direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_holidayC
Create a new holiday
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the holiday |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not mention any side effects, permissions, or error conditions. Apart from implying a write operation, it reveals nothing about how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using a single sentence with zero wasted words. However, it is so brief that it borders on under-specification, lacking even a hint of the data structure, but the text itself is well-structured and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an unconstrained nested data parameter, no output schema, and no annotations, this description is wholly inadequate. It does not explain what constitutes a holiday, what data fields are needed, or what the tool returns. An agent would struggle to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema documents a single 'data' parameter with a generic description and allows arbitrary properties. The description 'Create a new holiday' adds no information about what fields are required inside the data object. Since the schema effectively provides no structural constraints, the description offers insufficient meaning for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new holiday' clearly states the verb and resource, distinguishing it from get/update/delete/list siblings. However, it does not provide any additional differentiation or context beyond the generic create pattern, so it falls short of a top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, such as update_holiday for modifying existing holidays. The intended usage is only implied by the verb 'create', with no exclusions, prerequisites, or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_job_positionB
Create a new job_position
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the job_position |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states 'Create a new job_position', revealing that it is a mutation but omitting auth requirements, side effects, response format, or validation behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no fluff. It is appropriately sized for a CRUD creation tool and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, no output schema, and a permissive 'data' object (additionalProperties true), the description does not explain what fields are needed for a job_position or what to expect on success. This is insufficient for a create operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for its single 'data' parameter, but that description is generic ('The data for creating the job_position'). The tool description adds no parameter-level meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Create a new job_position'. This clearly distinguishes it from sibling tools for listing, getting, updating, and deleting job positions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating a job_position, but provides no explicit context on when to choose this over alternatives or any prerequisites/exclusions. It relies entirely on the tool name and sibling naming conventions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_leaveC
Create a new leave
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the leave |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states the action ('Create a new leave') but does not disclose side effects, auth requirements, data validations, return values, or consequences of creation. This is a minimal mutation description with no additional behavioral context, similar to the update_drive example that scored 2.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no unnecessary words. However, it essentially restates the tool name (passgage_create_leave) and adds no additional value beyond what the name already conveys. It is concise but not particularly informative, earning a middle score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a nested free-form data object, no output schema, and no annotations, the description is far too sparse. It does not explain what a leave is, what fields are required, what the response structure looks like, or any constraints. This is inadequate for a create operation with a non-trivial payload, similar to the update_drive example that scored 2.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the single 'data' parameter has a description), so the baseline is 3. The tool description adds no extra parameter meaning, and the schema description itself is vague ('The data for creating the leave' with additionalProperties true). While the description doesn't help, the schema coverage meets the baseline threshold.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new leave' clearly states the verb (create) and the resource (leave), making the tool's purpose unambiguous. It distinguishes from sibling tools by naming the specific resource, though it doesn't elaborate on what a 'leave' entails. This is comparable to the 'Update shared drive settings' example, which received a 4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description does not mention prerequisites, typical scenarios, or exclude cases (e.g., when to use update_leave instead). With sibling tools like list_leaves, get_leave, update_leave, and delete_leave, the lack of usage context is a clear gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_leave_ruleC
Create a new leave_rule
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the leave_rule |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only says 'Create a new leave_rule', which implies a write operation but provides no details about required authentication, side effects, idempotency, or response behavior. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficiently worded sentence that is easy to parse. However, it is under-specified, so it does not fully earn its place, though it is not verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an unstructured data parameter, no output schema, and no annotations. The description provides no information about required fields, expected response, or operational prerequisites. This is inadequate for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'data' parameter, so the baseline is 3. The description adds no parameter details, and the schema itself is vague (open object with additionalProperties true), but the high coverage prevents a lower score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the action 'Create' and the resource 'leave_rule', which clearly indicates the tool's purpose and distinguishes it from list, get, update, and delete siblings. However, it is minimal and essentially restates the tool name without adding further context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., update_leave_rule) or any prerequisites. The description simply repeats the create action without contextual instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_leave_typeC
Create a new leave_type
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the leave_type |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'Create a new leave_type', which implies a mutating operation but offers no details on side effects, idempotency, validation requirements, or return values. This is a significant gap for a create tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that is efficient and easy to parse. However, it is overly minimal and sacrifices useful detail; it is concise but not necessarily appropriately sized given the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema and annotations, and with a vague free-form object parameter, the description is not complete enough. It fails to explain what a leave_type requires, what the response will look like, or any constraints, leaving the agent under-informed for successful invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema's 'data' parameter has a generic description ('The data for creating the leave_type') and allows additional properties, providing high schema coverage. The tool description adds no further meaning about the expected structure or required fields, so it stays at the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new leave_type' clearly states the action (create) and resource (leave_type), distinguishing it from the list/get/update/delete siblings for the same resource. However, it does not provide any additional context about what a leave_type is, making it somewhat generic compared to more descriptive tool definitions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as creating a leave rule or creating a leave. There are no mentions of prerequisites, permissions, or exclusions, so an agent cannot determine appropriate usage beyond the obvious intent implied by the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_night_workC
Create a new night_work
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the night_work |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description offers no behavioral details such as required permissions, side effects, or validation rules. It merely states the action without disclosing any operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, no redundancy, and the key action is front-loaded. Efficiently sized for the limited information it conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (nested data object, no output schema, no annotations), the description is incomplete. It doesn't explain the structure of 'data' or what constitutes a night_work, leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage for the single 'data' parameter, so the baseline is 3. The description adds no parameter-level detail, and the schema's own description is generic, but the baseline holds given the high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new night_work' clearly states the action and resource, distinguishing it from sibling create tools by resource name. However, it doesn't explain what a night_work is, relying on the tool name for domain context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. It doesn't mention related night_work operations (get/update/delete) or any prerequisites, leaving the intended usage implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_organization_unitC
Create a new organization_unit
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the organization_unit |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full burden of behavioral disclosure. It only states 'Create a new organization_unit', which merely repeats the tool name. It does not mention side effects, required data fields, authentication needs, or response behavior, making it inadequate for an agent to anticipate consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It is front-loaded and concise, earning a perfect score for brevity and structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This tool has no output schema and no annotations, and the description fails to explain what an organization_unit is, what data structure is expected in the 'data' object, or what response to expect. For a create operation with an open-ended object parameter, the description is critically incomplete for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% because the sole 'data' parameter has a description, though it is generic ('The data for creating the organization_unit'). The tool description adds no further parameter guidance, so baseline 3 is appropriate. However, the schema's additionalProperties:true and lack of field details mean the description could have compensated but did not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new organization_unit' uses a specific verb (Create) and a clear resource (organization_unit), distinguishing it from sibling tools like update, get, delete, and list. It directly states the tool's primary action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It is not misleading, but it offers zero context for selection or invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_payrollC
Create a new payroll
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the payroll |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only says 'Create a new payroll', which just restates the tool's name, without mentioning required permissions, side effects, data validation, or expected response format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. However, its extreme brevity borders on under-specification, but that is more a completeness issue than a conciseness one.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is far too minimal for a create operation with a nested, flexible data object. It does not describe the payroll structure, required fields, potential errors, or return value, leaving the agent with almost no context to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one 'data' parameter with a generic description, and the tool description adds no additional meaning. The parameter allows additionalProperties true, so the agent has no idea what structure the 'data' object should have, making the semantics effectively undefined.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('payroll'), clearly distinguishing it from sibling payroll tools like update_payroll, get_payroll, and delete_payroll. It directly states what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives, such as updating an existing payroll or prerequisites for creating one. The only implied usage is the literal meaning of 'create', which is not sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_shiftC
Create a new shift
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the shift |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations and a description that only restates the action, there is zero disclosure of behavioral traits such as permissions, side effects, uniqueness constraints, or what happens on success. The description fails to provide any context beyond what the tool name implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no filler. However, given the opaque 'data' object and lack of any other documentation, it is too terse to be genuinely useful. It earns a mid score for brevity but loses points for under-specification.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a complex nested object parameter and no output schema, yet the description provides no information about the structure of the shift data, required fields, or expected response. This is incomplete for an agent to invoke the tool correctly in a real scenario.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter 'data' described as 'The data for creating the shift', but this is vague and offers no field-level information. The tool description adds no further meaning, leaving the agent without any clue about what properties are required to define a shift. Despite 100% schema description coverage, the description quality is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new shift' uses a specific verb and resource, making it clear that this tool creates a shift entity. It distinguishes itself from sibling create tools by naming the resource, though it lacks additional scope or context about what a shift is.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention whether to use this for creating new shifts as opposed to updating or listing, nor does it provide prerequisite conditions or context about the shift lifecycle.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_shift_settingB
Create a new shift_setting
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the shift_setting |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description offers no behavioral context beyond the basic 'create' action. It doesn't mention side effects, required data, permissions, or what happens on success/failure, leaving the agent with no useful safety or execution insights.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that directly states the tool's purpose. It avoids any unnecessary fluff, though it may be too sparse for complex usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the simplicity of the tool (one data object), the description fails to convey what a shift_setting is or what fields the data object should contain. With no output schema and no annotations, an agent cannot construct a valid create request confidently, making the description inadequate for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'data', but the description is generic ('The data for creating the shift_setting') and the object allows arbitrary properties. The tool description adds no field-level guidance, so it stays at the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('Create') and the resource ('shift_setting'), distinguishing it from sibling tools like update, delete, get, and list for the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, prerequisites, or typical use cases. The name implies creating a new shift_setting, but there is no explicit context or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_slackC
Create a new slack
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the slack |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must carry the full burden of disclosing behavioral traits. It does not mention side effects, required permissions, validation, defaults, or the structure of a successful response. The agent gets no insight into what 'creating a slack' entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, so it is concise in word count. However, it lacks essential content, making it under-specified rather than appropriately concise. It earns a mid-range score because it is not verbose but also does not adequately inform.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the nested object parameter with no meaningful schema, no output schema, and no annotations, this description is severely incomplete. It does not explain what 'slack' is, what fields the 'data' object should contain, or what the expected outcome is. The tool cannot be reliably used based on this description alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one parameter 'data' with the description 'The data for creating the slack', which is tautological and uninformative. Although schema description coverage is 100%, the tool description adds no parameter meaning, and the schema's own description does not clarify what fields are needed. The agent remains clueless about how to construct a valid request.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' and identifies the resource as 'a new slack'. While 'slack' is not defined, the sibling tools list_slacks, get_slack, update_slack, and delete_slack clearly indicate it is a distinct resource type. This differentiates it from sibling CRUD actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its alternatives (e.g., update_slack or delete_slack). It also lacks any prerequisites, context, or scenarios where creation is appropriate. No alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_sub_companieC
Create a new sub_companie
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the sub_companie |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, and the description carries the full burden of behavioral disclosure. It merely restates the action 'create' without mentioning side effects, required permissions, potential errors, or any operational caveats, offering zero transparency beyond what the tool name implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that is extremely concise. It earns points for brevity, though the lack of any additional structure or elaboration makes it feel under-specified rather than efficiently comprehensive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with a generic data object, no output schema, and no annotations, the description provides no context about required input structure, return values, or error handling. It is inadequate for an agent to understand what constitutes a valid request, offering only the most basic intent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has a single 'data' object with additionalProperties true, and both the schema and description are tautological ('data for creating the sub_companie'). The description adds no field-level semantics, no required fields, nor examples, so it fails to compensate for the schema's vagueness despite having 100% coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new sub_companie' uses a clear verb and resource, accurately indicating a create operation. It is unambiguous when compared to sibling tools like list/get/update/delete, but it does not elaborate on what a sub_companie is or how this differs from other create tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives (e.g., update, delete). While the verb 'create' implies a new entity, there is no mention of prerequisites, conditions, or contrasting with sibling operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_userD
Create a new user
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the user |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for disclosing behavioral traits. It gives no information about side effects (e.g., creating a user may trigger emails, audits, or permissions), required authentication, potential errors, or reversibility. The simple statement 'Create a new user' is entirely opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely brief, but this is under-specification rather than appropriate conciseness. It consists of a single sentence that merely restates the tool's name without adding any informative content. There is no detail about input, output, or constraints, making it an inadequate description despite its brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has one parameters object with arbitrary properties, no output schema, and no annotations, so the description must provide sufficient context for correct use. The description 'Create a new user' is grossly insufficient; it fails to explain required data fields, validation rules, response format, or any operational context needed for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema describes the single 'data' parameter as 'The data for creating the user' with additionalProperties allowed, giving 100% schema description coverage. However, the tool description adds no meaning beyond the schema, leaving the actual required fields and structure of 'data' completely unspecified. The baseline of 3 applies because the schema covers the parameter, but the description offers no additional semantic help.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new user' is a direct restatement of the tool name 'passgage_create_user', adding no additional detail or context. It does not specify any scoping, special behavior, or distinguish this tool from the many other create_* sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as passgage_update_user or passgage_list_users. There are no prerequisites, no notes on authentication, and no mention of how this relates to other user management operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_user_extra_workC
Create a new user_extra_work
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the user_extra_work |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states 'Create a new user_extra_work,' implying mutation but omitting any information about permissions, side effects, validation rules, or return values. This is a significant transparency gap for a create operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It is highly concise but perhaps too sparse to be genuinely helpful; nevertheless, structure and brevity are appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with a free-form 'data' object, no output schema, and no annotations, the description is insufficient. It does not explain what fields are expected, what the response will be, or any business rules. The agent would have to rely on external knowledge to use this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single 'data' parameter that has a description. The description adds no additional meaning about the parameter contents or structure. Per the rubric, baseline is 3 when schema coverage is high and description does not compensate for the vague free-form object.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the target resource ('user_extra_work'), which is a specific verb+resource pair. It distinguishes this from sibling tools like list/get/update/delete for the same resource, though it lacks any additional context about what a user_extra_work is.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, conditional use cases, or related tools such as update/delete for user_extra_work, so the AI agent receives no direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_user_rateC
Create a new user_rate
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the user_rate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits, but it only states 'Create a new user_rate.' It implies a write operation but fails to mention side effects, required permissions, error conditions, or response behavior. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence and is front-loaded, but it is under-specified. It is concise in length but conveys almost no useful information, so it does not earn its place as a valuable description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations, no output schema, and a single generic data object. The description fails to explain what a user_rate is, what fields are expected, or what the outcome of creation is. This is inadequate for a CRUD create tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'data' parameter, so the baseline of 3 applies. However, the description adds no meaning beyond the schema, and the schema itself is generic with additionalProperties true, offering little guidance on what the data should contain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new user_rate' essentially restates the tool name without providing any additional insight into what a user_rate is or how this tool differs from other create tools. It specifies a verb and resource but adds no new information, making it nearly a tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as passgage_create_user or other create operations. There is no mention of prerequisites, context, or exclusions, leaving the agent without direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_user_shiftC
Create a new user_shift
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the user_shift |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only restates the tool's name. It does not mention auth requirements, side effects, idempotency, or response format, leaving the agent uninformed about the operation's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of a single short sentence with no redundant words. However, its brevity comes at the cost of omitting crucial contextual information, so it is concise but overly sparse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (an open 'data' object with additionalProperties true), the absence of an output schema, and the large set of sibling tools, the description is severely incomplete. It does not explain what a user_shift is, what fields to provide, or what to expect in response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has a single 'data' parameter described as 'The data for creating the user_shift', and schema coverage is 100%. The description adds no additional parameter details, so it meets the baseline for high schema coverage but does not enhance understanding of the data object's structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('user_shift'), making the tool's purpose immediately clear. However, it does not elaborate on what a user_shift is or how it differs from related tools beyond the name, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the many sibling create/update tools, nor does it mention prerequisites or related operations like assign_user_to_shift. There is no context for when this is the appropriate choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_create_working_dayD
Create a new working_day
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | The data for creating the working_day |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It merely says 'Create a new working_day' without mentioning side effects, required authentication, return format, or any consequences of misuse. This is a mutation tool, so the lack of transparency is a serious gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence and front-loaded, but it is under-specified rather than concise. It omits critical information, so its brevity is counterproductive. An agent would need far more detail to invoke the tool correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create operation with no output schema, no annotations, and an opaque parameter object, the description is severely incomplete. It does not explain what a working_day is, what data to provide, or what will happen. The agent cannot reliably use this tool based on the information given.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'data' is described as 'The data for creating the working_day', which is essentially circular and adds no meaning beyond the schema's placeholder. The schema allows arbitrary additional properties, but neither the schema nor the description explains what fields are expected. The description fails to compensate for this ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a new working_day', which is a direct restatement of the tool name and adds no new information. It does not distinguish this tool from the many other create_* sibling tools, so it functions as a tautology rather than a meaningful purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. There is no mention of context, prerequisites, or why an agent might choose this over related tools. The description leaves the agent without any decision-making information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_access_zoneB
Delete a access_zone by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the access_zone to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It only states the delete action, but does not mention irreversibility, permission requirements, cascade effects, or return value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler. It is concise and gets to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one param, no output schema), the description covers the basic action, but it misses important context about expected response, error handling, or side effects that an agent would need.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the id parameter (100% coverage) with description 'The UUID of the access_zone to delete'. The description merely echoes this, adding no additional meaning about parameter constraints, formats, or examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and the resource (access_zone) and specifies the key identifier (by ID). This distinguishes it from sibling tools that delete other resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites. It simply states the action without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_approvalA
Delete a approval by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the approval to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral transparency. It states the action (delete) but does not disclose whether deletion is permanent, whether it has cascading effects on related data, or whether special permissions are required. This is a significant gap for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler words. It immediately states the action and resource. Despite a minor grammar error, it is highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is very simple (one parameter, no output schema), so the description covers the core invocation details. However, it omits any mention of deletion semantics (permanence, cascading effects) and the expected return value, leaving the agent without full context for a destructive operation. This meets the minimum viable level but leaves clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the only parameter (`id` as the UUID of the approval), so the description's 'by ID' adds little new information. With 100% schema coverage, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Delete' and specifies the resource 'approval' with the method 'by ID', clearly distinguishing it from sibling tools like passgage_delete_approval_flow and passgage_delete_user. The grammar error ('a approval') is minor and does not obscure meaning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit when-to-use or when-not-to-use guidance. Usage is implied by the tool name and the CRUD pattern visible in sibling tools, but there is no mention of alternatives (e.g., if deleting an approval flow, use a different tool). This meets the minimum viable threshold for implied usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_approval_flowB
Delete a approval_flow by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the approval_flow to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for disclosing behavioral traits. It only says 'Delete' and 'by ID' without mentioning permanence, authorization needs, cascading effects, or error behavior. This provides minimal transparency beyond the action itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that communicates the core purpose with no wasted words. It is front-loaded and efficient, though it lacks expansion on usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a simple one-parameter delete operation, but with no annotations, no output schema, and minimal behavioral detail, the description is insufficient for an agent to fully understand the tool's side effects or expected response. It needs at least notification that deletion is permanent or confirmation behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents the 'id' parameter with a description, and the description mentions 'by ID' without adding new meaning. Since schema coverage is 100%, the description does not need to elaborate further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete'), the target resource ('approval_flow'), and the method ('by ID'). This distinguishes it from sibling tools like passgage_delete_approval, which targets a different resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites. It simply states what it does, so usage is implied rather than explicitly defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_assignment_requestB
Delete a assignment_request by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the assignment_request to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden. It states the delete operation but does not disclose that deletion is permanent, whether there are side effects like cascading deletes, or any permission requirements. This is a minimal disclosure for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words, making it concise and front-loaded. However, it contains a minor grammatical issue ('a assignment_request' instead of 'an assignment_request') and is slightly too terse to convey any safety or usage nuance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with one fully described parameter, the description is technically sufficient to invoke the tool. However, the lack of annotation and absence of behavior details (e.g., permanence or error handling) leaves the agent without full context. Given the simplicity of the tool, a score of 3 seems fair.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of the parameters, with the property description 'The UUID of the assignment_request to delete' already explaining the id parameter. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a assignment_request by ID' clearly states the action (delete), the resource (assignment_request), and the identifier used (ID). This distinguishes it from sibling tools like create, update, and get assignment_request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use this tool when you need to delete an assignment_request by its ID. However, it provides no explicit guidance on prerequisites, when not to use it, or alternatives (e.g., if a soft-delete is needed).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_brancheA
Delete a branche by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the branche to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It only states 'delete' and does not mention permanence, side effects, authorization requirements, or response behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is front-loaded with the verb and directly states the essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one required parameter, no output schema, no annotations) and the description covers the core action and target. However, it lacks any mention of return values or broader behavioral context, making it minimal but acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single 'id' parameter as 'The UUID of the branche to delete' (100% coverage). The description adds no extra semantic detail, but the schema already provides the necessary meaning, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the delete action and the target resource (branche) by ID. This distinguishes it from sibling get/create/update/list branch tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the delete verb and resource name, but there is no explicit statement about when to use it versus alternatives, nor any prerequisites or exclusions. For a simple CRUD delete, the context is inferable but not explicitly provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_branch_groupA
Delete a branch_group by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the branch_group to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It simply says 'Delete a branch_group by ID' without mentioning whether the deletion is permanent, if there are any side effects, authorization requirements, or what happens if the branch_group does not exist. This is a significant gap for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly states the operation and target. It is appropriately concise with no wasted words, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with one parameter and no output schema, the description is minimally adequate. It states what the tool does, but it lacks context about the consequences of deletion, any dependencies, or return values. Since no annotations compensate, the description could do more to fully inform the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage for the single parameter, including a description of 'id' as the UUID. The description adds no additional meaning beyond 'by ID', so it meets the baseline for full schema coverage without adding extra context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a branch_group by ID' clearly states the verb (Delete) and the resource (branch_group), and it distinguishes this tool from siblings like get_branch_group, create_branch_group, and update_branch_group by specifying the delete action and the ID parameter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied by the tool name and description: to delete a specific branch_group. However, the description does not explicitly state when to use this tool versus alternatives, nor does it provide any prerequisites or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_cardB
Delete a card by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the card to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It simply states 'Delete a card by ID' without mentioning whether deletion is permanent, whether it requires specific permissions, whether it has cascading effects, or how errors are handled. This is minimal and leaves the agent unaware of important consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, succinct sentence that immediately conveys the action and scope. No filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple with one parameter, the absence of annotations and an output schema places the burden on the description to provide context. It fails to mention side effects, success/error behavior, or when deletion is appropriate, leaving a substantial gap for an irreversible operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully documents the single 'id' parameter with description 'The UUID of the card to delete' (100% coverage). The description adds no additional semantic meaning beyond restating that the deletion is by ID, so it does not exceed the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and the target resource (card) with the required identifier (by ID). It distinguishes from sibling delete tools by naming the card resource, and adds the specific detail that deletion is by ID.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives such as update_card or other delete tools. The usage is only implied by the tool name, but there are no explicit conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_departmentA
Delete a department by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the department to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It states the destructive action but does not mention potential consequences like cascading deletes, irreversibility, or error behavior. This is a significant gap for a delete operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler or redundant information. Every word contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this is a destructive tool with no annotations, output schema, or additional context, the description is underspecified. It fails to inform the agent about likely side effects, required permissions, or the expected response, which could lead to misuse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes the only parameter 'id' fully with format (UUID), achieving 100% schema description coverage. The description adds no extra meaning beyond 'by ID', so it does not compensate beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Delete') and resource ('department') with an identifier, making the action unambiguous. It clearly distinguishes from sibling tools like list, get, create, and update department.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies use when a department must be removed by ID, providing sufficient context. It does not explicitly list alternatives or exclusions, but the purpose and naming convention already differentiate it from other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_deviceB
Delete a device by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the device to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'Delete' which implies destruction, but does not state that deletion is permanent, whether it requires authentication, or what happens if the device is not found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no extraneous words. It is appropriately front-loaded and conveys the essential information efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal, providing no information about return values, side effects, or prerequisites. For a delete operation with no annotations or output schema, this is insufficient context for an agent to fully understand the tool's implications.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a clear description for the only parameter 'id'. The description's 'by ID' adds no new semantic information beyond the schema, so it meets the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete), the resource (device), and the method (by ID). It distinguishes itself from sibling tools like passgage_get_device or passgage_update_device by specifying the delete operation for this particular entity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor any prerequisites or context. It simply restates the action implied by the name, leaving the agent to infer that deletion is the intended use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_entranceB
Delete a entrance by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the entrance to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only repeats the verb 'Delete' which is already in the tool name. With no annotations provided, the description carries the full burden of disclosing behavioral traits like permanence, permissions, or side effects, but it fails to provide any additional context. This leaves the agent unaware of the destructive consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the verb 'Delete' and the target resource. It contains no unnecessary words and is easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter delete tool, the description provides the essential action and target, but it lacks critical context such as irreversibility or side effects. Without annotations, this leaves a moderate gap in understanding, making it minimally viable but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes the single 'id' parameter as 'The UUID of the entrance to delete', covering 100% of parameter semantics. The description aligns by saying 'by ID' but adds no new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Delete' with the resource 'entrance' and method 'by ID', clearly distinguishing it from sibling tools like get_entrance, create_entrance, update_entrance, and track_entrance. Despite a minor grammatical error ('a entrance'), it unambiguously states the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as update_entrance or soft-delete options. The description simply states the action without any context, not mentioning that deletion is likely irreversible or that it should be used only when an entrance is permanently no longer needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_holidayB
Delete a holiday by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the holiday to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the delete action but does not mention whether deletion is permanent, any cascading effects, or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the action and resource. No redundant information is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema and annotations, the description should explain the deletion outcome or any side effects. It does not mention whether the operation is idempotent, what happens on non-existent ID, or the return value, leaving the agent with insufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes the 'id' parameter as 'The UUID of the holiday to delete', providing full coverage. The description adds no additional meaning beyond confirming the deletion is by ID.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and the target resource (holiday), with scope 'by ID'. It distinguishes from sibling tools like get_holiday, update_holiday, and list_holidays by specifying the delete operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied: use this tool when you want to delete a holiday. However, it provides no explicit guidance on when deletion is appropriate, prerequisites, or alternatives like update_holiday.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_job_positionA
Delete a job_position by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the job_position to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'Delete a job_position by ID' and does not reveal whether deletion is permanent, irreversible, cascades to related records, requires specific permissions, or what happens if the ID does not exist. This is a significant transparency gap for a mutation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no superfluous words. It immediately communicates the action, resource, and method, earning its place without repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter delete tool, the description is minimally adequate, but it lacks any information about return values, success/error behavior, or side effects. Since there is no output schema and no annotations, the agent must infer these from the tool name alone, leaving notable gaps for a real-world invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides a complete description for the 'id' parameter ('The UUID of the job_position to delete'), giving 100% schema coverage. The description's 'by ID' aligns with the schema but adds no additional meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a job_position by ID' clearly states the specific action (delete), the resource (job_position), and the method (by ID). This unambiguously distinguishes it from sibling tools like create, update, get, and list for the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when deleting a job_position by ID) but provides no explicit guidance on when not to use it, such as alternatives like deactivating via update or checking for dependencies. The sibling tool names make the primary use case obvious, but no exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_leaveB
Delete a leave by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states 'Delete' which implies destructive behavior, but it does not disclose consequences like irreversibility, cascading effects, or permission requirements beyond what 'delete' implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that conveys the essential purpose without any wasted words. It is perfectly sized for the simplicity of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter delete tool with no output schema, the description is sufficient. It states the action and the required input, and the simplicity of the tool means no additional behavior needs explanation. Lack of notes on idempotency or errors is minor given the straightforward nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes the 'id' parameter as 'The UUID of the leave to delete' (100% coverage). The description simply repeats 'by ID' without adding additional semantics, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a leave by ID' clearly states the action (delete) and the resource (leave), with the scope defined by ID. It distinguishes from sibling delete tools by specifying the leave resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool over alternatives, such as update_leave for modifying instead of deleting, or delete_leave_type for a different entity. The context is implicit from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_leave_ruleB
Delete a leave_rule by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave_rule to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the operation is a delete, which is inherently destructive, but it does not mention any consequences such as irreversibility, cascade effects, or permission requirements. With no annotations to supplement, the description falls short of explaining the behavioral implications of the deletion.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that delivers the essential information with no extraneous words. It is appropriately sized for a simple delete operation with one parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward delete operation with one parameter and no output schema, the description is minimally adequate. However, it lacks any notes on permanence, side effects, or typical usage context, which would round out the picture for an agent deciding whether to invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema alone describes the 'id' parameter as 'The UUID of the leave_rule to delete', covering its meaning fully. The description's phrase 'by ID' adds no new information beyond this, so it does not enhance the schema's parameter documentation. Given the high schema coverage, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete), the resource (leave_rule), and the key identifier (by ID). It effectively distinguishes this tool from sibling delete operations by naming the specific resource type, leaving no ambiguity about what it does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives or when not to use it. There is no mention of prerequisites, safety checks, or conditions that should be met before deletion. The usage is only implied by the obvious action described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_leave_typeB
Delete a leave_type by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave_type to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the burden of behavioral disclosure. It only says 'Delete a leave_type by ID' and does not mention whether deletion is permanent, whether an ID is required to exist, what happens to references, or any authorization needs. The safety profile is entirely opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately conveys the verb and object. It contains no filler or redundant information, making it extremely concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema), the description provides the minimal information needed to know what the tool does. However, it omits any side effects, return behavior, or conditions for deletion, which leaves some context gaps despite the straightforward nature of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully documents the single required parameter 'id' as 'The UUID of the leave_type to delete', so schema coverage is 100%. The description adds no additional parameter meaning beyond restating 'by ID', which warrants the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a leave_type by ID' clearly states the action (delete) and the resource (leave_type), with the specific scope of deletion by ID. It distinguishes this tool from sibling delete tools by naming the exact resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites, consequences (e.g., permanence, cascading effects), or situations where deletion might be disallowed. It only states the basic action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_night_workB
Delete a night_work by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the night_work to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It simply states the action but does not disclose that deletion is permanent, whether it requires special permissions, or what happens to related data. The minimal phrase 'Delete a night_work by ID' adds no context beyond the action itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the action and resource. Every word earns its place; there is no redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter delete operation with no output schema, the description and schema are sufficient to understand its purpose and required argument. However, the lack of any mention of side effects or irreversibility makes it slightly less complete than ideal, but not critically deficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for the single parameter 'id' with a clear description ('The UUID of the night_work to delete'). The tool description adds no extra parameter information beyond what the schema already states, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a night_work by ID' uses a specific verb (Delete) and resource (night_work) and clearly references the required parameter. It unambiguously distinguishes this from sibling tools like get_night_work or update_night_work.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or consequences. The agent must infer usage solely from the verb 'Delete' and the resource name, with no exclusions or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_organization_unitB
Delete a organization_unit by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the organization_unit to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'Delete' but does not indicate that the operation is permanent, irreversible, or potentially cascading to related data. This lack of detail is a significant gap for a destructive action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence without any superfluous words or information. It is front-loaded and immediately clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the tool is simple with one well-documented parameter, the description lacks important contextual information about the destructive nature of the operation, such as irreversibility or potential side effects. This is a minimal but not fully complete description for a delete action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter 'id' is described as 'The UUID of the organization_unit to delete'. The description adds no further meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete), the resource (organization_unit), and the method (by ID). It unambiguously distinguishes this tool from other organization_unit operations like create, get, or update.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool relative to alternatives, nor any mention of prerequisites or situations where deletion should be avoided. The description simply states the action without contextual usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_payrollB
Delete a payroll by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the payroll to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the destructive action without disclosing behavioral traits such as irreversibility, cascading deletes, permission requirements, or error handling. The agent gets no information beyond the tool's name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant information, perfectly sized for the simple operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple, the description lacks critical context such as success/failure responses, irreversibility, and any side effects. No annotations or output schema help, so the description is insufficient for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents the single 'id' parameter with type and description, and the description's 'by ID' adds no additional semantic value. Baseline of 3 applies due to 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the operation (delete) and the resource (payroll), adding the method 'by ID'. It unambiguously distinguishes it from sibling CRUD tools for other resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., update_payroll or delete other resources). The usage is implied by the tool name, but the description offers no explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_shiftA
Delete a shift by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the shift to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavioral traits. It only states the literal deletion action but does not mention whether deletion is permanent, irreversible, requires authentication, or affects related records. This is a significant gap for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence, front-loaded with the action and resource, and contains no unnecessary words. It is appropriately concise for a simple delete operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema), the description adequately explains what it does and how to invoke it. It is complete enough for the basic use case, though it lacks depth in behavioral context, which is already penalized in that dimension.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single parameter 'id' as 'The UUID of the shift to delete'. The description adds no additional meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a shift by ID' clearly states the action (delete), the resource (shift), and the method (by ID). It distinguishes from sibling tools like create_shift, update_shift, get_shift, and list_shifts by indicating deletion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when a shift needs to be deleted), but it does not explicitly state alternatives or conditions such as 'use update_shift to modify instead' or mention prerequisites like existing shift must exist. Context is implied but not detailed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_shift_settingB
Delete a shift_setting by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the shift_setting to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does not mention that deletion is permanent, any side effects on related data, permission requirements, or error behavior if the ID doesn't exist. It only restates the operation without additional context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that conveys the core purpose with no wasted words. It is appropriately front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with no annotations and no output schema, the description is under-specified. It lacks warnings about irreversibility, potential dependencies, or expected return behavior. Although the tool is simple with only one parameter, the description does not provide sufficient context for an agent to fully understand the consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes the 'id' parameter with 100% coverage, stating it is the UUID of the shift_setting to delete. The description adds no extra meaning beyond 'by ID', which is redundant with the schema. Baseline 3 applies due to high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete), the resource (shift_setting), and the method (by ID). This distinguishes it from sibling tools like passgage_get_shift_setting, passgage_create_shift_setting, and passgage_update_shift_setting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied by the tool name and simple sentence, but there is no explicit guidance on when to use this tool versus alternatives, such as updating instead of deleting, or any prerequisites like existing shift_setting IDs. No exclusions or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_slackB
Delete a slack by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the slack to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the delete operation and does not mention whether the delete is permanent, cascading, requires authentication, or returns any confirmation. This is a significant gap for a destructive action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that directly conveys the tool's purpose without any filler. It is appropriately minimal for a simple delete operation with one parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description should explain side effects, permissions, or expected response. It does none of these, leaving the agent to guess whether the delete is a hard or soft delete, if it succeeds silently, and what errors may occur.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the only parameter 'id' as 'The UUID of the slack to delete', giving 100% schema coverage. The description's 'by ID' merely restates this, adding no new meaning or context about the parameter's origin, format constraints, or usage nuances.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a slack by ID' clearly states a specific action (delete) on a specific resource (a slack) using a specific identifier (ID). This distinguishes it from sibling tools like create_slack, update_slack, and get_slack, making it unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives, such as when to update rather than delete, or any prerequisites like required permissions. The usage is implied by the action but no explicit context, exclusions, or alternative references are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_sub_companieA
Delete a sub_companie by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the sub_companie to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must bear the full burden of behavioral disclosure. It states the tool deletes a sub_companie, but does not disclose whether the deletion is permanent, cascading, or requires special permissions. This lack of added context falls short.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, five-word sentence that clearly states the operation. It is appropriately sized and front-loaded with the verb, with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with one well-documented parameter, the description covers the essential information: what is deleted and how to identify it. An output schema is not necessary, and no extra context is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter 'id' with a description that says 'The UUID of the sub_companie to delete'. The tool description adds nothing beyond that, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the imperative verb 'Delete' followed by the specific resource 'sub_companie' and the method 'by ID'. This clearly distinguishes it from sibling tools such as create_sub_companie, update_sub_companie, and get_sub_companie.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates the tool is for deleting a sub_companie when you have its ID, but it does not mention when NOT to use it or suggest alternatives. However, the context is unambiguous given the CRUD naming convention.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_userB
Delete a user by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavioral traits. It only states 'delete' without mentioning irreversibility, cascading effects, permission requirements, or whether it is a hard or soft delete. This is insufficient for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It is front-loaded with the verb and resource, making it extremely concise and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter delete, the description covers the core action. However, it lacks essential context such as whether the deletion is permanent, what the response is, or any side effects. Given no output schema and a minimal schema, this is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides a full description for the only parameter 'id' ('The UUID of the user to delete'), resulting in 100% schema description coverage. The description adds no new semantics beyond re-stating 'by ID', so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and the resource (user), and identifies the parameter (by ID). It is unambiguous, but does not explicitly distinguish from other delete_* sibling tools, though the resource is self-evident from the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor any prerequisites or consequences. The intended usage is only implied by the action 'delete' and the resource 'user'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_user_extra_workB
Delete a user_extra_work by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_extra_work to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only states 'Delete' but does not disclose whether deletion is irreversible, affects related data, requires specific permissions, or returns any confirmation. This is a significant gap for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler. It is appropriately sized for a simple one-parameter delete tool and front-loads the action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no annotations and no output schema, the description is too sparse. It does not mention success/failure behavior, return values, or potential side effects. Even though the tool is simple, the missing information could lead to incorrect invocation or misunderstanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter's description already explains the ID is the UUID of the entity to delete. The tool description simply restates 'by ID' without adding any extra semantic nuance, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Delete') and a specific resource ('user_extra_work') identifiable by ID. It unambiguously distinguishes this tool from sibling CRUD operations like get, create, and update on the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you want to permanently remove a user_extra_work by its ID. However, it gives no explicit context, prerequisites, or alternatives, and does not mention when not to use it (e.g., if the record is referenced elsewhere).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_user_rateB
Delete a user_rate by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_rate to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'Delete,' which implies destruction, but does not specify whether the deletion is permanent, cascading, or requires special permissions. It also doesn't disclose the response format or side effects, leaving critical behavioral traits undocumented.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler or repetition. It efficiently conveys the tool's purpose without wasting tokens, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is mostly complete. It describes the action and the required ID. However, it omits any mention of the return value or confirmation of deletion, which could be useful for an agent to verify success. Still, for a straightforward delete operation, the description covers the essential context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the 'id' parameter as 'The UUID of the user_rate to delete,' achieving 100% schema description coverage. The description's mention of 'by ID' adds little beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a user_rate by ID' clearly states the action (delete), the resource (user_rate), and the method (by ID). It effectively distinguishes itself from sibling tools like get_user_rate, create_user_rate, and update_user_rate, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It merely states the action without mentioning any context, prerequisites, or exclusions. For example, it doesn't clarify whether this should be used instead of update_user_rate for disabling a rate, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_user_shiftB
Delete a user_shift by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_shift to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explicitly states the destructive action ('Delete') but fails to mention irreversibility, cascading effects, permission requirements, or any return behavior. This is minimal transparency for a deletion tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that efficiently conveys the essential action and target. It is well front-loaded and contains no unnecessary words, though it could include more context without significant cost.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with one well-documented parameter, the description is minimally viable. It covers the basic 'what' but lacks any behavioral caveats, usage context, or mention of side effects. Given the absence of annotations and output schema, more detail would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already thoroughly documents the single 'id' parameter with type and description (UUID). The description adds no extra meaning beyond confirming the deletion is by ID. Since schema coverage is 100%, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action (Delete) and the exact resource (user_shift) along with the method (by ID), making the tool's purpose unambiguous. It distinguishes itself from sibling delete tools like delete_user or delete_shift by targeting the user_shift resource directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no context about the deletion process. It only states what the tool does, leaving the agent with no situational cues for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_delete_working_dayB
Delete a working_day by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the working_day to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It simply says 'Delete' without conveying irreversibility, potential cascading effects, auth requirements, or any side effects. The verb implies destruction but lacks explicit warning.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, directly stating the action and target. It contains no filler or redundant information, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter delete tool, the description covers the essential action and resource. However, it omits contextual details like whether the operation is irreversible, what happens if the ID doesn't exist, or any post-deletion effects. Given the simplicity, this is minimally adequate but not richly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents the only parameter 'id' with a clear description. The description's 'by ID' reinforces the schema but adds no additional semantics beyond what the structured data already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete') and the target resource ('working_day') with a specified lookup method ('by ID'). While it doesn't explicitly distinguish from delete operations on other resources, the resource name in the tool name and description makes it unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided regarding when to use this tool versus alternatives (e.g., when not to delete, prerequisites, or recovery options). It only states what it does, not when it should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_export_dataC
Export data in various formats (CSV, JSON, Excel)
| Name | Required | Description | Default |
|---|---|---|---|
| format | Yes | Export format | |
| filters | No | Additional filters to apply | |
| resource | Yes | Resource type to export | |
| date_range | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only says 'Export data'. It does not mention whether the operation is read-only, if it returns a file or URL, requires authentication, or has side effects like generating a server-side file.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of one sentence with no fluff. However, 'Export data' largely restates the tool name, and the value is mainly in listing formats. It's efficient but slightly redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has nested parameters (filters, date_range) and no output schema, the description should explain the output format (e.g., file download, URL) and how filters/date_range affect the result. It provides none of that, leaving the agent with significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all parameters (resource, format, filters, date_range) with descriptions and enums, and schema coverage is high. The description adds no parameter detail beyond what the schema provides, so it meets the baseline with no additional value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the verb 'Export' and specifies output formats (CSV, JSON, Excel), making the core action clear. However, 'data' is vague and doesn't enumerate the resource types; the schema provides this, but the description alone is not fully specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus list/get tools, nor any alternatives, prerequisites, or context. The description is a single declarative sentence with no usage advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_access_zoneB
Get a specific access_zone by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the access_zone to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. However, it only states 'Get a specific access_zone by ID' and provides no details on error behavior (e.g., 404 if not found), return format, pagination, or authentication requirements. For a read operation this is minimal but still lacks transparency expected from a well-described tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that is exact and front-loaded. It contains no filler or redundant information, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with only one parameter and no output schema. The description covers the primary action but fails to mention what is returned (e.g., the full access_zone object), behavior when the ID does not exist, or any required prerequisites. Given the simplicity, this is a borderline adequate description but lacks completeness for an agent that needs to understand the full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage: the 'id' parameter is described as 'The UUID of the access_zone to retrieve.' The description adds no further meaning, but since the schema already provides full parameter documentation, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific access_zone by ID' clearly identifies the action (get), the resource (access_zone), and the specificity (by ID). This distinguishes it from siblings like list_access_zones, create_access_zone, update_access_zone, and delete_access_zone, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus list_access_zones or other retrieval alternatives. No explicit context, prerequisites, or exclusions are given. The presence of list_access_zones among siblings makes this omission noticeable, as a one-sentence mention would have clarified the distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_approvalA
Get a specific approval by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the approval to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. 'Get' implies a read-only safe operation, but the description doesn't mention authentication requirements, error behavior, or return format. For a tool in an authenticated API context, this lack of context is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence, front-loaded with the verb and key details, with no unnecessary information. It is appropriately sized for a simple get-by-ID operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a single well-documented parameter and no output schema, the description is largely complete. It tells the agent exactly what the tool does. It doesn't explain return values, but that is not strictly necessary for a standard get operation, and the schema provides enough context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema documents the single 'id' parameter with a clear description ('The UUID of the approval to retrieve'), achieving 100% schema description coverage. The tool description adds no additional parameter semantics, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific approval by ID' uses a clear verb and resource, and the scope 'specific' with 'by ID' distinguishes it from listing or creating approvals. This is an unambiguous, well-scoped purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific approval by ID' clearly indicates when to use the tool (when you have a known approval ID), distinguishing it from list_approvals. However, it doesn't explicitly mention not to use it for bulk operations or name the list alternative, so it doesn't fully meet the bar for explicit alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_approval_flowA
Get a specific approval_flow by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the approval_flow to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not mention that this is a read-only operation, potential errors (e.g., not found), authentication requirements, or return format. The description only restates the basic action without adding meaningful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence of seven words that directly states the tool's purpose. There is no unnecessary information or repetition, making it highly efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one parameter, no nested objects, no output schema), the description is largely complete for understanding what the tool does. It clearly identifies the action and target resource. However, it lacks any mention of the return value or error behavior, but those are reasonably predictable for a get-by-ID operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the sole parameter 'id' as 'The UUID of the approval_flow to retrieve', providing 100% coverage. The description adds no extra meaning beyond the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Get'), a specific resource ('approval_flow'), and a scope ('by ID'). It distinguishes this from the sibling 'list_approval_flows' and other mutation tools, leaving no ambiguity about the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have an ID and need a single approval flow, but it does not explicitly state when to choose this over alternatives (e.g., list_approval_flows) or provide any exclusions. The usage context is clear but only implied, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_assignment_requestA
Get a specific assignment_request by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the assignment_request to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits by itself. It only states 'Get a specific assignment_request by ID'—the literal function—without noting error behaviors, return format, or permissions. This adds no depth beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the essential purpose without redundancy. Every word is purposeful and no filler exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward read operation with one documented parameter and no output schema, the description provides the essential information. It lacks any nuance like error handling or relationship to related requests, but given the simplicity, it is adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with a clear description for 'id'. The tool description adds no additional parameter semantics; since schema_coverage is high, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action 'Get' and the resource 'assignment_request' with the qualifier 'specific ... by ID', distinguishing it from list or create counterparts. This unambiguously states what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit usage guidance is provided—there are no mentions of when to prefer this over list_assignment_requests or what prerequisite (the ID) is needed. The need for an ID is implied by the schema and description, but the tool description does not articulate selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_auth_modesA
Get available authentication modes and their status
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. While 'Get' implies read-only, the description does not explicitly state that it is a safe read operation, nor does it disclose any authentication requirements, side effects, or rate limits. The description adds minimal behavioral context beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and result. It is efficient and free of extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's core purpose but is thin on return-value specifics. Without an output schema, it would benefit from elaborating what 'status' means (e.g., enabled/disabled, list vs. object) and when to use this tool. It is minimally adequate for a zero-parameter getter but leaves room for clarification.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema confirms an empty object. The description correctly implies no inputs are needed. Since there are no parameters to clarify, the baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is specific with a clear verb ('Get') and resource ('authentication modes'), and it states what will be returned ('their status'). It distinguishes itself from sibling auth tools like login, logout, refresh_token, and auth_status by focusing on listing available modes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as passgage_auth_status or passgage_login. There is no mention of context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_brancheA
Get a specific branche by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the branche to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosure. It accurately indicates a read operation ('Get'), but adds no further behavioral context (e.g., not-found handling, response shape, or auth requirements). It does not contradict annotations since none are provided, but the transparency is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that communicates the core operation efficiently. There is no wasted wording, and every word contributes to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one parameter, no nested objects, no output schema), the description is minimally adequate but lacks some context. It does not mention what the response contains (the full branche object), potential error cases, or that this tool retrieves a single record versus list_branches. The misspelling of 'branche' also adds slight ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full coverage (100%) for the single 'id' parameter with a clear description ('The UUID of the branche to retrieve'). The tool description adds no additional meaning beyond restating the parameter's purpose, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (get) and resource (specific branche by ID), distinguishing it from sibling tools like list_branches, create_branche, update_branche, and delete_branche. The scope is precise: retrieving a single entity by its unique identifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving one specific branche when its ID is known, contrasting with list_branches for retrieving multiple. However, it does not explicitly state when to use this tool over alternatives, nor does it mention any exclusions or context such as required authentication.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_branch_groupA
Get a specific branch_group by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the branch_group to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only says 'Get a specific branch_group by ID'. It does not disclose any additional behavior such as authentication requirements, potential errors, or whether the operation is read-only. While 'Get' implies a safe read, the description adds no transparency beyond the bare action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the verb and resource. It contains zero redundant information and is appropriately concise for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool is a simple get-by-id operation with one parameter and no output schema, the description provides the core purpose. However, it does not mention what is returned (e.g., the full branch_group object) or any error conditions, which would be helpful for an agent with no annotations to rely on. It is minimally complete but has gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single parameter 'id' as 'The UUID of the branch_group to retrieve', giving 100% schema coverage. The description's 'by ID' merely echoes this, adding no new semantic detail. Thus the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific branch_group by ID' clearly states the action (get), the resource (branch_group), and the scope (specific by ID). This distinguishes it from list, create, update, and delete siblings, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'by ID' implies the tool is used when you have a specific branch_group ID and need to retrieve that single record. However, it does not explicitly mention alternatives like 'use list_branch_groups to find IDs' or state when not to use this tool. The usage context is implied but not detailed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_cardA
Get a specific card by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the card to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure, but it only states that it retrieves a card by ID. It does not mention authentication requirements, error behavior if the ID is not found, or what the response contains, so it offers minimal behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the action and resource, with no redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only operation with one well-documented parameter, the description is minimally complete but lacking an output schema or mention of return values/edge cases, so it does not fully cover the agent's needs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully documents the single 'id' parameter as a UUID with 100% coverage. The description's 'by ID' adds no new semantic detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get', names the resource 'card', and scopes it 'by ID', clearly distinguishing it from list_cards and other card operations. It aligns with the CRUD sibling pattern.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you have a specific card ID and need its details, but it does not explicitly mention list_cards as an alternative for retrieving multiple cards or say when not to use it. The guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_dashboard_statsC
Get dashboard statistics and key metrics
| Name | Required | Description | Default |
|---|---|---|---|
| metrics | No | Specific metrics to retrieve (default: all) | |
| date_range | No | Time period for statistics |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It merely says 'get,' implying a read operation, but does not mention side effects, return format, aggregation behavior, or any limitations. This is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence without wasted words. It is appropriately sized, though it lacks structure or enumeration of capabilities.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, so the description should clarify what 'dashboard statistics' entails, return structure, and any prerequisites. It does not, leaving significant gaps for a tool that aggregates metrics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions and enums, so the baseline is 3. The description adds no additional meaning beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Get') and resource ('dashboard statistics and key metrics'). It is distinct from sibling list tools like passgage_list_users or passgage_list_leaves, though 'key metrics' is somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as whether to use it for high-level summaries versus detailed lists. The description lacks contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_departmentB
Get a specific department by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the department to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden of disclosing behavior. The description only states 'Get', which implies read-only, but it does not mention what happens if the ID is not found, whether authentication is required, or what the return value contains. This is a significant transparency gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the purpose without verbosity. It is concise and easy to scan, though it could include a little more contextual detail without becoming bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with no output schema and no annotations, the description should ideally mention the return value, error behavior, or any prerequisites. The current description is too sparse to fully prepare an agent for invocation, especially given the large set of sibling tools and no structured behavioral hints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a complete description of the 'id' parameter ('The UUID of the department to retrieve'), covering 100% of the parameter semantics. The tool description adds no additional meaning, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 ('a specific department by ID'), which distinguishes it from sibling tools like list_departments, create_department, update_department, and delete_department. It is unambiguous and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended usage is implied: use this tool when you need a single department by its ID. However, there is no explicit guidance on when to use this versus other department-related tools, nor any mention of alternatives, so it does not fully clarify the decision context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_deviceB
Get a specific device by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the device to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It merely restates the read operation without mentioning side effects, return format, authentication requirements, or error behavior. The description adds no context beyond what is self-evident.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the verb 'Get', and contains no unnecessary words. It is efficient and immediately understandable, exactly matching the tool's straightforward function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one fully documented parameter and no output schema. The description is minimally adequate but does not mention the return value or any edge cases. For a simple getter, it is just enough, but it could be improved by stating that it returns the device object.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides a complete description of the 'id' parameter, achieving 100% coverage. The tool description itself adds no additional semantics, but since the schema already documents the parameter well, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the specific resource ('a specific device by ID'), which is unambiguous and differentiates it from list devices, create, update, and delete operations. It exactly matches the tool's name and provides a precise scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as passgage_list_devices for enumerating all devices or passgage_get_device for retrieving one. The intended usage is only implied by the name and parameters, not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_entranceA
Get a specific entrance by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the entrance to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the action (get) but does not mention behavior for non-existent IDs, response format, or whether any special access is needed. For a simple read operation, 'get' implies read-only, but the lack of any additional behavioral context is a gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that contains exactly the necessary information. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter get tool without an output schema or annotations, the description is minimally complete. It articulates the core purpose, but given the lack of an output schema, it would be helpful to mention what is returned (e.g., the full entrance object) or error behavior. Still, the tool is simple enough that the description is not severely lacking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of the parameter with a description ('The UUID of the entrance to retrieve'). The tool description adds no extra semantic value beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with the resource 'specific entrance' and the access method 'by ID'. This clearly distinguishes it from list/create/update/delete sibling tools. It is immediately obvious what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the verb 'Get' and the parameter 'id' — an agent would understand to use this when it has a specific entrance ID. However, there is no explicit guidance about when to prefer this over list_entrances or any mention of prerequisites like authentication. This falls at 'implied usage' rather than explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_holidayA
Get a specific holiday by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the holiday to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only restates the action 'get', which implies a read operation, but provides no additional behavioral context such as authentication requirements, error behavior (e.g., 404 if not found), or response format. This is minimal and adds little beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no superfluous words. It efficiently states the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool with one parameter and no output schema, the description is minimally adequate but could mention what the tool returns or any not-found behavior. It does not go beyond the bare essentials.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the id parameter is already described as 'The UUID of the holiday to retrieve'. The description adds no extra meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific holiday by ID' clearly states the verb (get), the resource (holiday), and the scope (specific, by ID). It distinguishes from sibling tools like passgage_list_holidays, which returns multiple holidays, and from create/update/delete variants.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have a specific holiday ID, but it does not explicitly contrast with list_holidays or state when to prefer this tool over alternatives. No exclusions or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_job_positionA
Get a specific job_position by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the job_position to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the transparency burden. 'Get' makes clear this is a read-only retrieval, but it says nothing about not-found behavior, authentication requirements, or return errors. This is adequate for a simple read, but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. Every word is meaningful and immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one fully described parameter, so the description is largely sufficient. However, there is no output schema and no mention of what is returned (e.g., the full job_position object) or behavior for invalid IDs, leaving a minor completeness gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the sole parameter 'id' as the UUID to retrieve (100% coverage). The description adds no extra parameter semantics, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and identifies the exact resource 'job_position' with scope 'by ID'. This clearly differentiates it from list/create/update/delete siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'by ID' implies the tool is for retrieving a single existing record when its UUID is known. However, it does not explicitly say when to prefer this over list_job_positions or mention any prerequisites/exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_leaveA
Get a specific leave by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states 'get' without disclosing behavior such as not-found handling, return format, or authentication requirements. The description adds minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler, front-loading the verb and resource. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter retrieval tool, the description is minimally adequate. However, without an output schema, it does not explain the return value or error behavior, which is a gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage for the single parameter 'id' with a clear description. The description's 'by ID' reinforces but does not add additional semantic value, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific leave by ID' uses a specific verb (get) and resource (leave), clearly indicating it fetches a single leave record by identifier. This distinguishes it from sibling tools like list_leaves and other get_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when you have a leave ID and need that specific record, which is clear context. It does not explicitly mention alternatives or when-not to use it, but the sibling tool list_leaves provides an obvious contrast.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_leave_ruleA
Get a specific leave_rule by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave_rule to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full burden of behavioral disclosure. The verb 'Get' implies a safe read operation, but it does not describe what happens if the ID is invalid, whether authentication is required, or if any side effects occur. It is minimally adequate for a simple getter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is front-loaded and contains zero unnecessary words. It directly states the action and target resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter getter with no output schema, the description is sufficiently complete. It does not explain what a leave_rule is, but that is domain knowledge rather than a functional gap. The tool is well-formed relative to its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the id parameter already documented as 'The UUID of the leave_rule to retrieve.' The description adds no additional meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific leave_rule by ID' uses a specific verb and resource, clearly indicating a single-object retrieval. It distinguishes from the sibling passgage_list_leave_rules by specifying 'specific' and 'by ID'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives, such as passgage_list_leave_rules for fetching multiple records. There is no mention of prerequisites like authentication or when a different getter would be appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_leave_typeA
Get a specific leave_type by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave_type to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. 'Get' implies a read-only operation, which is important, but it does not disclose what happens if the ID is not found (e.g., returns null vs. error) or any authorization implications. The description adds minimal behavioral context beyond what the name and schema already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence that is front-loaded with the verb and resource. Every word earns its place: 'Get a specific leave_type by ID'. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool with one parameter and no output schema, the description adequately covers the essential purpose. It does not explicitly state the return value (the leave_type object), but this is strongly implied by the tool name and action. Given the low complexity, the description is sufficiently complete, though adding a note about the return type or not-found behavior would fully round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'id' parameter, which is clearly described as a UUID. The description does not add any extra meaning about the parameter, so baseline of 3 applies. The tool's simplicity means no additional parameter context is necessary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), the resource (leave_type), and the qualifier (by ID). This distinguishes it from list_leave_types (which retrieves all) and from other get_* tools for different resources. The purpose is immediately unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have a specific leave_type ID and need that record. However, it does not explicitly mention alternatives, such as using list_leave_types for retrieving all leave types, or that this tool should not be used without a valid ID. Sibling context suggests the pattern, but explicit guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_night_workA
Get a specific night_work by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the night_work to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the basic action without mentioning return format, error behavior, or authentication needs, offering little beyond the obvious read-only nature of 'get'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero wasted words. It efficiently communicates the tool's purpose without fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter get-by-ID tool, the description is minimally viable but lacks details about return values or potential errors. Since there is no output schema, the description could be more complete, but the standard 'get by ID' pattern makes it acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – the 'id' parameter is clearly documented as 'The UUID of the night_work to retrieve'. The description reiterates the role of the ID but adds no new semantic value beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('night_work'), and the scope ('by ID'), making it unambiguous and distinct from sibling tools like list_night_works, create_night_work, update_night_work, and delete_night_work.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'by ID' implies a single-record retrieval, but the description does not explicitly mention when to use it over list_night_works or provide alternative tool names. Usage is implied rather than explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_organization_unitA
Get a specific organization_unit by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the organization_unit to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It only says 'Get a specific organization_unit by ID,' which restates the tool's name and offers no details about error behavior (e.g., 404 if not found), response format, or authorization requirements. It adds minimal behavioral context beyond the obvious read intent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently communicates the resource and qualifier. There is no redundant wording, and every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool, the description plus schema covers the essential input. However, without an output schema, the description does not mention that the return value is the organization_unit object or any error conditions, which would make it more complete. It's adequate but leaves gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single 'id' parameter, including its type and purpose ('The UUID of the organization_unit to retrieve'). The description's 'by ID' merely echoes the schema, so it adds no additional semantic meaning beyond the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('a specific organization_unit'), with a qualifier ('by ID') that distinguishes it from list, create, update, and delete siblings. It precisely conveys the tool's scope and differentiates it from similar CRUD tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a clear use case: retrieving a single organization unit when its ID is known. It doesn't explicitly mention alternatives like list_organization_units, but the 'by ID' qualifier clarifies that this is for one specific record, providing clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_payrollB
Get a specific payroll by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the payroll to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states the operation without mentioning return format, error handling, authentication needs, or whether the operation is read-only (though 'get' implies it). No additional behavioral context is given.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler, front-loading the action and object. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool with a complete parameter schema and no output schema, the description is adequate and consistent with sibling get_* tools. However, the lack of any return-value description leaves a minor gap, though the low complexity keeps this from being a major issue.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single id parameter as 'The UUID of the payroll to retrieve', so the description adds no extra semantic value beyond the schema. Given the 100% schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific payroll by ID' uses a specific verb and resource, clearly distinguishing it from list, create, update, and delete payroll sibling tools. The scope 'by ID' makes it unambiguous which operation is performed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as list_payrolls or other get_* tools. Usage is only implied by the presence of an id parameter, with no explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_shiftA
Get a specific shift by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the shift to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only restates the function without disclosing read-only behavior, error responses, or authentication requirements. 'Get' implies retrieval, but lacks explicit behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that directly states the purpose with no filler or redundancy. This is appropriately concise for a simple getter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with one documented parameter and no output schema, the description is mostly complete. It could be improved by mentioning alternatives or return behavior, but it is adequate for basic invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single 'id' parameter with type and meaning ('UUID of the shift to retrieve'), achieving 100% coverage. The description adds no additional parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 'shift', scoped by 'specific' and 'by ID'. This distinguishes it from list_shifts, create_shift, update_shift, and delete_shift.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied: use this when you have a shift ID and need that specific shift, as opposed to listing all shifts. However, the description does not explicitly mention alternatives like passgage_list_shifts or any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_shift_settingA
Get a specific shift_setting by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the shift_setting to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'Get', which implies a read operation, but does not describe what is returned, potential errors (e.g., 404 if not found), authentication requirements, or any side effects. This is a minimal disclosure for a read tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately conveys the core action. No filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one parameter) and full schema coverage, the description is almost adequate. However, with no output schema, the description should clarify what the result looks like (e.g., the full shift_setting object) and possibly any error conditions. This missing return value documentation leaves a gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the single 'id' parameter with a clear description ('The UUID of the shift_setting to retrieve'), so schema coverage is 100%. The description merely restates 'by ID' without adding extra meaning beyond the schema, which keeps it at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a specific shift_setting by ID' clearly states a specific verb (get), resource (shift_setting), and scope (by ID). It distinguishes itself from sibling tools like list_shift_settings, create_shift_setting, update_shift_setting, and delete_shift_setting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than explicitly stated: an agent can infer to use this when it has a shift_setting ID and needs details, but the description provides no explicit when-to-use guidance or mention of alternatives. There are no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_slackA
Get a specific slack by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the slack to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'Get', which implies a read operation, but fails to mention whether authentication is required, what happens if the ID is not found, or that no data is modified. This is a significant gap for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently communicates the tool's core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get operation with one parameter and no output schema, the description is minimally adequate. It tells the agent what the tool does, but does not clarify return format, error behavior, or any special conditions. It is comparable to a basic CRUD get description, which is acceptable but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already describes 'id' as 'The UUID of the slack to retrieve'. The description adds no extra meaning beyond 'by ID', which does not exceed the schema's own documentation. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('slack'), and the scope ('by ID'). It effectively distinguishes this from list_slacks and other get_* tools by specifying that it retrieves a single entity by identifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied: use this when you have a specific slack ID and need the full record. However, there is no explicit guidance on when to choose this over alternatives like list_slacks or search, nor any mention of prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_sub_companieB
Get a specific sub_companie by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the sub_companie to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only states the operation without revealing error handling, return format, authentication needs, or whether a missing ID yields a 404. Minimal additional context beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler or redundant content. It is front-loaded with the verb and resource, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool, the schema covers parameter requirements. However, the lack of usage guidelines and behavioral detail (e.g., return shape) makes it only minimally complete. No output schema exists, so some description of the return would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides a complete description for the id parameter (100% coverage), so the baseline is 3. The description's 'by ID' adds no new semantic information beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and resource 'sub_companie' with method 'by ID', clearly indicating a single-record retrieval. It differentiates from list/create/update/delete siblings through its phrasing, though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus list_sub_companies or other get tools. No context about prerequisites, typical scenarios, or exclusions is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_userA
Get a specific user by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states 'Get a specific user by ID' and does not disclose any behavioral traits such as return format, error handling (e.g., 404 if not found), required permissions, or rate limits. The read-only nature is implied but not elaborated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler or redundant information. It states exactly what the tool does without wasting words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one well-documented parameter) and the obvious behavior of a get-by-ID operation, the description is mostly sufficient. However, without an output schema or behavioral notes, there is slight ambiguity about the return value and edge cases, but for this simple tool it is adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes the single parameter 'id' with the description 'The UUID of the user to retrieve', providing 100% coverage. The tool description adds no additional parameter semantics beyond what the schema already contains, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), the resource (user), and the qualifier (specific user by ID). This distinguishes it from sibling tools like list_users, create_user, and update_user, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear context for use: retrieve an individual user by their ID. However, it does not explicitly mention when not to use it or name alternatives (e.g., use list_users to get all users), but the intent is obvious for a simple CRUD get.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_user_extra_workB
Get a specific user_extra_work by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_extra_work to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden but only states the operation. It does not disclose any behavioral traits such as auth requirements, error responses, or read-only nature beyond the verb 'Get'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that is direct and to the point, with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool, the description communicates the core action, but lacks any mention of return value, error conditions, or usage context, making it minimally sufficient without annotations or output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the single 'id' parameter with type and meaning (UUID). The description adds no additional parameter semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'user_extra_work', and specifies retrieval by ID, distinguishing this from list/create/update/delete siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives, such as listing tools or when the ID is known. No exclusions or alternative tool mentions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_user_rateA
Get a specific user_rate by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_rate to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavior disclosure. 'Get' clearly indicates a read-only retrieval operation, but the description does not explain return format, not-found behavior, or authentication needs, leaving part of the behavior unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no excessive words or repetition. It is concise while still conveying the exact operation and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool, the description is minimally viable, but it does not define what a user_rate represents, describe the response structure, or cover error/edge cases. With no output schema, a bit more context would make it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully covers the single required parameter (id, described as a UUID). The description's 'by ID' adds no new meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Get') and resource ('user_rate') scoped by ID, clearly distinguishing it from sibling tools like list_user_rates, create_user_rate, update_user_rate, and delete_user_rate. Even without defining the domain concept, the core purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific ... by ID' implies use when retrieving a single known user_rate, but the description does not explicitly explain when to use this versus list_user_rates or mention prerequisites such as authentication. The usage context is only implicit, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_user_shiftB
Get a specific user_shift by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_shift to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It only states 'Get' without mentioning any behavioral details such as return format, authentication requirements, or error handling (e.g., 404 if not found). For a safe read operation, this is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that directly states the tool's purpose. It is front-loaded and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter get tool, the description is minimally sufficient but lacks details about expected return value, error behavior, or use context. Given the absence of an output schema and annotations, more context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully describes the single parameter 'id' with its type and meaning, giving 100% coverage. The description adds no additional semantic beyond restating 'by ID', so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), the target resource (a specific user_shift), and the lookup mechanism (by ID). This distinguishes it from sibling tools like passgage_list_user_shifts and passgage_get_shift.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives. The description is purely functional and doesn't mention e.g., using list_user_shifts to find an ID first or what to do if the ID is invalid.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_get_working_dayA
Get a specific working_day by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the working_day to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only says 'Get', which implies a read operation, but does not state the return format, error behavior (e.g., 404 on missing ID), permissions, or any other side effects. For a tool with no annotations, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that directly states the action and target. It is front-loaded, contains no unnecessary words, and is easy to parse quickly. This is an example of concise, effective tool description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only one parameter fully described in the schema and a simple read operation, the description is minimally adequate. However, with no output schema, it would benefit from explicitly stating the return value (e.g., the full working_day object) or error handling. The lack of such detail makes it somewhat incomplete for an agent that needs to handle results correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full coverage for the only parameter 'id' with 'The UUID of the working_day to retrieve'. The description adds no additional parameter semantics, but given the schema description coverage is 100%, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with the resource 'working_day' and the limitation 'by ID', clearly indicating a single-record fetch. This distinguishes it from sibling tools like list_working_days, create_working_day, etc., even though it does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (use when you have a specific ID and need one record) but provides no explicit guidance on when to use this tool versus alternatives like list_working_days. No exclusions or preconditions are stated, leaving the agent to infer from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_access_zonesA
List access_zones with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only mentions 'optional filtering and pagination' and the verb 'List' implies read-only, but it does not explicitly state the operation is non-destructive, or disclose any auth requirements, rate limits, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that immediately conveys the operation. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with a well-documented schema, the description is adequate but lacks context on authentication, return format, or relationship to related access zone endpoints. No output schema or annotations exist, leaving some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, defaults, and an example for filters. The description merely paraphrases 'filtering and pagination' without contributing new semantic detail, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and a clear resource ('access_zones'), and distinguishes this from sibling get/create/update/delete tools by focusing on listing with optional filtering and pagination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving multiple access zones with filters but does not explicitly contrast with get_access_zone or other list tools. It doesn't state when not to use it or mention alternatives, leaving the context implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_approval_flowsA
List approval_flows with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It accurately describes the core action (list with filter/pagination), but does not mention return format, authentication requirements, or other side effects. For a read-only list operation, the transparency is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that states the purpose and key capabilities. No wasted words, properly front-loaded, and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool, the description is minimally complete: it names the resource and the supporting features. However, with no output schema and no annotations, it does not describe the response structure or any pagination metadata, which might leave an agent uncertain about the return shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers all three parameters with descriptions (100% coverage). The description only generically references 'filtering and pagination' without adding syntax or format details beyond the schema, so it meets the baseline but adds no extra semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'List approval_flows' with a specific resource. It also notes optional filtering and pagination, which distinguishes it from single-record retrieval (passgage_get_approval_flow) and from list tools for other resources. The verb+resource combination is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'optional filtering and pagination', giving a sense of when to use the tool (for multi-record listing), but it does not explicitly contrast with alternatives like get_approval_flow for single records. Sibling tool names imply the distinction, but no explicit guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_approvalsA
List approvals with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description carries the full burden of behavioral disclosure. It only states 'List approvals' without mentioning response format, default ordering, or that it is read-only; this adds almost nothing beyond what the name and schema already imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately states the action and resource, and it is front-loaded with the core functionality. There is no unnecessary detail or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested filters object and pagination but no output schema, yet the description does not explain what the response contains or how filters and pagination interact. It is adequate for a simple list operation but leaves the agent without a full picture of the return value and usage nuances.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully documents page, per_page, and filters (including an example for Ransack-style filters), so the description's 'optional filtering and pagination' adds no new semantic detail. With 100% schema coverage, the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with resource 'approvals' and mentions key capabilities (filtering, pagination), which clearly distinguishes it from sibling tools like get_approval (single) and create/update/delete. Even without explicit sibling mention, the action and resource are precise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage as a listing tool but provides no explicit guidance on when to choose it over alternatives, such as using get_approval for a single record, nor any exclusions or prerequisites. The mention of 'optional filtering and pagination' is only a hint, not a guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_assignment_requestsA
List assignment_requests with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavior. It states that the tool lists resources and supports filtering/pagination, but it does not describe return format, pagination details, or side effects. The verb 'List' implies a read operation, but the disclosure is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the core purpose and key capabilities with no wasted words or repetition of schema details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the fully described parameters, the description covers the essential functionality. However, with no output schema or annotations, the lack of response-shape information is a minor gap for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all three parameters (page, per_page, filters) with 100% coverage, including examples for filters. The description's mention of 'filtering and pagination' adds no new meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with the resource 'assignment_requests' and adds 'optional filtering and pagination', clearly distinguishing it from single-item retrieval (get_assignment_request) and mutation tools. It is direct and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes clear this is a collection-list operation with filtering/pagination, which implies when to use it versus single-item or mutation tools. However, it does not explicitly name alternatives or state exclusions, so it falls just short of explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_branchesB
List branches with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It indicates read-only behavior through 'list' and mentions filtering/pagination, but does not disclose the return format, pagination metadata, or potential side effects. No additional behavioral context beyond the schema is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that clearly conveys the purpose without any fluff or redundancy. It is appropriately sized given the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool lacks an output schema and annotations, so the description should explain return values and edge cases. It does not describe the response structure, whether pagination metadata is included, or how to retrieve a single branch. This is a significant gap for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptive definitions, including the Ransack-style filters example and pagination defaults. The description's phrase 'optional filtering and pagination' maps to the parameters but adds no meaning beyond what the schema already provides, meeting the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'List' and the resource 'branches', which is specific and distinguishes it from sibling tools like 'get_branche' (single retrieval) and 'list_branch_groups' (a different resource). The mention of optional filtering and pagination further clarifies the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is used when you need to list branches, potentially with filters or pagination, but provides no explicit guidance on when to use it instead of alternatives like 'get_branche' for a single branch. There are no exclusions or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_branch_groupsA
List branch_groups with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states 'list' with filtering/pagination, disclosing no behavioral context such as authentication needs, return format, or side effects. The read-only nature is implied but not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence, front-loaded with verb and resource, no filler words. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a basic list tool, but lacks response format details and usage caveats. With no output schema and no annotations, a bit more context (e.g., what fields are returned, authentication requirements) would make it more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with descriptions for page, filters, and per_page. The description mentions filtering and pagination but adds no semantic detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses a specific verb 'List' with resource 'branch_groups', clearly distinguishing it from get/create/update/delete counterparts among siblings. It also mentions optional filtering and pagination, which adds scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied for retrieving multiple branch groups, but there is no explicit when-to-use vs alternatives. The resource-specific naming provides context, but no exclusions or alternative guidance are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_cardsB
List cards with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states 'List cards' with filtering/pagination, without mentioning authentication requirements, response format, or side effects. While 'list' implies read-only, the description does not add meaningful transparency beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is direct and front-loaded with the action and resource. Every word earns its place, with no wasted content, making it appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is straightforward, but the absence of an output schema and annotations means the agent must infer return format and any limitations. The description does not mention pagination behavior, response structure, or special cases beyond what the schema provides. Given the many sibling list tools, a bit more detail would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete descriptions for all three parameters (page, filters, per_page) with defaults and examples, achieving 100% coverage. The description adds no additional parameter meaning beyond what the schema already states, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and clearly identifies the resource as 'cards', with optional filtering and pagination scoping the operation. It distinguishes from sibling list tools by resource type and from get_card as a list vs. single retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as get_card or other list_ tools. The description does not mention exclusions, prerequisites, or alternative tools, leaving the agent without context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_departmentsA
List departments with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full behavioral burden, yet it only restates the tool's purpose and schema parameters. It does not disclose auth requirements, default behavior for unfiltered lists, or response structure. 'List' implies read-only, but additional context like 'returns all departments by default' or 'supports Ransack-style filters' is already in the schema, not added by the description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently communicates the core purpose and key capabilities without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool, the description is adequate but minimal. It does not explicitly mention the return value (e.g., an array of department objects) or any prerequisites. The schema covers parameters well, but since there is no output schema and no annotations, the description could have provided more context about expected response or limitations. However, the simplicity of the tool reduces the risk of misuse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (page, filters, per_page each have descriptions), so the schema already documents parameters well. The description mentions 'optional filtering and pagination' but adds no new semantic detail beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'List departments with optional filtering and pagination', using a specific verb ('List') and resource ('departments'). This clearly distinguishes it from sibling tools like get_department (single item) and create/update/delete department operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving multiple departments with optional filters and pagination. It does not explicitly mention alternatives or exclusions, but the naming convention among siblings (get_department for singular) provides clear context for when to use this list tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_devicesC
List devices with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'List devices' and gives no information about side effects, read-only nature, return format, pagination behavior, or any edge cases. This is a significant gap for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise, front-loaded sentence with no wasted words. However, it is perhaps too terse and could have included a bit more context, so it doesn't earn a 5. It is still efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is no output schema, no annotations, and the description is extremely brief, the tool explanation is incompleteness. It does not describe the Ransack filter format (though the schema does), pagination defaults are in the schema, and it provides no insight into return values or special behavior. For a list tool with a sibling set this large, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for all three parameters (page, filters, per_page), so the schema already documents them. The description simply echoes 'optional filtering and pagination' without adding new meaning beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the operation 'List devices' with a specific resource and adds 'optional filtering and pagination', which is clear. However, it doesn't explicitly distinguish itself from the many sibling list_* tools beyond the resource name, so it loses a point for lacking differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives (e.g., get_device for a single device, create/update/delete for mutations). There is no mention of prerequisites, context, or exclusions, so the usage guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_entrancesB
List entrances with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only mentions optional filtering and pagination, which is already present in the schema. It does not disclose response format, default ordering, authentication requirements, or any side effects, leaving the agent under-informed for a tool with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently communicates the core action and options. It is appropriately compact for a simple list tool, though it omits potentially useful context (e.g., response shape). Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 3 parameters, no output schema, and no annotations. The description is minimal and does not explain what an 'entrance' is, what fields are returned, how pagination behaves (e.g., total count), or any filtering syntax nuances. This is insufficient for a tool with no structured output metadata.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; each parameter (page, filters, per_page) is described. The description itself adds no extra meaning beyond what the schema provides, merely restating that filtering and pagination are optional. Therefore, it meets the baseline of 3 but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('entrances'), which distinguishes it from sibling tools like passgage_get_entrance. The phrase 'with optional filtering and pagination' adds scope and functional detail. This is a specific and clear purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool—when you need to list multiple entrances—by contrasting with the singular 'get_entrance'. However, it does not explicitly state when not to use it or mention alternatives. The usage context is merely implied, not explicitly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_holidaysC
List holidays with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavioral traits, but it only repeats schema capabilities. It does not mention response format, sorting behavior, default pagination limits (though schema does), side effects, or any other operational details beyond the literal list action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that concisely conveys the core action and two key optional features. It is appropriately sized for a simple list operation and contains no fluff or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward list tool with a fully documented input schema and no output schema, the description is minimally adequate. It provides the essential purpose but omits potential context like the nature of holidays, default sorting, or mention of related get_holiday for single-item retrieval, which would aid an agent in selecting and invoking the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (page, filters, per_page) having explicit descriptions. The tool description adds only 'optional filtering and pagination', which is a high-level summary of the schema but not new semantic detail. This aligns with the baseline of 3 for well-documented schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List holidays' with an explicit verb and resource, and additionally mentions optional filtering and pagination, which are key behaviors. However, it does not distinguish this tool from other list_* tools or the related get_holiday tool beyond the resource name, so it lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as get_holiday for a single holiday or create/update/delete for mutations. The description only mentions features (filtering, pagination) without explaining suitable contexts or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_job_positionsA
List job_positions with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the read-only nature via 'List' and mentions filtering/pagination, but does not describe return structure or any potential side effects, auth, or edge cases. This is adequate but adds little beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-structured sentence that front-loads the verb and resource, mentions both key capabilities (filtering, pagination), and contains no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and full schema coverage, the description is mostly complete; however, with no output schema it does not specify the response format, though 'list' implies an array of job_positions. It is adequate for selection but could benefit from a note on default behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description's mention of 'filtering and pagination' maps to the filters and page/per_page parameters, but it does not provide additional semantic detail beyond what the schema descriptions already offer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with the resource 'job_positions', clearly identifying it as the collection-retrieval counterpart to get_job_position among the sibling tools. 'Optional filtering and pagination' further clarifies its behavior, though it doesn't explicitly contrast with get_job_position.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fetching multiple job_positions with optional filters, but does not explicitly state when to use this tool over get_job_position or other list tools. No exclusions or alternatives are named, so guidance is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_leave_rulesA
List leave_rules with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It accurately indicates a read-only listing operation with optional filtering and pagination, but it does not disclose details such as response format, default sort order, or authentication requirements. The behavior is transparent at a basic level but not richly described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that communicates the essential action and two key modifiers. Every word earns its place, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with a well-documented schema, the description is minimally sufficient. However, there is no output schema and no annotation coverage, so the description could have provided more context about what is returned, typical usage, or limits beyond the schema. It remains adequate but sparse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides complete descriptions for all three parameters, including examples for filters and bounds for pagination. The description only generically mentions 'filtering and pagination' and adds no meaning beyond what the schema already provides, matching the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('leave_rules'), and mentions optional filtering and pagination. It differentiates from sibling get/create/update/delete tools by indicating a list operation, though it doesn't elaborate on what leave_rules are or how this list differs from other list_* tools beyond the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need to list multiple leave_rules and mentions filtering/pagination, but it does not explicitly say when to use this tool instead of get_leave_rule or other alternatives. No exclusion criteria or alternative tools are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_leavesB
List leaves with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It only reiterates filtering and pagination, which are already documented in the schema, and does not disclose anything about the return format, default behavior, or any side effects. The read-only nature is implied by the word 'List' but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant or unnecessary wording. It efficiently conveys the core purpose and key capabilities.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with three optional parameters, the description is minimally viable: it states the action and key options. However, with no output schema and no annotations, it lacks useful context such as what a 'leave' is, what the response contains, or any usage guidance among the many sibling list tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters (page, filters, per_page) already described in the input schema. The description adds no parameter-level meaning beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'List' and resource 'leaves' clearly identify the operation, and 'with optional filtering and pagination' adds scope. However, it does not explicitly distinguish itself from sibling tools like passgage_get_leave or passgage_list_leave_types beyond the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as passgage_get_leave for a single leave or passgage_search for broader search. The description only states the action without any context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_leave_typesA
List leave_types with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. It only states the action and options, without mentioning read-only nature, authorization requirements, or return format. This is minimal disclosure for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It efficiently communicates the core purpose and features.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation, the description covers the core functionality, but with no output schema, it does not explicitly describe the return structure. The schema covers pagination and filter format, so it is adequately complete but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all three parameters with details (page, filters, per_page) and default values, so the description adds no additional parameter semantics. Baseline 3 applies due to 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and the resource 'leave_types', clearly distinguishing it from singular get_leave_type and other list_* tools. It also mentions optional filtering and pagination, which are key features.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives like passgage_get_leave_type or passgage_list_leaves. However, the name and phrasing imply it is for fetching multiple leave type records, so usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_night_worksA
List night_works with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden for behavioral disclosure. It only mentions filtering and pagination, which is already apparent from the schema, and does not disclose response format, default behaviors, error handling, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that communicates the core purpose and key capabilities. There is zero redundancy or wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a straightforward list operation with well-documented parameters, so the description is minimally adequate. However, there is no output schema, and the description does not clarify what the response contains, which is a gap for a listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter (page, filters, per_page) has a clear description in the schema. The tool description adds no meaningful semantic value beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List') and resource ('night_works'), and clarifies it supports optional filtering and pagination. It clearly distinguishes this collection operation from the sibling 'get_night_work' tool by indicating a list-style endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that the tool is used for listing night works with filters and paging, but it provides no explicit guidance on when to choose this over similar list tools or when not to use it. Usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_organization_unitsC
List organization_units with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for disclosing behavior. It only says 'optional filtering and pagination', but does not describe pagination defaults, response structure, whether the operation is read-only, or any side effects. This is a significant transparency gap for a tool that could have hidden behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant wording. It front-loads the verb and resource, then adds the key capabilities. It could be slightly more informative, but it is appropriately sized for a simple list operation and avoids fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should explain what the response looks like or clarify the behavior beyond the schema. It does neither. The tool has nested objects in the schema, adding complexity, yet the description does not address return values or any edge cases. The context is incomplete for an agent to fully understand what to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema describes all three parameters with 100% coverage, so the baseline is 3. The description adds minimal value by mentioning 'filtering and pagination' generically, but does not clarify the meaning of the 'filters' object or the exact pagination limits beyond what the schema already states. Schema carries the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'organization_units', making the tool's purpose obvious. It distinguishes from the singular 'get' variant by the plural form, but does not explicitly compare to sibling list tools. The mention of filtering and pagination hints at the scope, but it lacks an explicit differentiation statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention that this is for listing multiple organization units vs. fetching a single one, nor does it state any exclusions or scenarios where another tool would be more appropriate. The only context is the resource name, which is implied but not explicitly contrasted.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_payrollsB
List payrolls with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry the burden of behavioral transparency. It only mentions optional filtering and pagination, which is already reflected in the schema. It does not describe response format, authentication requirements, defaults beyond schema, or any side effects. This is a significant gap for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, immediately states the action, and contains no redundant information. It is efficiently front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description should provide more context about what the tool returns or how to interpret the results. It does not, and the only behavioral details are generic. For a list endpoint, this is minimal but insufficient for fully autonomous use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters are documented in the schema with descriptions and constraints. The description's reference to filtering and pagination aligns with the schema but adds no additional semantics beyond what is already present, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists payrolls, which distinguishes it from sibling tools like passgage_get_payroll or passgage_create_payroll. The mention of filtering and pagination adds useful scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving payroll records, but does not explicitly state when to prefer this over related tools, nor does it provide alternative tool references or exclusions. The 'optional' nature of filtering is noted but not elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_shiftsB
List shifts with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only restates the basic operation and optional parameters, without mentioning auth requirements, default sorting, pagination behavior beyond parameters, or return format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 6-word sentence, front-loaded and completely free of filler. It is appropriately concise for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the well-described schema and simple list semantics, the description is minimally adequate. However, without an output schema, it does not indicate what the response contains or how it differs from other list tools, which could affect completeness in a tool-rich environment.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of parameters, including the Ransack-style filter example and pagination limits, so the baseline is 3. The tool description adds no extra semantic value beyond repeating that filtering and pagination are optional.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists shifts with optional filtering and pagination, using a specific verb and resource. It does not explicitly distinguish from sibling tools like list_user_shifts or list_shift_settings, but the name itself is fairly specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. It does not mention that get_shift is for individual shifts or that list_user_shifts covers a different resource, 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.
passgage_list_shift_settingsC
List shift_settings with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure. It only states the basic list functionality and optional filtering/pagination, but omits details like whether results are read-only, default ordering, response structure, or any side effects. Since filtering is Ransack-style, some syntax is in the schema, but the description adds no additional behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficiently front-loaded sentence that states the core action and key options. It contains no filler or redundant content, achieving maximum conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has nested filter objects, variable pagination, and no output schema, the description is notably underspecified. It does not explain what fields shift_settings contain, how filters should be structured (beyond schema), or what the response shape is. For a parameterized list tool, more context is needed for an agent to use it correctly without additional inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are fully documented in the schema. The description's mention of 'optional filtering and pagination' adds no new meaning beyond the schema's parameter descriptions. The Ransack-style filter example is already present in the schema, so no compensation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists shift_settings, which identifies the specific resource and action. It is distinct from sibling tools like get_shift_setting (singular) and create/update/delete variants, though it does not explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that get_shift_setting should be used for a single record, nor clarify any prerequisites or conditions. No exclusions or alternatives are noted.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_slacksB
List slacks with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden of behavioral disclosure. It only states the basic action and mentions optional filtering/pagination, but does not disclose return format, authentication needs, rate limits, or clarify the ambiguous term 'slacks'. The safe read-only nature is implied but not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly communicates the core function and key features. It contains no wasted words and is easily scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with 3 parameters and good schema coverage, the description is minimally adequate. However, with no output schema and no annotations, it lacks information about the response structure or the meaning of 'slacks', leaving some gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers 100% of parameters with descriptions, including an example for filters. The description adds a brief mention of 'optional filtering and pagination', but provides no additional meaning beyond what the schema already conveys, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('List slacks') and resource, adding scope with 'optional filtering and pagination'. This distinguishes it from other resource-specific list tools, though it doesn't elaborate on what 'slacks' represents beyond the name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of exclusions, prerequisites, or comparison to related tools like get_slack or other list_* tools, leaving the agent to infer based on the resource name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_sub_companiesC
List sub_companies with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It implies a read-only list operation but doesn't explicitly state safety, authentication requirements, or side effects. It also doesn't mention default/return behavior beyond the schema hints for pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the core purpose with no unnecessary words. It is appropriately sized given the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too sparse for the context: no output schema, no annotations, and a nested filters object. It doesn't describe return values, default pagination, or error conditions. More behavioral and output context would be needed for an agent to use it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%—all parameters (page, filters, per_page) have descriptions. The description's mention of 'optional filtering and pagination' adds no new semantic meaning over the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List), the resource (sub_companies), and the optional features (filtering and pagination), which distinguishes it from the singular get_sub_companie tool. It is specific enough to be useful, though it doesn't elaborate on semantics like whether it lists all sub_companies in the current context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool instead of alternatives like get_sub_companie or other list_* tools. The description only mentions optional filtering and pagination, leaving the usage context entirely implicit. There are no exclusions or references to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_user_extra_worksA
List user_extra_works with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions optional filtering and pagination, which gives some behavioral context, but it does not disclose auth needs, response format, or potential side effects. Since 'list' implies a read-only operation, this is minimally acceptable but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the essential information without any fluff. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with a simple schema, the description is adequate but not complete. It does not explain what user_extra_works are, what the response contains (no output schema), or any filtering specifics beyond the schema. Given the complexity of the nested filters object, more context would help, but the schema partially compensates.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides detailed descriptions for all three parameters, achieving 100% schema description coverage. The description adds no new meaning beyond 'optional filtering and pagination', which is redundant with the schema. Therefore, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'List user_extra_works'. It uses a specific verb and resource, and adds scope by mentioning optional filtering and pagination. This distinguishes it from sibling tools like get/create/update/delete for the same resource and other list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for listing user_extra_works, but it does not explicitly state when to use this vs alternatives (e.g., get for a single record, or other list tools). No exclusions or alternative tool references are provided, so the usage context is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_user_ratesA
List user_rates with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral transparency burden. 'List' implies a read-only operation, and mentioning filtering and pagination adds some context. However, it does not disclose response format, authorization requirements, or any potential quirks, leaving gaps for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the action and resource. Every word is meaningful, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description does not explain what the response contains or its structure. It covers the core action but lacks detail on return format, filter capabilities, or pagination behavior, making it adequate but not fully complete for a tool with nested objects and no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully explains page, filters, and per_page. The description mentions filtering and pagination but adds no additional meaning beyond what the schema provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'user_rates', making the tool's purpose unmistakable. It also mentions optional filtering and pagination, which distinguishes it from other user_rate tools like get_user_rate, create_user_rate, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving multiple user_rate records, but it does not explicitly specify when to use this versus get_user_rate for a single record. There is no exclusions or alternatives mentioned, so usage is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_usersA
List users with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the action and optional parameters. It does not disclose authentication requirements, response format, ordering, or any side effects, placing full burden on the description, which falls short.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant words, front-loaded with 'List users' and immediately clarifying the optional features. It is maximally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is adequate for a simple list tool but does not explain return format, sorting, or any constraints beyond pagination. It is a minimal viable description for a straightforward CRUD operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents all three parameters, but the description adds the semantic that filtering and pagination are optional, which is not explicitly stated in the property descriptions. This adds value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('users'), and clearly states 'optional filtering and pagination', making it unambiguous and distinct from sibling tools like get_user, create_user, and search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the tool for listing users with optional filtering and pagination, but it does not explicitly name alternatives or when-not-to-use scenarios. The guidance is implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_user_shiftsB
List user_shifts with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full responsibility for behavioral disclosure. It only mentions 'optional filtering and pagination', which is more about features than behavior. It does not explicitly state that this is a read-only operation, nor does it describe return format or side effects, leaving a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the verb and resource, then briefly notes the key features. Every word earns its place, and there is no unnecessary repetition or verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal but adequate for a simple list operation. However, without annotations or an output schema, it leaves some gaps: it doesn't clarify what a 'user_shift' is, nor does it describe the returned data structure. Given the similar pattern across sibling list tools, the description is technically sufficient but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides complete descriptions for all three parameters (page, filters, per_page), so the baseline is 3. The description's mention of 'optional filtering and pagination' merely echoes the schema without adding meaningful new semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the verb 'List' and the resource 'user_shifts', making its core purpose evident. However, it does not explicitly distinguish this tool from sibling tools like 'list_shifts' or 'list_users', which could lead to confusion about the exact scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing user shifts, but it provides no explicit guidance on when to use this tool versus alternatives. There are no stated contexts, prerequisites, or exclusions to help the agent choose correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_list_working_daysB
List working_days with optional filtering and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| filters | No | Ransack-style filters (e.g., {"name_cont": "test", "is_active_eq": true}) | |
| per_page | No | Number of items per page (max: 50, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It says 'List', which implies a read-only operation, but it does not disclose any non-obvious behavior such as default sorting, whether all items are returned by default, or any dependency on company/user mode. The description adds little beyond the action itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that immediately states the operation and key options. There is no redundant wording, making it appropriately concise for a simple list endpoint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a basic paginated list tool with well-documented parameters, the description is minimally sufficient. However, since there is no output schema and many sibling tools exist in different contexts (e.g., company/user mode), the description could have mentioned return format or context dependencies to be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for each parameter, including Ransack-style filters and pagination defaults. The description merely restates that filtering and pagination are optional, adding no additional semantic value beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'List' and the resource 'working_days', making it easy to distinguish from get/create/update/delete operations on the same resource. However, it does not differentiate it from other list_* sibling tools beyond the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives such as passgage_get_working_day for a single record or passgage_search for more complex queries. The mention of 'optional filtering and pagination' implies a browsing use case, but no when-to-use or when-not-to-use advice is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_loginA
Login to Passgage API with email and password to get JWT token
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | User email address | ||
| password | Yes | User password |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It states that login returns a JWT token but does not mention failure behavior, token storage, session side effects, or security considerations. This is a notable gap for an authentication tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is direct and front-loaded, conveying the essential action and purpose without wasting words. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple authentication tool with two well-described parameters and no output schema, the description provides the core information needed for basic usage. However, it lacks guidance on error responses or next steps, which would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear property descriptions ('User email address', 'User password'). The description simply repeats the parameter names without adding syntax or formatting details, so it does not exceed the baseline value provided by the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Login', the resource 'Passgage API', the method (email and password), and the outcome (get JWT token). This distinguishes it from sibling tools like passgage_refresh_token and passgage_logout, which handle different auth lifecycle stages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage as the entry point for authentication but does not explicitly state when to use it versus alternatives like refresh_token or auth_status. No exclusionary guidance is provided, leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_logoutA
Logout from Passgage API and invalidate the current session
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses that the current session is invalidated, which is a key behavioral effect. However, it does not mention edge cases like repeated logout, error handling, or impact on subsequent API calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundancy. It immediately conveys the tool's purpose and effect without extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (no parameters, no output schema), the description adequately covers essential information. It could explicitly note that re-authentication is needed after logout, but this is implied by the term 'logout'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is trivially complete. There is no parameter information to convey, and with no parameters to document, a baseline score of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (logout) and the object (Passgage API session), and specifies the effect of invalidating the current session. It distinguishes itself from sibling auth tools like passgage_login or passgage_refresh_token by explicitly naming the logout operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives such as refresh_token or login. The purpose implies usage for ending a session, but no explicit when/when-not scenarios are described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_refresh_tokenA
Refresh the current JWT token to extend its validity
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides minimal behavioral disclosure beyond the tool's name. It states that the token's validity is extended, but it does not mention whether the old token is invalidated, whether authentication is required, what the response format is, or any side effects. With no annotations, the description carries the full burden and fails to address these aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded. Every word contributes meaning, and there is no redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple token refresh operation with no parameters or output schema, the description conveys the core action and result. However, it omits details about the return value (e.g., the new token or expiry time) and any edge cases (e.g., what happens if the token is already expired). Given the low complexity, this is a minor gap, but the description could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is empty. The description adds meaning by specifying that the operation applies to the 'current JWT token', clarifying that the token is implicitly obtained from the session context rather than supplied as a parameter. This is valuable context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states an action 'Refresh the current JWT token' with a specific goal 'to extend its validity'. It uses a specific verb and resource, and it is distinct from sibling tools like passgage_login and passgage_logout, which handle authentication lifecycle differently.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'to extend its validity' implies usage when the current token's validity needs to be prolonged, giving some context. However, it does not explicitly state when to use this tool versus alternatives such as passgage_login or passgage_logout, nor does it provide exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_searchC
Universal search across multiple Passgage resources
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results per resource type (max: 25) | |
| query | Yes | Search term to look for | |
| resources | No | List of resources to search in (default: all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description gives no behavioral details beyond the basic action of searching. With no annotations provided, the description carries the full burden, but it does not disclose whether the search is read-only, how results are grouped, whether pagination is used, or any authentication requirements. For a tool named 'search' it's safe to infer read-only, but that is an assumption, not transparent disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It effectively communicates the core purpose in a compact form, aligning with the conciseness rubric.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and annotations, the description should clarify what the response looks like (e.g., grouped by resource, result counts, pagination). The one-sentence description leaves these aspects unaddressed, making it insufficiently complete for an agent to anticipate the tool's full behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for all three parameters, including the default behavior of 'resources' (default: all). The description adds no additional parameter semantics beyond what the schema already explains, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Universal search across multiple Passgage resources' clearly identifies the tool as a search operation spanning multiple resource types. It distinguishes itself from the many resource-specific list/get siblings, but could be more explicit about which resources are included.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the many list/get siblings. Since the sibling list contains tools like passgage_list_users and passgage_get_user, it would be helpful to mention that this search is for cross-resource queries, but the description omits any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_set_company_modeB
Switch to company API key authentication mode
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes | Company API key for authentication |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not mention side effects, prerequisites (e.g., existing session), or whether the switch is reversible, which are important for a mode-switching operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently states the purpose without redundant words. Every word earns its place, making it concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It does not explain what happens after switching (e.g., return value, error conditions, persistence), leaving the agent without essential context for a state-changing operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes api_key as 'Company API key for authentication' with 100% coverage. The description adds no additional meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Switch to company API key authentication mode' clearly specifies the action (switch) and the resource (company API key authentication mode), distinguishing it from the sibling 'passgage_switch_to_user_mode' and other auth tools. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like passgage_switch_to_user_mode or passgage_get_auth_modes. It only states what the tool does, not the context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_switch_to_company_modeB
Switch to company API key authentication mode (requires previous API key setup)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavior. It states the action and a prerequisite, but does not disclose what 'switching to company mode' actually does (e.g., changes the API key used for subsequent requests, affects authentication state), nor what happens if the prerequisite is not met. Significant behavioral details are missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the purpose and a key prerequisite. There is no wasted wording, and the structure is perfectly efficient for a zero-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (no params, no output schema), so the description covers the basic functionality and a prerequisite. However, it does not explain what 'company mode' entails, the effect of switching, or how it differs from the sibling 'passgage_set_company_mode'. Given the large sibling list and the existence of a similarly named tool, the description is not fully complete for an agent to select and invoke it correctly without confusion.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is empty with 100% coverage. Per the rubric, the baseline is 4 since there are no parameters for the description to explain. The description doesn't need to add parameter semantics, and it appropriately doesn't introduce any.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Switch to company API key authentication mode') and resource (authentication mode). It also adds a prerequisite ('requires previous API key setup'), which clarifies the action. However, it does not explicitly differentiate from the very similar sibling tool 'passgage_set_company_mode', so there is some ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a key condition for use ('requires previous API key setup'), implying this tool should be used only after that setup. However, it does not mention any alternatives or explicitly state when to use this vs. the sibling 'passgage_set_company_mode' or 'passgage_switch_to_user_mode'. Usage context is only partially implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_switch_to_user_modeA
Switch to user JWT authentication mode (requires previous user login)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states a prerequisite but does not reveal behavior when the prerequisite is unmet (e.g., error, no-op), whether a switch invalidates existing auth state, or other side effects. This is too sparse for a state-changing operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently conveys both the action and the key prerequisite.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with no parameters or output schema, but the description lacks details about failure modes or exact state changes. It communicates the core function but not enough for an agent to predict behavior when prerequisites are unmet. Given the low complexity, it is minimally viable but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema provides no semantic detail. The baseline for 0 params is 4, and the description does not need to compensate for missing parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Switch' and identifies the resource as 'user JWT authentication mode,' clearly distinguishing it from the sibling 'passgage_switch_to_company_mode'. It also adds a prerequisite (requires previous user login), enhancing clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by stating a prerequisite (requires previous user login) but does not explicitly contrast with alternatives like switching to company mode or specify when not to use it. The mode-switching context gives some implied guidance, but no explicit when/when-not or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_track_entranceC
Record an entrance/exit event for a user
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | UUID of the user | |
| device_id | Yes | UUID of the device recording the entrance | |
| timestamp | No | Timestamp of the entrance (ISO 8601 format) | |
| entrance_type | Yes | Type of entrance event |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full transparency burden. It discloses only the basic action and omits behavioral details such as whether events are append-only, whether duplicate events are prevented, or what response is returned. The single sentence adds no meaningful behavioral context beyond the verb 'record'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with the verb front-loaded. It is concise and free of filler, though it provides no structured additional context because it contains none.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a small parameter set with complete schema descriptions and an enum for entrance_type, which reduces the burden on the description. However, with no annotations and no output schema, the one-line description does not explain return values, idempotency, or the relationship to the similar create_entrance sibling, leaving it moderately incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters have detailed descriptions in the input schema (100% coverage), so the baseline is 3. The description adds no additional parameter semantics; it neither clarifies relationships between parameters nor provides usage notes that the schema does not already offer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Record an entrance/exit event for a user' uses a specific verb ('record') and identifies the resource (entrance/exit events) and target (a user). It clearly conveys the core action but does not distinguish this from the similar sibling passgage_create_entrance, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as passgage_create_entrance or the entrance list/get tools. There are no usage contexts, prerequisites, or exclusions stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_access_zoneC
Update an existing access_zone
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the access_zone to update | |
| data | Yes | The data for updating the access_zone |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It simply says 'Update an existing access_zone' with no mention of partial vs. full update, idempotency, required permissions, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence with zero wasted words. It is front-loaded and to the point, but it is so concise that it sacrifices detail, preventing a perfect score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that it is a mutation tool with no annotations and no output schema, the description is too thin. It does not explain what happens on success/failure, how the data object maps to fields, or any return value, leaving the agent under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers both parameters with descriptions, so the 100% coverage sets a baseline of 3. The description adds no additional parameter meaning beyond the schema, especially for the 'data' object which has additionalProperties true.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and resource ('access_zone'), and the word 'existing' distinguishes it from creation. However, it does not explicitly differentiate from other CRUD siblings beyond the verb, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like create or delete access_zone. The description gives no context about prerequisites, typical scenarios, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_approvalC
Update an existing approval
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the approval to update | |
| data | Yes | The data for updating the approval |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavioral traits. It indicates a mutation operation but does not mention permissions, reversibility, side effects, validation behavior, or whether the update is partial or replaces the entire object. The open-ended 'data' parameter adds to the uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, 'Update an existing approval', which is extremely concise and front-loads the core purpose. Every word earns its place, and there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an open-ended 'data' object parameter, no output schema, and no annotations. The description does not explain what fields are accepted, whether the update is partial, what the response looks like, or how it differs from approval-specific tools. This is insufficient for an agent to use the tool correctly in complex scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with descriptions for both 'id' and 'data', so the baseline is 3. However, the description adds no extra meaning beyond the schema, and the 'data' parameter is described vaguely as 'The data for updating the approval' with additionalProperties allowed, leaving its structure highly ambiguous. The tool description does not compensate for this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and the resource ('an existing approval'), which is specific and understandable. However, it does not differentiate from the sibling tool 'passgage_approve_request', which might also modify approval state, leaving some ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 approve_request or bulk_approve. The description does not mention context, prerequisites, 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.
passgage_update_approval_flowC
Update an existing approval_flow
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the approval_flow to update | |
| data | Yes | The data for updating the approval_flow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'update' with no mention of whether the update is a partial patch or full replacement, whether it is reversible, what side effects occur, or what the response contains. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short, which is concise, but it is under-specified. It is essentially a tautology of the tool name and provides no additional structure or useful detail. This is under-specification rather than effective conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested data object, no output schema, and no annotations, yet the description offers no information about update semantics, allowed fields in the data object, or return values. Given the complexity and absence of structured context, this description is completely inadequate for an AI agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, as both parameters (id and data) have descriptions in the schema. The tool description adds no extra meaning beyond the schema; the baseline of 3 is appropriate since the schema handles the parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and the resource ('existing approval_flow'), which distinguishes it from create/delete/get variants. It is specific enough to identify the tool's purpose, though it lacks additional scoping details like which fields can be updated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as when a partial update is appropriate or if specific authorization is required. The description merely states what it does, leaving usage context entirely implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_assignment_requestB
Update an existing assignment_request
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the assignment_request to update | |
| data | Yes | The data for updating the assignment_request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden of disclosing behavior, but it only uses the generic verb 'Update' with no further detail. It does not clarify whether this is a partial or full update, whether it validates input, or what side effects occur, leaving important behavioral traits undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero filler. It conveys the essential purpose in five words, and every word earns its place. This is highly concise and well-structured, even if overly sparse in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description is too thin for an update tool with a permissive 'data' object (additionalProperties: true). It does not explain update semantics (e.g., partial vs full replacement), how nested data is handled, or what constitutes a valid update, making it incomplete for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters with 100% coverage, so the schema does the heavy lifting. The description itself adds no additional meaning about the 'data' object structure or allowed fields, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'assignment_request', making it obvious what the tool does. This distinguishes it from sibling tools like create, delete, get, and list for the same resource, achieving a specific and unambiguous purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no prerequisites mentioned, and no exclusions. The description simply says 'Update an existing assignment_request' without any context about when an update is appropriate or how it differs from other related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_brancheC
Update an existing branche
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the branche to update | |
| data | Yes | The data for updating the branche |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly indicates a mutation ('Update') but gives no details about whether the update is partial or full, any authentication requirements, side effects, or what the return value will be.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the action, but it is so sparse that it fails to provide useful context beyond the tool name. It is not unnecessarily verbose, but it also does not earn high marks because it omits substantive details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an update tool with no annotations, no output schema, and an open 'data' object, the description is incomplete. It does not mention required permissions, validation behavior, partial update semantics, or how the response should be interpreted, making it insufficient for an agent to use confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes both parameters: 'id' as the UUID and 'data' as the update data. However, the description adds no extra meaning, and the 'data' object is open-ended with additionalProperties true, leaving the actual updateable fields unspecified. Since schema coverage is 100%, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the action ('Update') and the resource ('existing branche'), making the tool's purpose clear at a basic level. However, it does not specify what fields or aspects of a branche can be updated, and it is not sharply differentiated from the many sibling update tools beyond the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives such as create_branche or delete_branche. The phrase 'existing branche' implies the target must already exist, but there is no explicit context, prerequisites, or exclusion information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_branch_groupB
Update an existing branch_group
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the branch_group to update | |
| data | Yes | The data for updating the branch_group |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral disclosure burden. It only conveys that the tool performs an update (a mutation), but provides no information about response format, side effects, idempotency, or required permissions. This is minimal and does not go beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence clearly communicates the core purpose with no unnecessary words. It is highly front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter update tool with no output schema and no annotations, the description is too thin. It does not explain what fields 'data' can contain (especially since additionalProperties is true), what a successful update returns, or any prerequisites beyond 'existing', leaving significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters id and data already have descriptions. The tool description adds no additional meaning beyond that baseline, so a 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing branch_group' clearly states the verb (update) and resource (branch_group), distinguishing it from sibling tools like create_branch_group, get_branch_group, delete_branch_group, and update_branche.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The use of 'existing' implies you should only call this on a branch_group that already exists, and that creation would be a different tool. However, it does not explicitly mention alternatives or when not to use it, so the guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_cardC
Update an existing card
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the card to update | |
| data | Yes | The data for updating the card |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It only says 'update an existing card' and fails to mention whether the update is partial or full, permissions required, validation, or side effects. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It is front-loaded and efficient, though it could include more detail while remaining concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a vague 'data' object, the description is incomplete. It doesn't clarify the update behavior or the shape of the data parameter, leaving too much to the agent's interpretation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% description coverage for both id and data. The description adds no additional parameter semantics, so it earns the baseline score without compensating for any gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates a card, using a specific verb and resource. Mentioning 'existing' differentiates from create_card, but it doesn't explicitly distinguish from other update tools. Overall, the purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like create_card or delete_card. There's no mention of prerequisites or typical use cases, leaving the agent without context for choosing this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_departmentC
Update an existing department
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the department to update | |
| data | Yes | The data for updating the department |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for disclosing behavioral traits. It merely states 'update' without revealing whether the update is partial or full replacement, any side effects, required permissions, or how the data object is processed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence that is front-loaded and contains no unnecessary words. It is appropriately concise for the minimal information it conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a mutation operation with a nested object parameter and no output schema. The description provides no context about what fields are updatable, the update semantics (e.g., PATCH vs PUT), or the expected response. This is severely under-specified for an agent to understand the tool's full behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters (id and data) with 100% coverage, so the baseline is 3. The description adds no extra meaning about these parameters, but given schema coverage is high, it does not need to compensate significantly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing department' clearly states the operation (update) and the resource (department). It immediately conveys the tool's purpose, and the word 'existing' distinguishes it from creation. However, it does not differentiate from sibling update tools (e.g., update_user, update_card) or specify what aspects of a department can be updated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or context. It only states the action, 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.
passgage_update_deviceC
Update an existing device
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the device to update | |
| data | Yes | The data for updating the device |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. 'Update an existing device' implies a mutation but does not explain whether updates merge or replace fields, what happens if the id does not exist, permission requirements, or the response format. This is a significant gap for an update operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded and directly to the point. It contains no fluff or redundant information, making it optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is too sparse. It does not mention return values, error scenarios, partial update behavior, or any domain-specific context about device properties. This is incomplete for a tool that accepts an arbitrary data object, requiring the agent to guess at expected fields and behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters (id and data), achieving 100% schema coverage, so the baseline is 3. However, the 'data' parameter is an open-ended object with additionalProperties: true, and the description does not clarify what fields are expected or how they map to device properties. The description adds no additional semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing device' clearly identifies the verb (update) and resource (device), distinguishing it from sibling tools that operate on other resources like users or approvals. However, it lacks any additional scope details (e.g., which properties can be updated), so it is clear but not exceptionally informative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like create_device, delete_device, or the various other update_* tools. The description implies it should be used for updating existing device records but does not state prerequisites, exclusions, or conditions where another tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_entranceB
Update an existing entrance
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the entrance to update | |
| data | Yes | The data for updating the entrance |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It merely restates the tool name ('Update an existing entrance') without detailing side effects, update semantics (partial vs full), authorization requirements, return values, or error conditions. This provides zero additional behavioral insight beyond what the name implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words or redundant information. However, it is under-specified for the complexity of the tool, so it does not fully earn its place as a standalone guide.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an open-ended 'data' object with additionalProperties true, no output schema, and no annotations, the description is too sparse. It does not explain what fields can be updated, whether it is a partial update, or what response to expect. An agent would lack sufficient context to invoke this correctly beyond basic schema understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers both parameters (id and data) with descriptions, achieving 100% schema coverage. The description adds no extra parameter semantics, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and the resource ('an existing entrance'), making it distinct from the sibling create/delete/get/list operations for entrances. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for modifying an existing entrance, but it does not provide explicit guidance on when to use this tool versus alternatives, such as fetching the entrance first or using create/delete. No exclusions or alternative tool mentions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_holidayB
Update an existing holiday
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the holiday to update | |
| data | Yes | The data for updating the holiday |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden of behavioral disclosure. It states 'Update an existing holiday' but does not disclose side effects, required permissions, whether the update is partial or full replacement, error behavior if the holiday doesn't exist, or any return value. This is a significant gap for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence containing only the necessary information. It is concise, direct, and free of unnecessary elaboration, earning it a perfect score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple update with two parameters, but the data object is open-ended (additionalProperties true), and there is no output schema. The description does not explain what fields are valid in data, whether the update merges or replaces, or what to expect in response. Given the lack of behavioral information and open-ended schema, the description is insufficient for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers both parameters (id and data) with descriptions, achieving 100% schema coverage. The description adds no additional parameter details beyond what the schema provides. Since schema coverage is high, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing holiday' clearly specifies the verb (update) and the resource (holiday), and distinguishes itself from create/delete/get/list operations. It directly states the action and target, leaving no ambiguity about its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use when an existing holiday needs modification. However, it does not explicitly mention alternatives like create_holiday for new holidays or delete_holiday for removals. There is no guidance on when not to use it or what prerequisites exist, so only implied usage is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_job_positionB
Update an existing job_position
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the job_position to update | |
| data | Yes | The data for updating the job_position |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states that the tool updates a job_position, but does not reveal whether it performs a partial or full update, how missing records are handled, what the response contains, or any required permissions. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous words. It is front-loaded with the essential action and resource, making it easy to parse. No word is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the tool is simple with two parameters, the 'data' parameter is an open-ended object with additionalProperties true, and the description gives no guidance on what fields or structure to use. There is also no output schema or annotation to clarify return values or side effects. Given the large family of sibling CRUD tools, this description provides insufficient context for an agent to confidently use it without further investigation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for both parameters: 'id' as the UUID of the job_position to update, and 'data' as the update data. Since schema description coverage is 100%, the description does not need to add parameter details. However, it also does not add any extra meaning, such as which fields are updatable or how the data object is applied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing job_position' clearly states a specific verb (update) and resource (job_position), distinguishing it from sibling tools like create_job_position, get_job_position, and delete_job_position. There is no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied by the phrase 'Update an existing' — it should be used when modifying an existing job_position, not creating or deleting one. However, it does not explicitly mention when to prefer this over alternatives, nor does it provide any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_leaveC
Update an existing leave
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave to update | |
| data | Yes | The data for updating the leave |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is minimal and provides no behavioral details beyond the verb 'update'. With no annotations present, the description should disclose side effects, required permissions, or update semantics (partial vs full). It only implies the leave already exists, but that's insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is efficient and front-loaded, but it lacks substance. It is not overly verbose, yet it under-specifies the tool's behavior and appropriate usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with an open-ended 'data' object, no output schema, and no annotations, the description is severely incomplete. It does not explain what fields are updatable or how the update behaves, leaving the agent with insufficient context to use the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, so the schema already documents id and data. The description adds no extra meaning about how to construct the data object or any constraints beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Update an existing leave' which is a clear verb-resource pair. It distinguishes the update operation from create/delete, though it doesn't explicitly differentiate from sibling update tools like update_leave_rule or update_leave_type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites, such as the leave needing to exist, nor does it contrast with create or delete operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_leave_ruleB
Update an existing leave_rule
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave_rule to update | |
| data | Yes | The data for updating the leave_rule |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description merely restates the operation name without disclosing behavioral traits such as whether the update is partial or full, what happens for non-existent IDs, authentication requirements, or side effects. The description offers zero value beyond the verb.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no unnecessary words, front-loading the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, and the description does not specify updatable fields, response format, or error behavior. For an update operation on a complex object (data is unconstrained), this is insufficient for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already includes descriptions for both 'id' and 'data', achieving 100% coverage for top-level parameters. The description adds no additional semantic detail about the 'data' object, which remains an open schema with no specified properties, but the baseline is met.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Update' and identifies the resource 'leave_rule' with the qualifier 'existing', clearly distinguishing it from create/delete operations. It is direct and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like create_leave_rule or delete_leave_rule. There are no exclusions, prerequisites, or scenario descriptions, leaving the agent to infer from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_leave_typeB
Update an existing leave_type
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the leave_type to update | |
| data | Yes | The data for updating the leave_type |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It only states that it 'updates' an existing entity, but does not explain side effects, permission requirements, idempotency, or how partial updates are handled. This is minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no waste. However, it is extremely terse, offering only the bare minimum information. It is concise but lacks substance, so it earns a 4 rather than 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's nested object parameter and absence of annotations or output schema, the description is insufficient. It does not explain acceptable fields for 'data', update behavior, or response format, leaving the agent under-informed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds no parameter-specific meaning; it merely repeats the action. The 'data' parameter is an open object and the description does not clarify expected fields, leaving the schema's generic description as the only guide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Update' and the resource 'leave_type', which distinguishes it from sibling tools like create_leave_type and delete_leave_type. It is specific and direct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives. It does not mention prerequisites, exclusions, or scenarios where create_leave_type or delete_leave_type would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_night_workD
Update an existing night_work
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the night_work to update | |
| data | Yes | The data for updating the night_work |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It fails to mention any side effects, authentication requirements, error behavior, or whether the update is partial or full. It only states the operation without revealing its effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, but it is under-specified rather than appropriately concise. It lacks substance and does not earn its place as a helpful description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having a free-form data object and no output schema, the description provides no context about what fields are updatable, the semantics of the data object, or the expected behavior. This makes the tool difficult to invoke correctly, especially without examples or additional documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both id and data, covering 100% of parameters. The description adds no additional parameter semantics, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing night_work' directly restates the tool name without adding any additional information about what a night_work is or how it differs from other update tools. It is a tautology, not a meaningful explanation of purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool, when not to use it, or alternatives such as create_night_work or delete_night_work. There is no context about prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_organization_unitB
Update an existing organization_unit
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the organization_unit to update | |
| data | Yes | The data for updating the organization_unit |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'update an existing organization_unit', which reveals it's a mutation but nothing about partial vs. full replacement, error handling, idempotency, return value, or side effects. 'Existing' implies a prerequisite of an ID, but no further transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that states the purpose without filler. It earns its place, but the structure is minimal—no sections or additional context. It's appropriately brief, though not exceptionally structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple (id + free-form data object), but the description omits crucial context. It does not clarify whether the update is partial or full replacement, what fields are expected in the data object, what the tool returns, or potential errors. Given no output schema and no annotations, this is incomplete for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema includes descriptions for both parameters (id as UUID, data as the update payload), giving 100% schema description coverage. The description adds no additional parameter semantics beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'organization_unit', making it obvious this tool modifies an existing organization unit. It distinguishes from sibling tools like 'passgage_create_organization_unit' and 'passgage_delete_organization_unit' via the verb.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: you need an existing organization unit to update. However, it provides no explicit guidance on when to choose this over create/delete, nor any prerequisites or alternatives. The usage is inferred from the operation type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_payrollB
Update an existing payroll
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the payroll to update | |
| data | Yes | The data for updating the payroll |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It merely states 'update' without explaining behavioral traits such as partial vs. full replacement, handling of unspecified fields in the 'data' object, required permissions, or return format. For a mutation tool, this lacks necessary transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no redundancy. It is appropriately sized for the tool's simplicity, though it could include more detail without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, no annotations, and a nested 'data' object with free-form properties. The description does not explain update semantics (e.g., partial update, required fields within data, error cases) or what the response contains. This is a typical CRUD update, but it lacks sufficient context for reliable autonomous use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage: id and data are described with their types and purposes. The description adds no extra meaning. The 'data' object allows additionalProperties, which could benefit from elaboration, but since schema coverage is high, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing payroll' uses a specific verb ('Update') and resource ('payroll'), clearly distinguishing this from sibling tools like create_payroll, delete_payroll, and get_payroll. It is unambiguous and directly states the tool's action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for modifying an existing payroll, and sibling tool names (create_payroll, delete_payroll) provide some context. However, there is no explicit guidance on when to use this tool versus alternatives, no prerequisites (e.g., existing payroll ID), and no mention of what happens if the payroll does not exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_shiftC
Update an existing shift
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the shift to update | |
| data | Yes | The data for updating the shift |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for disclosing behavior. It only says 'Update an existing shift,' which implies mutation but doesn't clarify permissions, partial update support, error behavior for nonexistent IDs, or the response format. This is a significant transparency gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It is front-loaded with the verb and resource. While short, it is appropriately concise for the simplicity of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple signature, but the 'data' object is open-ended with additionalProperties true, leaving the agent without guidance on what fields are valid. The description doesn't mention common updatable fields or any constraints. For a clear, complete picture of how to invoke this tool, more information is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with descriptions for 'id' and 'data'. However, the 'data' description ('The data for updating the shift') is tautological and doesn't list valid fields. Since the schema provides some coverage, the baseline is 3, but the description adds no extra meaning beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing shift' clearly states the action (update) and the resource (shift). It distinguishes from other sibling tools like create_shift and delete_shift, but doesn't differentiate from update_shift_setting or other update tools beyond the resource name. Still, it is specific enough for basic selection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. For example, it doesn't mention that this is for modifying existing shifts, while create_shift is for new ones, or that update_shift_setting handles shift settings rather than shifts. The description gives no context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_shift_settingC
Update an existing shift_setting
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the shift_setting to update | |
| data | Yes | The data for updating the shift_setting |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavioral traits. It only states 'Update an existing shift_setting' without mentioning side effects, required permissions, whether the update is partial or full, or what response to expect. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at one sentence, but it is under-specified. It lacks meaningful content that would justify its brevity, such as key context or usage notes. It is not overly verbose, but the minimalism detracts from its usefulness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an update tool with no output schema and sparse annotations, the description is incomplete. It does not explain what a shift_setting is, what fields data should contain, whether the update replaces or merges, or any return value. The information provided is insufficient for an agent to confidently invoke the tool, especially given the generic 'data' object.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for both parameters (id and data), so the baseline is 3. The description adds no additional parameter semantics beyond what the schema provides, and the data object is vaguely described as 'The data for updating the shift_setting' with additionalProperties true, which could benefit from elaboration.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (update) and the target resource (shift_setting), distinguishing it from sibling tools that operate on other resources. It is specific enough for an agent to understand what the tool does, though it lacks additional detail about the scope of the update.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus creating, deleting, or retrieving a shift_setting. It does not mention any alternatives or prerequisites, leaving the agent to infer usage context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_slackC
Update an existing slack
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the slack to update | |
| data | Yes | The data for updating the slack |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. 'Update an existing slack' only states the action, with no information about partial vs full updates, return values, required permissions, or side effects. This is essentially a tautology of the tool name and adds no meaningful behavioral insight.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, with no wasted words, but it is under-specified rather than appropriately concise. It omits critical context about the resource and operation, making the brevity a deficiency rather than a strength.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, so the description must provide context about the operation's behavior and scope. It fails to explain what a 'slack' is, what fields the 'data' object should contain, or what the result of the update is. This is incomplete for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for both parameters: 'id' and 'data' are each described. The description adds no extra parameter semantics, but because the schema already documents the parameters, a baseline score of 3 is appropriate. The open-ended 'data' object is not clarified, but the schema notes it as 'The data for updating the slack'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing slack' uses a specific verb (update) and resource (slack), distinguishing it from sibling tools like create_slack, get_slack, and delete_slack. However, the term 'slack' is ambiguous without further context, and the description could be clearer about what a 'slack' represents in this system.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not specify when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. It is left to the agent to infer from the tool name and siblings that this is the update operation for the 'slack' resource.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_sub_companieC
Update an existing sub_companie
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the sub_companie to update | |
| data | Yes | The data for updating the sub_companie |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It only says 'Update' without mentioning whether the update is partial or full replacement, required permissions, or potential side effects on related data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words, making it easy to parse and understand.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an open-ended data object and no output schema, the description lacks critical context about valid fields, update behavior, or response format. The absence of annotation support further increases ambiguity for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters have schema descriptions (id as UUID, data as object). The tool description itself adds no semantic detail beyond the schema, and the data parameter's open-ended nature (additionalProperties: true) is left undefined, but the schema already documents the basics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing sub_companie' clearly identifies the action (update) and the resource (sub_companie). It distinguishes from sibling update tools by resource name, though it lacks additional scope details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool vs alternatives like create_sub_companie or other update tools. The description is a bare statement with no context about prerequisites, substitutions, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_userC
Update an existing user
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user to update | |
| data | Yes | The data for updating the user |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description alone must disclose behavioral traits, but it only says 'Update an existing user.' It does not mention whether this is a partial or full update, what happens if the user does not exist, required permission levels, or any side effects. The description is entirely uninformative about the tool's runtime behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence that is front-loaded with the core action and resource. It contains no filler words or redundant content. While it is very terse, it is appropriately concise for a simple CRUD operation, though it sacrifices substance for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations, output schema, and the open-ended 'data' object, the description is severely incomplete. It provides no context about return values, error behavior, the structure of expected data, or how this operation fits into the broader API. An agent has almost no actionable information beyond the tool's name.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters (id and data), giving 100% schema coverage, so the baseline is 3. The description adds no further parameter meaning. However, the 'data' parameter is an open object with no defined structure, and the description does not compensate for this, which prevents a higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and the target resource ('an existing user'), which matches the tool name and makes the primary purpose unmistakable. However, it does not provide any differentiation from sibling update tools beyond the resource name, so it lacks the explicit scope and alternative guidance that would earn a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives such as create_user, delete_user, or other update_* tools. There is no mention of prerequisites, typical scenarios, or situations to avoid, leaving the agent without practical usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_user_extra_workB
Update an existing user_extra_work
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_extra_work to update | |
| data | Yes | The data for updating the user_extra_work |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that it updates an 'existing' record, implying a precondition, but does not disclose error handling, idempotency, side effects, or permission requirements. Minimal behavioral information is given.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant information. It is front-loaded and efficiently communicates the core action and target.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks essential context for a mutation tool with no annotations and no output schema. It does not explain the shape or allowed fields of the 'data' object, behavior for non-existent IDs, return value, or relation to sibling CRUD tools, making it incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters have descriptions in the input schema, providing 100% coverage. The description itself adds no extra parameter semantics; it does not elaborate on the 'data' object structure or any constraints, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Update' and clearly identifies the resource 'user_extra_work', which distinguishes it from create, get, delete, and list tools for the same entity. It is unambiguous and directly states the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as create_user_extra_work or delete_user_extra_work. It also does not mention any prerequisites or conditions that should be met before calling the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_user_rateC
Update an existing user_rate
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_rate to update | |
| data | Yes | The data for updating the user_rate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description discloses no behavioral traits beyond the action. It does not mention required permissions, whether the update is partial or full replacement, or what the response will be—significant gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words, clearly front-loading the action and resource. It earns its place and is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite being a simple CRUD operation, the description is insufficient for an agent to invoke it correctly. It lacks details about the data structure, permissions, return values, or constraints. The schema's 'data' object is undefined, and with no annotations or output schema, the tool is significantly under-specified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has descriptions for both parameters, giving 100% coverage, so the baseline is 3. However, the description adds no extra meaning to the parameters. The nested 'data' object is open-ended (additionalProperties: true) and its schema description is circular, leaving the updatable fields vague, and the description does not clarify this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and resource ('user_rate'), and it is the only tool for updating user_rates among the siblings. However, it is terse and largely restates the tool name, without adding any distinguishing scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives like passgage_create_user_rate or passgage_delete_user_rate. It provides no context about prerequisites, typical use cases, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_user_shiftC
Update an existing user_shift
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the user_shift to update | |
| data | Yes | The data for updating the user_shift |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must carry the full burden of explaining behavioral traits. It only says 'update' without disclosing what side effects occur, whether authentication is required, whether unsupported fields are ignored or errors are raised, or whether the update is atomic. For a mutation tool, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is concise and front-loaded. It earns its place by stating the core action. However, it is so brief that it borders on under-specification, but as far as structure goes, it is efficient and not verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has 2 parameters, no output schema, and no annotations, the description is too sparse. It does not explain what the user_shift data object should contain, how the id is used, or what the response looks like. The agent would have to guess or rely on external knowledge, making the tool incompletely described for an automated agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for both parameters: 'id' as the UUID and 'data' as an object for updating. Schema coverage is 100%, so the baseline is 3. The description adds no additional semantic meaning, but the schema already gives basic clarity. However, the 'data' parameter is vague (open-ended object with additionalProperties true), and the description does not clarify typical fields or update semantics beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing user_shift' clearly states the action (update) and the target resource (user_shift). It is specific about what the tool does, but it does not distinguish this update tool from the many other update tools for different resources in the sibling list. Still, for a single tool, the purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 neither mentions prerequisites, typical use cases, nor contrasts with create, get, or delete operations for user_shifts. The agent is left to infer that this tool is for modifying an existing user_shift, but no context is given about when a partial update vs full replacement is expected.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_update_working_dayC
Update an existing working_day
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The UUID of the working_day to update | |
| data | Yes | The data for updating the working_day |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full burden of behavioral disclosure. It only states 'Update an existing working_day' and does not explain side effects, error handling (e.g., missing id), permissions, or how the update merges with existing data. For a mutation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant wording. It is efficient and easily parseable, though its brevity contributes to the lack of depth in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested data object, no output schema, and no annotations, yet the description offers no context about behavior, return values, or constraints. The schema covers parameter names but not operational expectations, leaving the description inadequate for safe and correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters (id and data) with 100% coverage. The description adds no additional meaning about valid data fields or the structure of the data object, so it remains at the baseline for schema-provided semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Update') and a clear resource ('working_day'), distinguishing it from sibling tools like create_working_day and delete_working_day. It is unambiguous about the action, though it lacks detail on what fields can be updated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus create or delete working_day operations. The name implies update, but there is no explicit context or alternatives mentioned, leaving the agent without clear selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
passgage_upload_fileB
Upload a file to Passgage using presigned URL
| Name | Required | Description | Default |
|---|---|---|---|
| purpose | No | Purpose of the file upload (optional) | |
| filename | Yes | Name of the file to upload | |
| file_data | Yes | Base64 encoded file data or file path | |
| content_type | Yes | MIME type of the file (e.g., image/jpeg, application/pdf) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It fails to mention upload size limits, whether the file is stored persistently, authentication requirements, or what happens to the file data. The phrase 'using presigned URL' hints at mechanism but adds little behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no filler. It front-loads the action and resource, making it easy to scan, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a state-changing file upload with no output schema and no annotations. The description provides no return-value expectations, upload constraints, or usage prerequisites. Given the complexity of handling base64 data or file paths, this is insufficient context for an agent to invoke the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter having a description (e.g., file_data is 'Base64 encoded file data or file path'). The tool description adds no parameter-level detail, so the schema does the heavy lifting and the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Upload'), the target resource ('a file to Passgage'), and the mechanism ('using presigned URL'). This distinguishes it from the many sibling tools that are about auth, CRUD, or search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to use this tool, prerequisites like authentication, or alternatives. It simply states the action without context, leaving the agent to infer when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
The majority of tools are clearly distinguished by their resource-specific CRUD operations (list/get/create/update/delete per entity). However, the authentication tools contain some overlap, such as set_company_mode and switch_to_company_mode having nearly identical purposes, which could lead to misselection.
Tool names follow a highly consistent pattern of passgage_<verb>_<resource> (e.g., list_users, create_user, delete_approval). Minor grammatical typos like 'branche' and 'sub_companie' do not break the naming convention, and the pattern is easily predictable across all 151 tools.
With 151 tools, this server is vastly over-scoped for an MCP server. Even a complex domain typically does not warrant more than 25-30 tools; this set is overwhelming and will slow down an agent's decision-making process, making the toolset impractical for effective use.
The tool set provides full CRUD operations for nearly 30 resource types, plus supplementary features like search, export, and dashboard stats, covering the apparent domain of workforce and access management. Potential gaps exist (e.g., no dedicated user-role management, no direct assignment for some entities), but the universal search and bulk operations mitigate these limitations.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Manage projects, tasks, time tracking, and team collaboration through natural language.
Track and manage employee time off with quick balance lookups and streamlined applications. Find t…
Give AI agents 30,000+ safe, token-optimized actions across Workday, SAP, Oracle + hundreds more.
Shared company knowledge, workflows, and connected apps for the AIs your team already uses.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables natural language interaction with BambooHR to manage employee records, time off, hiring, and benefits. It provides 74 tools and pre-built workflows to automate HR operations like onboarding, reporting, and performance tracking.14MIT
- AlicenseBqualityDmaintenanceEnables interaction with the Officient HR API to manage people, days off, and salary slips through natural language.9MIT
- FlicenseBqualityCmaintenanceEnables managing employee leave requests (apply, view, list leaves) through Claude desktop using natural language.6
- FlicenseNot gradedqualityDmaintenanceProvides 50+ tools for interacting with Rippling's HR platform, including employee management, payroll, time tracking, benefits, recruiting, learning, devices, groups, and custom objects, all through natural language.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/passgage/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server