Pubrio
OfficialThe Pubrio server provides AI agents and revenue teams with access to a global B2B data platform to search, enrich, and monitor companies, people, jobs, news, ads, and intent signals.
Company Intelligence
Search companies by name, domain, location, industry, technology, headcount, revenue, and more
Look up companies by domain, LinkedIn URL, or Pubrio ID
Enrich companies with full firmographic data (description, social links, funding)
Find similar/lookalike companies and analyze technology stacks
People & Contact Data
Search professionals by name, title, department, seniority, location, or company
Look up and enrich person profiles with full work history and education
Reveal contact details (work email, personal email, phone) for individuals or in batches
Check batch redeem status for bulk contact operations
Signal Data (Jobs, News, Ads)
Search and look up job postings by title, keyword, location, company, and date
Search and look up company news by category, language, and publication date
Search and look up advertisements by keyword, headline, target location, and date range
Signal Monitors & Automation
Create, update, delete, duplicate, and test monitors to track jobs, news, or ads for target companies
View monitor statistics, trigger logs, retry failed triggers, and validate webhook destinations
Configure notifications via webhooks or email
Reference & Filter Data (free, no credits)
Access location, department, seniority, company size, and timezone codes
Search technologies, technology categories, industry verticals, and news categories
Account & Profile
View account profile, check credit usage and subscription details, and get authenticated user information
pubrio-mcp-server
A Model Context Protocol (MCP) server for Pubrio — the glocalized business data layer for AI agents and revenue teams. Search the whole market — not just the 30% in mainstream datasets.
Give your AI agents access to companies, people, jobs, news, ads, and intent signals from around the globe.
Installation
npm install -g pubrio-mcp-serverRelated MCP server: Apollo MCP Server
Configuration
Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"pubrio": {
"command": "pubrio-mcp-server",
"env": {
"PUBRIO_API_KEY": "your-api-key-here"
}
}
}
}Claude Code
claude mcp add pubrio pubrio-mcp-server -e PUBRIO_API_KEY=your-api-key-hereCursor / Windsurf / Other MCP Clients
Any MCP-compatible client can use this server. Set the command to pubrio-mcp-server and pass PUBRIO_API_KEY as an environment variable.
Available Tools (51)
Company Tools (6)
Tool | Description |
| Search companies by name, domain, location, industry, technology, headcount, and more |
| Look up a company by domain, LinkedIn URL, or domain_search_id |
| Look up a company by its LinkedIn URL using the dedicated LinkedIn endpoint |
| Enrich company with full firmographic data (uses credits) |
| Find lookalike companies with filters for location, industry, technology, headcount, and more |
| Look up technologies used by a company |
Signal Tools (7)
Tool | Description |
| Search job postings across companies by title, location, keyword, and date |
| Look up detailed information about a specific job posting |
| Search company news and press releases by category, language, gallery, and date |
| Look up detailed information about a specific news article |
| Search company advertisements by keyword, headline, target location, and date range |
| Look up detailed information about a specific advertisement |
| Look up a similar/lookalike company result |
People Tools (7)
Tool | Description |
| Search people by name, title, department, seniority, location, company, and more |
| Look up a person by LinkedIn URL or people_search_id |
| Real-time LinkedIn person lookup using people_linkedin_url |
| Enrich person with full professional details (uses credits) |
| Reveal email (work/personal) or phone for a person (uses credits) |
| Reveal contact details for multiple people at once (uses credits) |
| Check the status and results of a batch contact redeem operation |
Filter / Reference Data Tools (14)
Tool | Description |
| Get all available location codes for search filters |
| Get all department title codes for people search filters |
| Get all department function codes for people search filters |
| Get all management/seniority level codes for people search filters |
| Get all company size range codes for search filters |
| Get all available timezone codes |
| Get all news category codes for news search filters |
| Get all news gallery codes for news search filters |
| Get all news language codes for news search filters |
| Search for technology names by keyword |
| Search for technology category names by keyword |
| Search for industry vertical names by keyword |
| Search for vertical category names by keyword |
| Search for vertical sub-category names by keyword |
Monitor Tools (14)
Tool | Description |
| Create a new signal monitor for jobs, news, or advertisements |
| Update an existing signal monitor configuration |
| Get detailed information about a specific monitor |
| List all signal monitors with pagination and sorting |
| Permanently delete a signal monitor |
| Create a copy of an existing monitor |
| Execute a test run of a monitor to preview triggers |
| Retry a failed monitor trigger by log ID |
| Test a webhook destination configuration |
| Get aggregate statistics across all monitors |
| Get daily trigger statistics for a monitor over a date range |
| Get trigger logs for a specific monitor |
| Look up detailed information about a specific monitor trigger log entry |
| Reveal the webhook signature secret for a monitor |
Profile / Utility Tools (3)
Tool | Description |
| Get full profile information for the authenticated account |
| Get credit usage and subscription information |
| Get current authenticated user details |
Example Prompts
Once configured, you can ask Claude things like:
"Search for SaaS companies in Singapore with 50-200 employees"
"Look up the company stripe.com and tell me about their tech stack"
"Find VP of Engineering at companies using React in San Francisco"
"What job postings does Notion have right now?"
"Find companies similar to Figma in Europe"
"Search for recent news about AI startups"
"What ads is Shopify running targeting the US?"
"Reveal the work email for this LinkedIn profile: https://linkedin.com/in/..."
"Create a monitor to track new job postings from my target accounts"
"Show me all available location codes for filtering"
Example Use Cases
Account research: Ask Claude to research a prospect company — firmographics, tech stack, recent news, job postings, and key decision-makers — all in one conversation
Lead generation: Search for companies matching your ICP, find decision-makers, and reveal their contact details
Competitive intelligence: Monitor competitor job postings, news, and advertisements for strategic insights
Market mapping: Find all companies in a vertical, region, or technology category and analyze the landscape
Signal-based selling: Search for companies with specific hiring patterns or news events that indicate buying intent
Automated monitoring: Set up monitors to get alerted when target companies post new jobs, appear in news, or launch ad campaigns
Authentication
Get your API key from dashboard.pubrio.com under Settings.
Rate Limits
1,200 requests/minute global
Plan-based hourly limits: Free (60/hr), Growth (2,400/hr), Business (12,000/hr)
Resources
License
MIT
Available Tools
51 toolsbatch_redeem_contactsA
Reveal contact details (email, phone) for multiple people at once (uses 1 credit per person per contact type). Provide people_search_ids from search_people results
| Name | Required | Description | Default |
|---|---|---|---|
| peoples | Yes | Comma-separated people_search_ids to redeem | |
| people_contact_types | No | Comma-separated contact types: email-personal, email-work, phone |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; the description mentions credit cost ('uses 1 credit per person per contact type') but does not disclose other behaviors like read-only nature, idempotency, or error handling. More detail is needed.
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 conveys the core purpose, cost, and prerequisite information without excess.
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 main points but lacks output format details (e.g., response structure for batch results) and error handling, which are important for a batch 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?
Schema coverage is 100% with parameter descriptions. The description adds context: the source of IDs (search_people results) and the cost model, which goes 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 action: 'Reveal contact details (email, phone) for multiple people at once'. It also distinguishes from sibling tools like reveal_contact (single) and search_people (returns IDs).
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 specifies when to use: 'Provide people_search_ids from search_people results'. It does not explicitly exclude alternatives like reveal_contact for single reveals, but the batch context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_monitorC
Create a new signal monitor to track jobs, news, or advertisements for specified companies
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Monitor name | |
| No | Email address (required when destination_type is "email") | ||
| domains | No | Comma-separated company domains to monitor | |
| companies | No | Comma-separated company UUIDs to monitor | |
| description | No | Monitor description | |
| webhook_url | No | Webhook URL (required when destination_type is "webhook") | |
| signal_types | Yes | Signal types to monitor: "jobs", "news", "advertisements" | |
| linkedin_urls | No | Comma-separated company LinkedIn URLs to monitor | |
| detection_mode | Yes | Detection mode: "new" or "new_and_updated" | |
| signal_filters | No | Signal-specific filters array | |
| company_filters | No | Advanced company filters as JSON string | |
| destination_type | Yes | Destination type: "webhook", "email", or "outreach_sequence" | |
| frequency_minute | No | Check frequency in minutes | |
| max_daily_trigger | No | Maximum daily triggers | |
| notification_email | No | Email for failure notifications | |
| retry_delay_second | No | Retry delay in seconds | |
| max_failure_trigger | No | Maximum failure triggers before pausing | |
| sequence_identifier | No | Outreach sequence identifier (required when destination_type is "outreach_sequence") | |
| is_people_enrichment | No | Enable people enrichment on trigger | |
| is_company_enrichment | No | Enable company enrichment on trigger | |
| max_retry_per_trigger | No | Maximum retries per trigger | |
| max_records_per_trigger | No | Maximum records per trigger | |
| people_enrichment_configs | No | People enrichment configuration array |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must disclose behavioral traits. It only states creation without mentioning side effects, authentication needs, rate limits, or success response. This is insufficient for a mutation tool with 23 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundancy. However, it could be slightly more structured with additional information about prerequisites or outcomes without harming conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (23 parameters, no output schema, no annotations), the description is too brief. It lacks return value details, error handling, and the overall monitor lifecycle context, making it incomplete for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents parameters. The description adds no extra meaning beyond the schema's field descriptions, achieving the baseline 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 'Create' and the resource 'new signal monitor', and specifies the tracked signal types (jobs, news, advertisements) and target (specified companies). This differentiates it from update and delete tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like lookup endpoints or existing monitors. Prerequisites (e.g., company UUIDs) are not mentioned, and there are no exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_monitorB
Permanently delete a signal monitor
| Name | Required | Description | Default |
|---|---|---|---|
| monitor_id | Yes | Monitor UUID 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. It discloses that deletion is permanent, which adds transparency beyond just 'delete'. However, it does not elaborate on side effects (e.g., cascading deletion of related data), authorization requirements, or whether the action can be undone. The word 'permanently' is a positive but minimal addition.
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: a single 4-word sentence. It is front-loaded with the core action and resource. While it is not verbose, it could be slightly more structured (e.g., adding a note about irreversibility) without losing conciseness. Overall, it earns its space.
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 is adequate but incomplete. It states the permanent deletion but does not explain return values (likely success/error), error conditions, or post-deletion state. For a destructive action, additional context about reversibility and consequences 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 covers 100% of the single parameter ('monitor_id') with a description. The tool description adds no additional meaning beyond what the schema provides. According to the rubric, with high schema description coverage (>80%), the baseline score 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 ('permanently delete') and the resource ('a signal monitor'). This distinguishes it from sibling tools like update_monitor or retry_monitor, which have different purposes. The verb+resource combination leaves no 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 provides no guidance on when to use this tool versus alternatives (e.g., update_monitor, retry_monitor). It does not mention prerequisites such as having appropriate permissions or ensuring the monitor is no longer needed. The only hint is the word 'permanently', which implies irreversible action, but no explicit when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
duplicate_monitorA
Create a copy of an existing signal monitor with an optional new name
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Name for the duplicated monitor | |
| monitor_id | Yes | Monitor UUID to duplicate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. States it creates a copy, implying a write operation. Lacks details on whether the original is modified, success indicators, or error conditions. 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?
Single sentence, 14 words. No redundancy or unnecessary fluff. Front-loads 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?
Simple tool with 2 parameters and no output schema. Description covers the basic purpose but does not mention return value or confirmation behavior. Could be more complete for a duplication 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?
Both parameters have descriptions in the schema (100% coverage). Description adds minimal value: hints that name is optional ('optional new name'). No additional constraints or format details beyond 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?
Clearly states 'Create a copy of an existing signal monitor' with an optional new name. Verb 'create a copy' and resource 'signal monitor' are specific. Distinguishes from creating or deleting monitors.
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 guidance on when to use this tool vs alternatives like create_monitor or update_monitor. Context implied but not stated. Could mention it requires an existing monitor_id.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enrich_companyA
Enrich company data with full firmographic details including description, social links, and funding (uses credits). Provide one of: domain, linkedin_url, or domain_search_id
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | Company domain (e.g. "google.com") | |
| linkedin_url | No | Company LinkedIn URL | |
| domain_search_id | No | Pubrio domain search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry full behavioral disclosure. It mentions 'uses credits' to indicate cost, but does not clarify if the tool modifies data or only retrieves, nor does it address authentication, rate limits, or error states.
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 consists of two concise sentences. The first covers purpose and credits, the second specifies input requirements. No redundant information, and each sentence adds essential 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?
Without annotations or output schema, the description should provide more behavioral context. It lacks details about the return format, pagination, prerequisite conditions, and error handling. The mention of credits is helpful but insufficient for complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already includes descriptions for each parameter (100% coverage), so baseline is 3. The description adds value by explicitly stating that only one identifier should be provided, which the schema does not enforce. This clarifies mutual exclusivity.
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 'enrich' and resource 'company data', specifies the outputs (description, social links, funding), and distinguishes from sibling tools like lookup_company by implying it provides more complete data. The mention of credits adds 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?
The description explicitly states that one of three identifiers must be provided, giving clear input constraints. However, it does not compare with sibling tools like enrich_person or lookup_company to guide selection, nor does it mention when to avoid usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enrich_personA
Enrich person with full professional details including work history and education (uses credits). Provide linkedin_url or people_search_id from a previous search
| Name | Required | Description | Default |
|---|---|---|---|
| linkedin_url | No | Person LinkedIn URL | |
| people_search_id | No | Pubrio people search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions credit usage, which is a key behavioral aspect. However, it lacks details on error handling, idempotency, rate limits, or what happens if both inputs are missing. This is a moderate 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 that states the purpose first, then the input requirements. Every word is necessary, no fluff. It is as concise as possible while conveying essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 optional params, no output schema), the description covers purpose, input prerequisites, credit usage, and the nature of output ('full professional details'). It could be more complete by noting that at least one param is effectively required, but overall is sufficient 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?
Input schema has 100% coverage with parameter descriptions. The description adds value by clarifying that the parameters are alternatives ('provide linkedin_url or people_search_id') and that 'people_search_id' comes from a previous search. This goes beyond the schema's individual descriptions.
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 ('enrich'), the resource ('person'), and the details provided ('full professional details including work history and education'). It also mentions credit usage and specifies the required inputs. This distinguishes it from sibling tools like 'lookup_person' which likely provide basic info.
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 tells the agent to provide a 'linkedin_url or people_search_id from a previous search', hinting at the prerequisite of a prior search. However, it does not explicitly state when to use this tool versus alternatives like 'lookup_person' or 'search_people', missing a clear 'when to use' statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_similar_companiesB
Find companies similar to a given company by domain, LinkedIn URL, or domain search ID
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| domain | No | Company domain (e.g. "google.com") | |
| per_page | No | Results per page (default 25, max 25) | |
| revenues | No | Comma-separated revenue filters | |
| employees | No | Comma-separated employee range (e.g. "1,1000") | |
| locations | No | Comma-separated location codes | |
| verticals | No | Comma-separated industry verticals | |
| categories | No | Comma-separated categories | |
| job_titles | No | Comma-separated job titles | |
| linkedin_url | No | Company LinkedIn URL | |
| technologies | No | Comma-separated technologies | |
| founded_dates | No | Comma-separated founded date filters | |
| job_locations | No | Comma-separated job location codes | |
| news_categories | No | Comma-separated news categories | |
| domain_search_id | No | Pubrio domain search ID | |
| job_posted_dates | No | Comma-separated job posted date filters | |
| similarity_score | No | Similarity score threshold | |
| exclude_locations | No | Comma-separated locations to exclude | |
| vertical_categories | No | Comma-separated vertical categories | |
| news_published_dates | No | Comma-separated news published date filters | |
| vertical_sub_categories | No | Comma-separated vertical sub-categories | |
| is_enable_similarity_search | No | Enable similarity search |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It fails to mention any side effects (none expected), auth requirements, rate limits, or return format. The only behavioral hint is that it finds similar companies, but no details on how similarity is determined or if pagination applies.
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 with the main purpose. Every word adds value, and there is 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 22 parameters and no output schema or annotations, the description is too brief. It does not explain output format, similarity logic, or how to use the many filter parameters effectively. A more complete description would provide usage context for the filters.
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% (all 22 parameters have descriptions). The description adds little beyond the schema, mentioning the three key input parameters but not providing new meaning. Baseline 3 is appropriate as the schema already documents each 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 finds similar companies and specifies the three input methods (domain, LinkedIn URL, domain search ID). This distinguishes it from sibling tools like search_companies or lookup_company.
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 company to find similar ones, but provides no explicit guidance on when to use this vs alternatives like lookalike searches or other search tools. No when-not-to-use or exclusion criteria are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_company_sizesA
Reference data: get all company size range codes for use as filter values in searches (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and adequately indicates the tool is read-only, free, and returns reference data, though it could elaborate on any limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with 'Reference data', no wasted words, perfectly 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?
For a zero-parameter tool with no output schema, the description is complete enough, specifying purpose and usage context, though it lacks mention of any limits.
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?
No parameters exist; schema coverage is 100%. The description adds value by clarifying the data type (company size range codes) beyond the empty 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 retrieves company size range codes for use as filter values, distinguishing it from other sibling tools by specifying it is reference data and free.
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 needing filter values for searches and mentions it is free, but does not explicitly state when not to use it or provide alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_department_functionsA
Reference data: get all department function codes for use as filter values in people searches (free, no credits)
| 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 must disclose behavioral traits. It mentions the operation is free and returns codes, but does not explicitly state it is read-only or idempotent. The name 'get_' implies read-only, but the description could be more explicit about safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the category 'Reference data' and includes essential information about purpose and cost. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description covers the key points: what is returned, its purpose, and cost. It could optionally describe the return format, but it is sufficient for an agent to understand and use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the description has no burden to explain them. The baseline for zero parameters is 4, and the description confirms it returns all codes without filtering.
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 returns 'all department function codes' and specifies their use as filter values in people searches. This is a specific verb+resource and distinguishes from sibling reference data tools like 'get_departments'.
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 indicates it is reference data that is free with no credits, implying it can be used without cost. However, it does not explicitly state when to use this tool versus other reference data tools like 'get_management_levels' or 'get_locations', though the context is reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_departmentsA
Reference data: get all department title codes for use as filter values in people searches (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool is for reference data, free, and uses no credits, which are important behavioral traits. As there are no annotations, this information adds transparency and sets correct expectations about cost and side effects (none).
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 purpose, usage, and cost. Every word earns its place with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 fully covers what the tool does and why it would be used. It is complete for its intended purpose of providing reference data for filters.
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?
There are no parameters, so the input schema is fully covered. The description adds meaning by explaining the data's purpose and context, which is especially helpful for a parameterless tool.
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 explicitly states it provides department title codes for use as filter values in people searches, with a clear verb ('get') and resource ('all department title codes'). It distinguishes from siblings like 'get_department_functions' by specifying 'title codes'.
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?
It clearly indicates the tool is for retrieving filter values for people searches, with a note that it's free and uses no credits. However, it does not explicitly exclude other uses or compare with alternatives, though the purpose is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_locationsA
Reference data: get all available location codes for use as filter values in search queries (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It mentions 'free, no credits', which is a helpful behavioral note. It also implies a read-only retrieval of all location codes. This provides sufficient transparency for a parameterless 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, front-loaded with 'Reference data', and contains no unnecessary words. It is extremely concise while conveying all essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters, no output schema, and is simple reference data retrieval, the description is fully complete. It states what the tool returns, its purpose, and a helpful note on cost.
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?
With zero parameters and 100% schema coverage, the baseline is 4. The description does not need to add parameter meaning, and it provides context on the return value's purpose (filter values).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves all available location codes for use as filter values, specifying a specific verb ('get') and resource ('location codes'). It distinguishes itself from sibling search/lookup tools by describing it as reference data.
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 explicitly indicates the purpose as providing filter values for search queries, which guides appropriate usage. It does not mention when not to use or alternatives, but for a simple reference data tool the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_management_levelsA
Reference data: get all management/seniority level codes for use as filter values in people searches (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It states the tool is 'free, no credits', indicating no cost, and implies a read-only, non-destructive operation. This is adequate for a simple reference data tool with no parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the tool's purpose and key traits with no 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 tool's simplicity (no parameters, no output schema), the description provides necessary context: it returns codes for use as filters in people searches. It does not detail output format, but this is typical for reference data tools and 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?
There are no parameters, so schema coverage is 100%. The description does not add parameter-specific details, but the baseline for zero parameters is 4, which is appropriate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'get' and the specific resource 'management/seniority level codes', with the explicit purpose of use as filter values in people searches. It differentiates from sibling tools by defining the type of codes and usage 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?
The description indicates the tool is for 'reference data' and is 'free, no credits', implying it is a safe, lightweight lookup. While it does not explicitly exclude other uses or name alternatives, the context of filter values for people searches provides clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_monitorB
Get detailed information about a specific signal monitor
| Name | Required | Description | Default |
|---|---|---|---|
| monitor_id | Yes | Monitor UUID | |
| is_signature_reveal | No | Whether to reveal the webhook signature |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states 'Get detailed information' without disclosing side effects, authorization needs, or the effect of the optional is_signature_reveal parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no redundancy. It is appropriately front-loaded but minimal.
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 fails to explain what 'detailed information' includes. It does not mention return structure or behavior of the optional parameter.
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 input schema already describes both parameters (monitor_id and is_signature_reveal). The description adds no additional meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the verb 'Get' with the resource 'monitor' and specifies 'detailed information about a specific', clearly distinguishing it from sibling tools like list_monitors or get_monitor_chart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool over alternatives such as get_monitor_chart or get_monitor_logs. The description does not mention prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_monitor_chartA
Get daily trigger statistics for a monitor over a date range
| Name | Required | Description | Default |
|---|---|---|---|
| end_date | Yes | End date (YYYY-MM-DD) | |
| monitor_id | Yes | Monitor UUID | |
| start_date | Yes | Start date (YYYY-MM-DD) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'get' but does not describe any behavioral traits such as whether it is read-only, required permissions, rate limits, or what happens with invalid dates. This is minimal 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 sentence of 9 words, front-loading the purpose with no unnecessary words. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 3 parameters, no output schema, and similar sibling tools exist, the description is too sparse. It does not explain what the returned chart contains (e.g., time series format, metrics beyond triggers), leaving the agent without sufficient context to interpret the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter having a brief description. The tool description does not add meaning beyond the schema; 'trigger statistics' remains undefined. Since schema already describes parameters, the value added by the description is marginal.
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 daily trigger statistics for a monitor over a date range' clearly states the action (get), the resource (daily trigger statistics for a monitor), and the scope (over a date range). It distinguishes itself from sibling tools like get_monitor_logs and get_monitor_stats by specifying the aggregated daily nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when daily aggregated statistics are needed. However, it does not explicitly state when to use this tool versus similar siblings like get_monitor_stats, which might provide overall stats. No exclusions or alternatives are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_monitor_logsB
Get trigger logs for a specific signal monitor with pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number | |
| per_page | No | Results per page | |
| monitor_id | Yes | Monitor UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must disclose all behavioral traits. It only states it returns logs with pagination, omitting important details like auth requirements, rate limits, or error handling for invalid monitor_id.
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 purpose and pagination 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?
Despite being a simple paginated list tool, the description lacks output format details, pagination limits, and explanation of what trigger logs contain. With no output schema, more completeness 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?
Schema description coverage is 100%, so each parameter already has a description. The description adds no additional semantics beyond the schema, 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 'Get trigger logs for a specific signal monitor with pagination', identifying a specific verb and resource, and distinguishes it from sibling tools like get_monitor or get_monitor_stats by mentioning 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?
No guidance on when to use this tool vs alternatives is provided. Given the many sibling monitor tools, the agent lacks context on when this is the correct choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_monitor_statsA
Get aggregate statistics across all signal monitors
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states the action without disclosing that it is read-only, what it returns, or any side effects. 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?
Single sentence, no unnecessary words. Clearly communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description fails to explain the return format, behavior (e.g., read-only), or what constitutes 'aggregate statistics'. Incomplete for an agent to use effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist (0 params, 100% schema coverage). Description adds no parameter info, but baseline for 0 params is 4, as there is no need for compensation.
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?
Clearly states it gets aggregate statistics across all signal monitors, using a specific verb and resource. Distinct from siblings like get_monitor (single monitor) and list_monitors (list metadata).
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 guidance on when to use or avoid this tool, but the unique functionality (aggregate stats) makes it implicitly the right choice. Lacks exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_news_categoriesA
Reference data: get all news category codes for use as filter values in news searches (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool is 'free, no credits', which is helpful for cost awareness. It also implies a read-only operation ('Reference data'). Missing details about caching or real-time behavior, but acceptable for a simple reference 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, well-structured sentence that conveys all essential information: purpose, output, usage context, and cost. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the tool is simple. The description covers its purpose and usage adequately. It does not describe output format (e.g., codes structure), but for a reference list tool, this is sufficient. A minor gap is lack of pagination or limit info, but not critical.
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 no parameters (schema coverage 100% with zero params), so the description does not need to document parameters. The description adds value by explaining the output's purpose (filter values). Baseline 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 tool's purpose: 'get all news category codes for use as filter values in news searches'. It specifies the verb 'get' and the resource 'news category codes', and distinguishes itself from sibling tools like 'search_news' by indicating it provides reference data for filters.
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 explains when to use the tool: 'for use as filter values in news searches'. It implies usage before search_news, but does not explicitly mention when not to use it or provide alternatives. However, the context of sibling tools makes it clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_news_galleriesA
Reference data: get all news gallery codes for use as filter values in news searches (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description adds 'free, no credits' and 'reference data', which are useful behavioral hints. However, it does not detail any other side effects or limitations, but for a simple read-only tool this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the category ('Reference data') and clearly states the action and purpose. 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?
Given the tool has no parameters, no output schema, and a simple purpose, the description fully covers what the agent needs to know: what it returns and that it is free. No 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?
There are no parameters, and schema coverage is 100%. The description does not need to add parameter details, and the 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 it retrieves all news gallery codes for use as filter values in news searches. This is a specific verb-resource combination, and it distinguishes from sibling tools like get_news_categories by focusing on gallery codes.
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 indicates the tool is used for obtaining filter values prior to news searches, providing clear context. There is no explicit when-not or alternative mention, but the single sentence implies the intended use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_news_languagesA
Reference data: get all news language codes for use as filter values in news searches (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool is reference data and free (no credits), which is a behavioral trait beyond the input schema. Without annotations, this adds useful context, though it doesn't cover rate limits or caching.
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 without 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?
Given the tool has no parameters and no output schema, the description covers the main usage context. However, it could mention the output format, but the simplicity of a language code list makes this 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?
There are no parameters, so the schema coverage is 100% by default. The description adds no parameter details because none are 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 specifies the tool retrieves all news language codes for use as filter values in news searches. It clearly distinguishes this from sibling reference data tools like get_news_categories by focusing on language codes.
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 states the tool is used to get language codes for news search filters. While it doesn't explicitly mention alternatives, the context of sibling tools implies other filter options exist, but it lacks exclusions or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_profileA
Get the full profile information for the authenticated Pubrio account
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states 'Get' (a read operation) and mentions 'authenticated' account, but does not elaborate on rate limits, data freshness, or potential errors. This is minimally adequate.
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 consists of a single, clear sentence with no extraneous information. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of parameters and output schema, the description adequately conveys the tool's purpose. It could mention what 'full profile information' includes, but is not necessary for 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 input schema has zero parameters with 100% coverage, so the description needs no parameter explanation. Baseline is 4, and the description meets that.
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 resource as 'full profile information for the authenticated Pubrio account'. It clearly differentiates from sibling tools, as no other tool retrieves the user's own profile.
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 (fetching own profile) but lacks explicit guidance on when not to use or alternatives. For a simple get operation with no parameters, this is acceptable but could be improved.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_timezonesA
Reference data: get all available timezone codes (free, no credits)
| 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 must carry the burden of behavioral disclosure. It implies a read-only, non-destructive operation but lacks details on response format, size, rate limits, or caching behavior. Given the simplicity of the tool (no parameters), the description is adequate but not thorough.
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 effectively conveys the purpose and a key benefit. It is extremely concise, front-loaded with the core action, and contains 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?
For a tool with no parameters and no output schema, the description provides the essential information: it returns all timezone codes. It is complete enough for an agent to understand the tool's function, though it could optionally mention the output format or typical use case.
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 zero parameters with 100% coverage, so the description does not need to add parameter details. It adds value by specifying the output will be 'timezone codes,' which goes beyond what the schema provides (which only specifies no parameters).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves all available timezone codes. It uses a specific verb ('get') and specifies the resource ('timezone codes'). Among siblings, it is distinct as a reference data tool for timezones, clearly differentiating from other data retrieval 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 mentions 'Reference data' and 'free, no credits,' hinting at low cost and suitability for lookups. However, it does not explicitly state when to use this tool over alternatives like enrich_company or get_locations, nor does it provide exclusions or context on when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_usageA
Get current credit usage and subscription information for your Pubrio account
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no provided annotations, the description fully discloses the tool's read-only nature ('Get'). It does not mention authentication, rate limits, or any other behavioral traits, but for a simple retrieval operation, this may be sufficient.
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 of 11 words, containing only essential information. 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 description is minimalist. While it explains the tool's purpose, it does not detail the return structure or any additional context beyond the basics. For a tool with no parameters and no output schema, this may be borderline adequate but leaves the agent guessing about the output format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description adds no parameter-specific information, which is acceptable given the tool's stateless nature.
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 clearly identifies the resource 'credit usage and subscription information for your Pubrio account'. It distinguishes itself from all sibling tools, which focus on monitors, lookups, and other 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 the tool should be used when one needs account usage or subscription details, but it does not explicitly state when to use it versus alternatives or when not to use it. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_userA
Get details about the currently authenticated user
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must convey behavioral traits. It only states it gets details, missing information about side effects, authentication requirements beyond the implied 'authenticated user', rate limits, or response structure.
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 unnecessary words. It is efficiently 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?
Given the simplicity of a zero-parameter tool with no output schema, the description adequately conveys the purpose. It could mention typical return fields but is sufficient for an AI to understand what it does.
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?
There are no parameters, so the schema coverage is 100% by default. The description adds no parameter information since none exist, meeting the baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves details about the currently authenticated user, using a specific verb and resource. It implicitly distinguishes itself from sibling tools like get_profile or lookup_person by focusing on the authenticated user's 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 versus alternatives like get_profile or get_usage. The description simply states what it does without contextualizing its appropriate use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_monitorsB
List all signal monitors with pagination and sorting
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number | |
| order_by | No | Sort field: "created_at", "last_modified", or "name" | |
| per_page | No | Results per page | |
| is_ascending_order | No | Sort in ascending order |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only mentions pagination and sorting but omits defaults, max limits, or whether it includes all monitors. Does not disclose 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?
Single sentence, to the point, no fluff. Perfectly 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?
Lacks return value description (no output schema). Does not specify default pagination values or behavior when parameters are omitted. For a list tool, this is 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?
Schema coverage is 100% with parameter descriptions. The description adds 'pagination and sorting' but does not provide additional meaning 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?
Clearly states verb 'list', resource 'signal monitors', and features 'pagination and sorting'. Distinguishes from siblings like 'get_monitor' (single item) and 'create_monitor'.
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 mention of when to use vs alternatives, but the description implies the basic use case. Sibling tools like search functions are not addressed, leaving gaps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_advertisementB
Look up detailed information about a specific advertisement by its search ID
| Name | Required | Description | Default |
|---|---|---|---|
| advertisement_search_id | Yes | Pubrio advertisement search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the basic purpose. It does not disclose any behavioral traits such as access restrictions, rate limits, or whether the operation is read-only.
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, well-structured sentence with no extraneous information. It is front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having only one parameter and no output schema, the description does not elaborate on what 'detailed information' includes, leaving the agent to guess the response structure and completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear parameter description. The tool description adds no additional semantic value 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 verb ('Look up'), resource ('advertisement'), and the key identifier ('search ID'), making it unambiguous. It distinguishes itself from sibling tools like 'search_ads' which likely returns multiple results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'search_ads' or other lookup tools. The agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_companyC
Look up detailed company information by domain, LinkedIn URL, or domain search ID
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | Company domain (e.g. "google.com") | |
| linkedin_url | No | Company LinkedIn URL | |
| domain_search_id | No | Pubrio domain search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given no annotations, the description carries the full burden of behavioral disclosure. It only states 'Look up detailed company information' without revealing mutation status, rate limits, authorization requirements, or the scope of 'detailed'. This is insufficient for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Front-loaded with verb and resource. Efficiently conveys the essential input variety.
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 many sibling tools (enrich_company, lookup_company_linkedin, search_companies), the description is too sparse. It does not explain return structure, depth of information, or how it differs from near-identical tools. Incomplete for effective decision-making.
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 each parameter already has a description. The tool description adds no extra meaning beyond listing the parameters. It does not clarify whether parameters are mutually exclusive, optional combinations, or preferred input format.
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 (look up) and resource (detailed company information), and lists the three possible input identifiers. This distinguishes it from search-based siblings, but does not explicitly differentiate from enrich_company or find_similar_companies.
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 enrich_company, lookup_company_linkedin, or search_companies. The description assumes the agent knows the purpose without contextualizing its role among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_company_linkedinB
Look up a company by its LinkedIn URL using the dedicated LinkedIn lookup endpoint
| Name | Required | Description | Default |
|---|---|---|---|
| linkedin_url | Yes | Company LinkedIn URL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It only describes the action and input, omitting traits like being a read-only operation, error handling for invalid URLs, or what data is returned. For a lookup tool, the 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 concise sentence, front-loaded with the key action and input. It avoids unnecessary words, though the phrase 'using the dedicated LinkedIn lookup endpoint' is somewhat redundant but clarifies the specific 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?
Given low complexity (one parameter, no output schema), the description is mostly adequate but lacks details on return values or limitations. For an agent to fully understand the tool's place among siblings, additional context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with 'linkedin_url' described as 'Company LinkedIn URL'. The tool description adds no additional meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'look up a company' via the specific input 'LinkedIn URL' and mentions the 'dedicated LinkedIn lookup endpoint', which distinguishes it from sibling tools like 'lookup_company' (which may use other identifiers) and 'lookup_person_linkedin'.
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 guidelines on when to use this tool versus alternatives (e.g., lookup_company, search_companies). It does not specify prerequisites (e.g., must have LinkedIn URL) or scenarios where it is not appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_jobB
Look up detailed information about a specific job posting by its search ID
| Name | Required | Description | Default |
|---|---|---|---|
| job_search_id | Yes | Pubrio job search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description only mentions 'look up detailed information' without disclosing read-only nature, rate limits, or any side effects. Fails to add 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?
Single sentence, no unnecessary words. Efficient and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup tool with one parameter and no output schema, description is minimally adequate but does not specify the return format or what 'detailed information' includes.
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 description for job_search_id. Description adds no extra meaning beyond what schema provides, so 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?
Description clearly states verb (look up), resource (job posting), and identifier (search ID). Distinguishes from sibling lookup_* tools by specifying 'job'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this vs. alternatives like search_jobs. Missing context for choosing this tool over related ones.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_lookalikeB
Look up a similar/lookalike company result by domain, LinkedIn URL, or domain search ID
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | Company domain (e.g. "google.com") | |
| linkedin_url | No | Company LinkedIn URL | |
| domain_search_id | No | Pubrio domain search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description implies read-only via 'look up', but does not explicitly state behavior (e.g., no side effects, idempotent). 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?
Single sentence, 15 words, no fluff. Front-loaded key 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?
No output schema, so description should hint at return structure (e.g., company ID, object). Lacks differentiation from siblings and return format details. Moderate completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, each parameter described adequately. Description lists the three identifiers but adds no new semantic information 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 it looks up a similar/lookalike company using domain, LinkedIn URL, or domain search ID. It distinguishes from lookup_company (exact company) and find_similar_companies (multiple suggestions), though not explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings like find_similar_companies or lookup_company. Does not mention 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.
lookup_monitor_logA
Look up detailed information about a specific monitor trigger log entry
| Name | Required | Description | Default |
|---|---|---|---|
| monitor_log_id | Yes | Monitor log UUID to look up |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It implies a read operation, but does not disclose permissions, rate limits, or behavior on missing entries. Adequate for a simple lookup.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with verb, no unnecessary words. Perfectly 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 low complexity (1 param, no output schema, no annotations), the description is mostly complete. Could mention return format or what 'detailed information' includes, but adequate for purpose.
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, so description adds no additional semantics beyond schema. 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 'Look up detailed information about a specific monitor trigger log entry', using specific verb and resource, and distinguishes from sibling tools like get_monitor_logs and get_monitor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like get_monitor_logs or get_monitor. Implicit usage from name/param but no explicit when-not or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_newsA
Look up detailed information about a specific news article by its search ID
| Name | Required | Description | Default |
|---|---|---|---|
| news_search_id | Yes | Pubrio news search ID |
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 mentions 'detailed information' but does not specify what fields are returned, error handling (e.g., if ID not found), rate limits, authentication requirements, or any destructive nature. 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 concise sentence that accurately captures the tool's purpose without any unnecessary words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup tool with one parameter and no output schema, the description is minimally adequate. However, it lacks details about the return format or any constraints, which would be useful for an AI agent. Given the low complexity, 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 only parameter, news_search_id, is described in the schema as 'Pubrio news search ID', and the description echoes that. Schema description coverage is 100%, so the description adds no additional meaning beyond what the schema already provides. 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 'look up', resource 'detailed information about a specific news article', and the method 'by its search ID'. It effectively distinguishes this from sibling tools like search_news (which retrieves summaries by criteria) and other lookup tools (lookup_company, 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 that a search_id is obtained from a prior search (e.g., search_news), but it does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or prerequisites. The context is clear but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_personC
Look up a person's professional profile by LinkedIn URL or Pubrio ID
| Name | Required | Description | Default |
|---|---|---|---|
| linkedin_url | No | Person LinkedIn URL | |
| people_search_id | No | Pubrio people search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description only indicates 'look up', implying a read operation, but does not confirm safety, permissions, or any constraints. No information on side effects or limits. The agent has minimal insight into behavior beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It front-loads the key information. However, it is so brief that it might sacrifice completeness 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?
Given the absence of output schema and annotations, the description fails to explain what the 'professional profile' contains or how the tool behaves with multiple inputs. The tool ecosystem is large, and a more detailed description 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?
Schema coverage is 100%; both parameters have descriptions in the schema. The tool description adds the insight that either parameter can be used exclusively, but this is already inferable from the schema. The added value is marginal.
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 (look up) and resource (person's professional profile). It identifies two input identifiers (LinkedIn URL or Pubrio ID). However, it does not distinguish this tool from siblings like 'lookup_person_linkedin' or 'enrich_person'.
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. The description does not mention prerequisites, when not to use it, or context about the two input options. With many sibling tools, this is a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_person_linkedinA
Look up a person's professional profile by their LinkedIn URL (dedicated LinkedIn lookup endpoint)
| Name | Required | Description | Default |
|---|---|---|---|
| people_linkedin_url | Yes | Person LinkedIn URL |
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 basic behavior (lookup) but does not mention any limitations, authentication requirements, or error conditions. For a simple read operation, this is minimally adequate.
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, well-formed sentence with no unnecessary words. It directly conveys the tool's purpose and input requirement.
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, no annotations), the description is reasonably complete. It specifies the input (LinkedIn URL) and the action (look up professional profile). However, it could benefit from noting what is returned (e.g., profile data) or potential failure modes.
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 coverage is 100% and the parameter description ('Person LinkedIn URL') is clear. The description does not add additional context 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 action ('look up'), the resource ('professional profile'), and the specific input method ('by their LinkedIn URL'). The phrase 'dedicated LinkedIn lookup endpoint' distinguishes it from general person lookup tools like lookup_person.
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 LinkedIn URLs, but does not provide explicit guidance on when to use this tool versus alternatives like lookup_person or lookup_company_linkedin. No exclusions or conditions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_technologyC
Look up technologies used by a company
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | Company domain (e.g. "google.com") | |
| domain_id | No | Pubrio domain ID (integer) | |
| linkedin_url | No | Company LinkedIn URL | |
| domain_search_id | No | Pubrio domain search ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description should cover behavioral traits, but it only states the basic purpose. It does not mention authentication requirements, output format, or any side effects (though likely none).
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, which is very concise but may be too terse. It lacks structure or additional clarifying sentences that would improve usability without being 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 the tool's simplicity (4 optional params, no output schema, no required params), the description is minimally complete. However, it does not clarify that only one company is looked up per call, nor what the output contains, leaving potential 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?
All 4 parameters have descriptions in the input schema (100% coverage), so the description adds little extra value. The description does not clarify usage constraints (e.g., at least one parameter required) or how parameters map to the lookup.
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 'Look up technologies used by a company' clearly states the verb and resource. It distinguishes from sibling lookup tools (e.g., lookup_company, lookup_person) by specifying 'technologies', but does not differentiate from search_technologies which may also return technologies per company.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like search_technologies or other lookup tools. The description lacks when-to-use/when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_batch_redeemA
Check the status and results of a batch contact redeem operation
| Name | Required | Description | Default |
|---|---|---|---|
| redeem_query_id | Yes | Batch redeem query ID returned from batch_redeem_contacts |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states 'check status and results' without disclosing behavioral details such as whether the call is idempotent, any polling behavior, or error handling. This lack of transparency is insufficient for an agent to safely invoke the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no extraneous words. It earns its place by clearly stating the tool's function without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description should explain the expected result format (e.g., status, counts). It only says 'status and results', which is vague. For a simple tool with one parameter, this is minimally adequate but leaves room for ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage for parameters is 100%, with a clear description of 'redeem_query_id'. The tool description adds no additional meaning beyond the schema, merely repeating the concept. Baseline of 3 is appropriate as schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Check' and the resource 'status and results of a batch contact redeem operation'. It distinguishes from sibling tools like 'batch_redeem_contacts' which initiates the batch, making the purpose 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 after a batch redeem operation, but it does not explicitly state when to use this tool versus alternatives, nor does it provide context for polling or expected workflow. A more explicit guideline would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
retry_monitorC
Retry a failed monitor trigger by log ID
| Name | Required | Description | Default |
|---|---|---|---|
| monitor_id | Yes | Monitor UUID | |
| monitor_log_id | Yes | Monitor log ID to retry | |
| is_use_original_destination | No | Whether to use the original destination configuration |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It fails to disclose any behavioral traits such as side effects (e.g., does it create a new log entry?), idempotency, required permissions, or error handling. The description 'Retry a failed monitor trigger by log ID' 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 sentence with no superfluous words. It is concise and front-loaded, stating the core action immediately.
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 low complexity (3 params, no output schema, no annotations), the description lacks completeness. It does not explain the return value, side effects, prerequisites, or relationship to other monitor operations. Important 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?
Schema coverage is 100%, so baseline is 3. The description adds no parameter information beyond what is already in the schema. It mentions 'by log ID' but that's already the parameter 'monitor_log_id' description. No extra 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 'retry' and identifies the resource as 'failed monitor trigger by log ID', clearly stating the action. However, it does not fully distinguish from sibling tools like 'test_run_monitor' or 'lookup_monitor_log', as it lacks context on what 'trigger' means specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. There is no mention of prerequisites, conditions (e.g., only for failed logs), or when not to use it. The description is purely operational.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reveal_contactA
Reveal email (work or personal) or phone number for a person (uses 1 credit per contact type). Provide people_search_id from search_people or linkedin_url
| Name | Required | Description | Default |
|---|---|---|---|
| linkedin_url | No | Person LinkedIn URL | |
| people_search_id | No | Pubrio people search ID | |
| people_contact_types | No | Comma-separated contact types: email-personal, email-work, phone |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, description carries full burden. Discloses credit usage per contact type but does not mention idempotency, side effects, or whether it modifies data. Lacks explicit read-only indication.
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?
Two sentences, no fluff, front-loaded with purpose. Every sentence serves a 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?
No output schema, so description should hint at return value. Does not mention what the tool returns (e.g., the revealed email/phone or error). Missing critical information for a 3-param tool with 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 coverage is 100%, baseline 3. Description adds meaning by specifying that either people_search_id or linkedin_url must be provided, and that credit cost applies per contact type, which goes 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?
Clearly states verb 'Reveal' and resource 'email or phone number for a person', specifies credit cost per contact type. Distinguishes from sibling lookup_person/enrich_person by focusing on contact 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?
Mentions prerequisite: provide people_search_id or linkedin_url. Does not explicitly state when to use this tool versus alternatives like lookup_person or enrich_person.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reveal_monitor_signatureB
Reveal the webhook signature secret for a monitor (for verifying webhook deliveries)
| Name | Required | Description | Default |
|---|---|---|---|
| monitor_id | Yes | Monitor UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No behavioral traits beyond the action 'reveal' are disclosed. There is no mention of permissions required, side effects, or whether the secret is rotated. Since no annotations exist, the description carries the full burden but 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?
Single sentence, directly to the point, no redundant words. Front-loaded with 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 description covers the basic functionality but omits return value information (no output schema). For a simple tool, it is adequate but not 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% and the description does not add any new meaning beyond the schema's 'Monitor UUID' description. 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 'Reveal' and the resource 'webhook signature secret for a monitor', with a parenthetical clarifying the purpose. It effectively distinguishes from sibling tools that handle monitor CRUD or other 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?
No guidance on when to use this tool versus alternatives. The context of verifying webhook deliveries is implied but not explicit, and no exclusions or alternative tools are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_adsA
Search company advertisements and ad campaigns by keyword, headline, target location, and date. Returns advertisement_search_id for use with lookup_advertisement
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| domains | No | Comma-separated company domains | |
| per_page | No | Results per page (default 25, max 25) | |
| companies | No | Comma-separated company names | |
| end_dates | No | Comma-separated end date filters | |
| headlines | No | Comma-separated ad headlines | |
| start_dates | No | Comma-separated start date filters | |
| search_terms | No | Comma-separated ad search terms | |
| linkedin_urls | No | Comma-separated company LinkedIn URLs | |
| target_locations | No | Comma-separated target location codes | |
| company_locations | No | Comma-separated company location codes | |
| filter_conditions | No | JSON string of filter conditions | |
| exclude_target_locations | No | Comma-separated target locations to exclude |
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 discloses that the tool returns an 'advertisement_search_id' for subsequent lookup, which is helpful. However, it does not mention pagination behavior, rate limits, or authentication requirements. The schema indicates pagination parameters, but the description remains silent on how results are delivered.
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 two front-loaded sentences. The first sentence covers the core action and filters, and the second sentence provides a key output detail and links to a related tool. Every phrase earns its place without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 13 parameters, no required fields, and no output schema, the description should provide more context about the response structure and pagination. It mentions the return of 'advertisement_search_id' but does not clarify if the response is an array of results or includes metadata. This is a notable gap for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter having a description. The description adds minimal extra meaning by summarizing the main filter types (keyword, headline, target location, date) already covered in the schema. Baseline score of 3 is appropriate as the description does not significantly enhance parameter understanding 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 'Search' and identifies the resource as 'company advertisements and ad campaigns'. It lists key filters (keyword, headline, target location, date) and distinctively returns an 'advertisement_search_id' for use with 'lookup_advertisement'. This clearly differentiates from sibling search tools like 'search_companies' or 'search_jobs'.
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 searching for company ads, but it does not explicitly state when to use this tool versus alternatives. It provides a hint about a workflow by mentioning the return ID can be used with 'lookup_advertisement', but lacks explicit guidance on prerequisites or exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_companiesA
Search B2B companies by name, domain, location, industry, technology, or headcount. Tip: use get_locations, search_verticals, and search_technologies to find valid filter codes
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| places | No | Comma-separated place names | |
| domains | No | Comma-separated list of domains (e.g. "google.com,apple.com") | |
| keywords | No | Comma-separated keywords | |
| per_page | No | Results per page (default 25, max 25) | |
| companies | No | Comma-separated company domain_search_id UUIDs | |
| locations | No | Comma-separated location codes | |
| verticals | No | Comma-separated industry verticals | |
| categories | No | Comma-separated technology category IDs | |
| job_titles | No | Comma-separated job titles to filter by | |
| revenue_max | No | Maximum revenue | |
| revenue_min | No | Minimum revenue | |
| company_name | No | Company name to search for | |
| technologies | No | Comma-separated technologies | |
| employees_max | No | Maximum number of employees | |
| employees_min | No | Minimum number of employees | |
| job_locations | No | Comma-separated job location codes | |
| linkedin_urls | No | Comma-separated LinkedIn company URLs | |
| exclude_fields | No | Comma-separated fields to exclude from response | |
| exclude_places | No | Comma-separated place names to exclude | |
| news_galleries | No | Comma-separated news gallery names | |
| news_categories | No | Comma-separated news categories | |
| founded_year_end | No | Founded year range end | |
| job_posted_dates | No | Comma-separated job posted dates (YYYY-MM-DD) | |
| news_gallery_ids | No | Comma-separated news gallery IDs | |
| similarity_score | No | Similarity score threshold (0-1) | |
| exclude_locations | No | Comma-separated ISO country codes to exclude | |
| founded_year_start | No | Founded year range start | |
| vertical_categories | No | Comma-separated vertical category IDs | |
| news_published_dates | No | Comma-separated news published dates (YYYY-MM-DD) | |
| job_exclude_locations | No | Comma-separated job locations to exclude | |
| advertisement_end_dates | No | Comma-separated ad end dates (YYYY-MM-DD) | |
| vertical_sub_categories | No | Comma-separated vertical sub-category IDs | |
| advertisement_start_dates | No | Comma-separated ad start dates (YYYY-MM-DD) | |
| advertisement_search_terms | No | Comma-separated advertisement search terms | |
| is_enable_similarity_search | No | Enable similarity search | |
| advertisement_target_locations | No | Comma-separated ad target location codes | |
| advertisement_exclude_target_locations | No | Comma-separated ad target locations to exclude |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only says 'search' without disclosing behavioral traits such as pagination, rate limits, or whether it is read-only. The agent cannot infer side effects or constraints.
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 two sentences: the first clearly states the tool's purpose, and the second provides a useful tip. No unnecessary words; front-loaded with essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity with 38 parameters and no output schema, the description is brief and does not explain return format, pagination, or combination rules. The tip is helpful but incomplete for a tool of this scale.
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 all 38 parameters described, so baseline is 3. The description adds value by advising the use of other tools to obtain valid filter codes, which helps the agent understand parameter values 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 'Search B2B companies' with specific criteria (name, domain, location, industry, technology, headcount), differentiating it from sibling search tools focused on people, jobs, or news.
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 includes a tip to use get_locations, search_verticals, and search_technologies to find valid filter codes, guiding the agent on how to prepare inputs. However, it does not explicitly state when to use this tool versus alternatives like search_people.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_jobsA
Search job postings across companies by title, keyword, location, and date. Returns job_search_id for use with lookup_job
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| titles | No | Comma-separated job titles | |
| domains | No | Comma-separated company domains | |
| per_page | No | Results per page (default 25, max 25) | |
| companies | No | Comma-separated company names | |
| locations | No | Comma-separated job locations | |
| search_term | No | Job search term | |
| posted_dates | No | Comma-separated posted date filters | |
| search_terms | No | Comma-separated job search terms | |
| linkedin_urls | No | Comma-separated company LinkedIn URLs | |
| company_locations | No | Comma-separated company location codes | |
| exclude_locations | No | Comma-separated locations to exclude |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must bear the full burden of behavioral disclosure. It lacks details on read-only nature, pagination behavior, rate limits, or parameter interactions. The description merely restates the purpose without safety or side-effect information.
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?
Two sentences, front-loaded with the main action and a clear follow-up about the return value. No extraneous text.
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 12 parameters and no output schema, the description is somewhat sparse. It mentions the returned job_search_id but not other potential return fields. It provides minimal context for parameter usage, leaving detail to the 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 no additional parameter meaning is necessary. The description lists a few parameter types (title, keyword, location, date) but does not clarify relationships or constraints beyond the schema. 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?
Description clearly states the tool searches job postings across companies with filters like title, keyword, location, and date. It also notes the return value (job_search_id) and its link to lookup_job, distinguishing it from sibling lookup 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 mentions the returned job_search_id is for use with lookup_job, implying a sequential usage pattern. However, it does not explicitly state when not to use this tool or contrast it with other search siblings like search_ads.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_newsA
Search company news and press releases. Tip: use get_news_categories and get_news_galleries for valid filter values. Returns news_search_id for use with lookup_news
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| domains | No | Comma-separated company domains | |
| per_page | No | Results per page (default 25, max 25) | |
| companies | No | Comma-separated company names | |
| locations | No | Comma-separated location codes | |
| categories | No | Comma-separated news categories | |
| search_term | No | News search term | |
| search_terms | No | Comma-separated news search terms | |
| linkedin_urls | No | Comma-separated company LinkedIn URLs | |
| news_galleries | No | Comma-separated news gallery names | |
| news_languages | No | Comma-separated news language codes | |
| published_dates | No | Comma-separated published date filters | |
| news_gallery_ids | No | Comma-separated news gallery IDs | |
| company_locations | No | Comma-separated company location codes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It does not mention whether the tool is read-only, any rate limits, pagination behavior (beyond per_page max of 25), or effects on data. The description only hints at the return value (news_search_id) but lacks deeper 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 extremely concise: one sentence stating the purpose, a tip, and a note about the return value. It is front-loaded with essential information 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?
Given the tool has 14 optional parameters and no output schema, the description covers the main purpose, usage tips, and integration with sibling tools. It does not explain parameter interactions or result structure, but the rich schema descriptions partially compensate. The description is reasonably complete for guiding initial use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter having a description. The tool description adds marginal value beyond the schema by explaining the purpose and linking to other tools, but does not elaborate on parameter semantics or constraints. 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 searches company news and press releases, and mentions related tools for filter values and a follow-up lookup, distinguishing it from siblings like lookup_news, get_news_categories, and get_news_galleries.
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?
Provides a tip to use get_news_categories and get_news_galleries for valid filter values, and mentions the returned news_search_id for use with lookup_news. This gives clear guidance on how to use the tool effectively, though it does not explicitly state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_peopleA
Search business professionals by name, title, department, seniority, or company. Tip: use get_departments, get_department_functions, and get_management_levels to find valid filter codes
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| domains | No | Comma-separated company domains | |
| peoples | No | Comma-separated people identifiers | |
| per_page | No | Results per page (default 25, max 25) | |
| companies | No | Comma-separated company names | |
| employees | No | Comma-separated employee range (e.g. "1,1000") | |
| departments | No | Comma-separated departments | |
| people_name | No | Person name to search | |
| search_term | No | General search term | |
| linkedin_urls | No | Comma-separated person LinkedIn URLs | |
| people_titles | No | Comma-separated job titles | |
| people_locations | No | Comma-separated people location codes | |
| company_locations | No | Comma-separated company location codes | |
| management_levels | No | Comma-separated seniority levels | |
| department_functions | No | Comma-separated department functions | |
| company_linkedin_urls | No | Comma-separated company LinkedIn URLs |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only says 'Search business professionals' but does not disclose behavior like mutation, side effects, pagination, or result limits. Minimal behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences and a tip, fully front-loaded with essential information. 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?
Given 16 parameters, no output schema, and no annotations, the description is too brief. It covers basic purpose and provides a tip but lacks info on output, pagination, or when to use vs sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions, so baseline is 3. The description adds value by listing key criteria and the tip about using other tools for valid filter codes, which goes 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?
Clearly states the tool searches business professionals by specific criteria like name, title, department, seniority, or company. However, it does not explicitly differentiate from sibling search or lookup 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?
Provides a helpful tip on using get_departments, get_department_functions, and get_management_levels to find valid filter codes. But lacks guidance on when to use this tool vs alternatives like search_companies or lookup_person.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_technologiesA
Reference data: search for technology names by keyword to find valid technology filter values (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | No | Keyword to search technologies |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It reveals that the tool is free and uses no credits, but does not specify if it's read-only, any rate limits, or output behavior. Some behavioral info present but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence. It front-loads the category ('Reference data') and provides key details concisely. 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 single-parameter tool with no output schema, the description sufficiently covers purpose, cost implications, and usage context. It could mention result format but is largely complete given the tool's simplicity.
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 one parameter 'keyword' described as 'Keyword to search technologies'. The description adds minimal new meaning beyond the schema, stating 'search for technology names by keyword'. Baseline score applied 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 (search), resource (technology names), and purpose (find valid filter values). It distinguishes from siblings like 'lookup_technology' and 'search_technology_categories' by focusing on keyword search for filter values.
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 specifies it is 'Reference data' and 'free, no credits', indicating suitable usage context without cost. While it doesn't explicitly list when not to use, the 'Reference data' label implies it's for lookup purposes, differentiating it from other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_technology_categoriesA
Reference data: search for technology category names by keyword to find valid technology category filter values (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | No | Keyword to search technology categories |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It notes cost ('free, no credits') and that it is 'reference data', implying non-destructive behavior. However, it does not disclose output format, pagination, or behavior with empty keyword.
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. Every word adds value, efficiently conveying purpose, resource, and key usage note.
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 tool with one optional parameter and no output schema, the description adequately states purpose and cost but omits return value details (e.g., list of category objects). This leaves the agent uncertain about the response structure.
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 description adds meaning beyond the schema by explaining the use case (finding valid filter values) and cost implication, though it does not specify parameter constraints like format or required length.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('search'), resource ('technology category names'), and purpose ('find valid technology category filter values'). It distinguishes from sibling tools like search_technologies and search_vertical_categories by specifying 'technology categories' and noting 'free, no credits' as a usage characteristic.
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 reference lookup for filter values and mentions it is free. It does not explicitly state when to avoid or provide alternatives, but the context is clear for a simple search tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_vertical_categoriesA
Reference data: search for vertical category names by keyword to find valid vertical category filter values (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | No | Keyword to search vertical categories |
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 discloses that the tool is 'free, no credits', which is helpful. However, it does not mention any potential limitations (e.g., result set size, pagination) or side effects, which is a gap for a search operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence that front-loads the core message ('Reference data'), with no unnecessary words. Every part serves the 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 1-parameter tool with no output schema, the description provides essential context (purpose, cost). However, since there is no output schema, mentioning the expected return format (e.g., list of categories) would improve completeness. Slight gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a clear param description: 'Keyword to search vertical categories'. The tool description adds 'to find valid vertical category filter values', but this only slightly extends the schema. No additional meaning is added 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 tool's purpose: 'search for vertical category names by keyword to find valid vertical category filter values'. It uses a specific verb+resource ('search for vertical category names') and distinguishes from siblings like 'search_vertical_sub_categories' and 'get_news_categories' by emphasizing it's for top-level vertical categories.
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 states this is 'reference data' used 'to find valid vertical category filter values', giving clear context. However, it does not explicitly state when not to use it or mention alternatives among siblings, though the purpose is clear enough for appropriate selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_verticalsA
Reference data: search for industry vertical names by keyword to find valid vertical filter values (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | No | Keyword to search verticals |
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 discloses that the tool is free and uses no credits, but does not explain output format, pagination, error handling, or whether results are sorted or limited.
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, well-structured sentence that front-loads key context ('Reference data') and efficiently conveys purpose, usage, and cost in minimal 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 keyword search tool with one parameter and no output schema, the description adequately covers purpose and usage. It could specify the output type, but given the tool's simplicity, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'keyword'. The description adds minimal meaning beyond the schema, essentially restating the purpose. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for industry vertical names by keyword, with specific purpose to find valid vertical filter values. It distinguishes itself from sibling search tools by specifying 'vertical' and noting it is reference data, free, and uses no credits.
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 explicitly indicates when to use the tool: to find valid vertical filter values. It implies usage context with 'Reference data' and 'free, no credits', but does not mention when not to use it or compare with sibling tools like search_vertical_categories.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_vertical_sub_categoriesA
Reference data: search for vertical sub-category names by keyword to find valid vertical sub-category filter values (free, no credits)
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | No | Keyword to search vertical sub-categories |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool is reference data and 'free, no credits', indicating a read-only, non-destructive operation, which is sufficient for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words, efficiently conveying the tool's purpose and key characteristics.
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 search tool with one parameter and no output schema, the description sufficiently covers what the tool does and its free nature. It could mention output format but is not critical.
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 description for 'keyword'. The description adds context by explaining the purpose is to find valid filter values, enhancing understanding beyond the schema alone.
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 searches for vertical sub-category names by keyword to find valid filter values, distinguishing it from sibling tools like search_vertical_categories and search_verticals.
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 for finding sub-category filter values but does not explicitly state when to use this tool versus alternatives or mention 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.
test_run_monitorA
Execute a test run of a signal monitor to preview what it would trigger
| Name | Required | Description | Default |
|---|---|---|---|
| tried_at | No | ISO 8601 timestamp to simulate the run at | |
| monitor_id | Yes | Monitor UUID to test |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
States it is a test run and preview, indicating non-destructive behavior. With no annotations, this is adequate behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Verb appears first, achieving front-loading.
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?
Adequately covers purpose and parameters. Lacks explicit mention of return value, but 'preview' implies output. Appropriate for a simple test tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so baseline is 3. Description adds only minor restatement of schema descriptions. No additional semantic value beyond 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?
Description uses specific verb-resource combination: 'Execute a test run of a signal monitor'. It clearly distinguishes from sibling tools like create_monitor or retry_monitor.
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?
Implies usage for previewing triggers but provides no explicit when-to-use or when-not-to-use guidance, nor mentions alternatives like retry_monitor.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_monitorB
Update an existing signal monitor configuration
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Monitor name | |
| domains | No | Comma-separated company domains to monitor | |
| companies | No | Comma-separated company UUIDs to monitor | |
| is_active | No | Whether the monitor is active | |
| is_paused | No | Whether the monitor is paused | |
| monitor_id | Yes | Monitor UUID to update | |
| description | No | Monitor description | |
| signal_types | No | Signal types: "jobs", "news", "advertisements" | |
| linkedin_urls | No | Comma-separated company LinkedIn URLs to monitor | |
| detection_mode | No | Detection mode: "new" or "new_and_updated" | |
| signal_filters | No | Signal-specific filters array | |
| company_filters | No | Advanced company filters as JSON string | |
| frequency_minute | No | Check frequency in minutes | |
| max_daily_trigger | No | Maximum daily triggers | |
| notification_email | No | Email for failure notifications | |
| retry_delay_second | No | Retry delay in seconds | |
| max_failure_trigger | No | Maximum failure triggers before pausing | |
| is_people_enrichment | No | Enable people enrichment on trigger | |
| is_company_enrichment | No | Enable company enrichment on trigger | |
| max_retry_per_trigger | No | Maximum retries per trigger | |
| max_records_per_trigger | No | Maximum records per trigger | |
| people_enrichment_configs | No | People enrichment configuration array |
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 states 'update' without revealing any behavioral traits such as required permissions, side effects, or what happens to unchanged fields.
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, though it lacks any structured detail. It is concise but not particularly informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the tool (22 parameters, no output schema, no annotations), the description is insufficient. It does not explain return values or behavioral context needed 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 has 100% description coverage for all 22 parameters, so the description adds no additional meaning. 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 'update' and resource 'existing signal monitor configuration', clearly distinguishing it from sibling tools like create_monitor, delete_monitor, and get_monitor.
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 monitor, but provides no explicit guidance on when to use this tool versus alternatives (e.g., create_monitor or delete_monitor).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_webhookB
Test a webhook destination configuration with sample data
| Name | Required | Description | Default |
|---|---|---|---|
| headers | No | JSON string of custom headers | |
| webhook_url | Yes | Webhook URL to test |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description is too brief to disclose behavioral traits such as whether the webhook actually fires, potential errors, or any state changes.
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. While very brief, it wastes no words, though it could be more informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and lack of output schema, the description is minimal and does not explain what 'sample data' is used or what the result looks like. 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?
Schema coverage is 100%, so the schema describes the parameters fully. The description adds no additional meaning beyond the schema, earning 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 clearly states the verb 'test' and the resource 'webhook destination configuration', and it is distinct from all sibling tools, which involve monitors, contacts, lookups, 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 provides no guidance on when to use this tool versus alternatives, nor any context about prerequisites or side effects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
21 tool updates
v1.0.5- Added
create_monitor - Added
delete_monitor - Added
duplicate_monitor - Added
get_monitor - Added
get_monitor_logs - Added
get_monitor_stats - Added
get_news_galleries - Added
get_news_languages - Added
get_profile - Added
list_monitors - Added
lookup_monitor_log - Added
retry_monitor - Added
reveal_monitor_signature - Changed
search_companies28 fields changed- added
Input schema / properties / advertisement_end_datesAdded value: +{ + "description": "Comma-separated ad end dates (YYYY-MM-DD)", + "type": "string" +} - added
Input schema / properties / advertisement_exclude_target_locationsAdded value: +{ + "description": "Comma-separated ad target locations to exclude", + "type": "string" +} - added
Input schema / properties / advertisement_search_termsAdded value: +{ + "description": "Comma-separated advertisement search terms", + "type": "string" +} - added
Input schema / properties / advertisement_start_datesAdded value: +{ + "description": "Comma-separated ad start dates (YYYY-MM-DD)", + "type": "string" +} - added
Input schema / properties / advertisement_target_locationsAdded value: +{ + "description": "Comma-separated ad target location codes", + "type": "string" +} - added
Input schema / properties / categoriesAdded value: +{ + "description": "Comma-separated technology category IDs", + "type": "string" +} - added
Input schema / properties / companiesAdded value: +{ + "description": "Comma-separated company domain_search_id UUIDs", + "type": "string" +} - added
Input schema / properties / exclude_fieldsAdded value: +{ + "description": "Comma-separated fields to exclude from response", + "type": "string" +} - added
Input schema / properties / exclude_locationsAdded value: +{ + "description": "Comma-separated ISO country codes to exclude", + "type": "string" +} - added
Input schema / properties / exclude_placesAdded value: +{ + "description": "Comma-separated place names to exclude", + "type": "string" +} - added
Input schema / properties / founded_year_endAdded value: +{ + "description": "Founded year range end", + "type": "number" +} - added
Input schema / properties / founded_year_startAdded value: +{ + "description": "Founded year range start", + "type": "number" +} - added
Input schema / properties / is_enable_similarity_searchAdded value: +{ + "description": "Enable similarity search", + "type": "boolean" +} - added
Input schema / properties / job_exclude_locationsAdded value: +{ + "description": "Comma-separated job locations to exclude", + "type": "string" +} - added
Input schema / properties / job_locationsAdded value: +{ + "description": "Comma-separated job location codes", + "type": "string" +} - added
Input schema / properties / job_posted_datesAdded value: +{ + "description": "Comma-separated job posted dates (YYYY-MM-DD)", + "type": "string" +} - added
Input schema / properties / job_titlesAdded value: +{ + "description": "Comma-separated job titles to filter by", + "type": "string" +} - added
Input schema / properties / linkedin_urlsAdded value: +{ + "description": "Comma-separated LinkedIn company URLs", + "type": "string" +} - added
Input schema / properties / news_categoriesAdded value: +{ + "description": "Comma-separated news categories", + "type": "string" +} - added
Input schema / properties / news_galleriesAdded value: +{ + "description": "Comma-separated news gallery names", + "type": "string" +} - added
Input schema / properties / news_gallery_idsAdded value: +{ + "description": "Comma-separated news gallery IDs", + "type": "string" +} - added
Input schema / properties / news_published_datesAdded value: +{ + "description": "Comma-separated news published dates (YYYY-MM-DD)", + "type": "string" +} - added
Input schema / properties / placesAdded value: +{ + "description": "Comma-separated place names", + "type": "string" +} - added
Input schema / properties / revenue_maxAdded value: +{ + "description": "Maximum revenue", + "type": "number" +} - added
Input schema / properties / revenue_minAdded value: +{ + "description": "Minimum revenue", + "type": "number" +} - added
Input schema / properties / similarity_scoreAdded value: +{ + "description": "Similarity score threshold (0-1)", + "type": "number" +} - added
Input schema / properties / vertical_categoriesAdded value: +{ + "description": "Comma-separated vertical category IDs", + "type": "string" +} - added
Input schema / properties / vertical_sub_categoriesAdded value: +{ + "description": "Comma-separated vertical sub-category IDs", + "type": "string" +}
- Added
search_technologies - Added
search_technology_categories - Added
search_vertical_categories - Added
search_vertical_sub_categories - Added
search_verticals - Added
test_run_monitor - Added
update_monitor
14 tool updates
- Removed
create_monitor - Removed
delete_monitor - Removed
duplicate_monitor - Removed
get_monitor - Removed
get_news_galleries - Removed
get_news_languages - Removed
list_monitors - Removed
search_technologies - Removed
search_technology_categories - Removed
search_vertical_categories - Removed
search_vertical_sub_categories - Removed
search_verticals - Removed
test_run_monitor - Removed
update_monitor
5 tool updates
- Removed
get_monitor_logs - Removed
get_monitor_stats - Removed
get_profile - Removed
retry_monitor - Removed
reveal_monitor_signature
50 tool updates
v1.0.2- First observed
batch_redeem_contacts - First observed
create_monitor - First observed
delete_monitor - First observed
duplicate_monitor - First observed
enrich_company - First observed
enrich_person - First observed
find_similar_companies - First observed
get_company_sizes - First observed
get_department_functions - First observed
get_departments - First observed
get_locations - First observed
get_management_levels - First observed
get_monitor - First observed
get_monitor_chart - First observed
get_monitor_logs - First observed
get_monitor_stats - First observed
get_news_categories - First observed
get_news_galleries - First observed
get_news_languages - First observed
get_profile - First observed
get_timezones - First observed
get_usage - First observed
get_user - First observed
list_monitors - First observed
lookup_advertisement - First observed
lookup_company - First observed
lookup_company_linkedin - First observed
lookup_job - First observed
lookup_lookalike - First observed
lookup_news - First observed
lookup_person - First observed
lookup_person_linkedin - First observed
lookup_technology - First observed
query_batch_redeem - First observed
retry_monitor - First observed
reveal_contact - First observed
reveal_monitor_signature - First observed
search_ads - First observed
search_companies - First observed
search_jobs - First observed
search_news - First observed
search_people - First observed
search_technologies - First observed
search_technology_categories - First observed
search_vertical_categories - First observed
search_vertical_sub_categories - First observed
search_verticals - First observed
test_run_monitor - First observed
update_monitor - First observed
validate_webhook
TDQS
Most tools are clearly distinct by verb-noun pattern (e.g., search_people vs search_companies). Some overlap exists between enrich_* and lookup_* pairs, but descriptions clarify purpose differences (enrich uses credits for details). Overall minimal ambiguity.
All tools follow a consistent verb_noun pattern in snake_case (e.g., create_monitor, search_people, get_company_sizes). A few use 'batch' or 'query' as verb, but still fit the pattern seamlessly.
With 51 tools, the set is heavy but serves a broad domain (search, enrichment, monitoring, reference data). Each tool has a distinct role, but the count approaches the upper limit of what is easily navigable.
Core workflows (CRUD for monitors, search+lookup for entities, enrichment, reference data) are well-covered. Minor gaps exist (e.g., no contact list management, no export tools), but typical agent tasks are supported.
Maintenance
Related MCP Connectors
Hosted MCP server for real-world data: business registries, sanctions, companies, domains, crypto.
Remote MCP server to enrich company profiles with structured B2B data and confidence scores.
Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.
Agent-native MCP server over 49M+ US public and government records, privacy-first, always current.
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol (MCP) server that provides access to Crunchbase data for AI assistants. This server allows AI assistants to search for companies, get company details, funding information, acquisitions, and people data from Crunchbase.516MIT
- MIT
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with Apollo.io API for sales and marketing activities. Provides tools to search for companies and contacts, enrich person and organization data, and manage accounts with comprehensive lead generation capabilities.11MIT
- AlicenseBqualityCmaintenance🚀 Active Fork of executeautomation/mcp-playwright This repository is an actively maintained continuation of the original MCP Playwright server: >👉 https://github.com/executeautomation/mcp-playwright A Model Context Protocol server that provides browser automation capabilities using Playwright.63218,1221MIT
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/pubrio/pubrio-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server