Descovo — B2B contact data
Server Details
B2B contact data for AI agents: search 700M+ people, reveal work emails. Pay per record.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 5 tools
The set mostly separates discovery, schema inspection, and execution clearly. However, list_all_endpoints, search_endpoints, and list_tag_packs all participate in endpoint discovery/tag filtering, so their boundaries depend on the descriptions rather than being self-evident.
All names use snake_case and begin with clear verbs (call, get, list, search). Minor deviations like the adjective suffixes in get_endpoint_details_full and list_all_endpoints slightly break the pure verb_noun pattern but remain predictable.
Five tools is well-scoped for a dynamic API gateway: search/list endpoints, inspect endpoint schemas, browse tag packs, and execute operations. Each tool has a plausible role without bloat.
The surface covers the full meta-workflow: discovery through search/list/tag packs, schema inspection through get_endpoint_details_full, and execution through call_operation. Because call_operation can reach any Descovo API operation, there are no obvious dead ends.
Available Tools
5 toolscall_operationAInspect
Execute any Descovo API operation by operationId.
IMPORTANT:
apiKey is NOT required in the body if the MCP client sends an x-api-key header (most configs do). The backend auto-injects it.
Prefer search_endpoints() first when operation choice is ambiguous.
Use get_endpoint_details_full(operationId='...') first for complex/nested parameter shapes.
Args: operationId: The operation ID to call params: Parameters dict: {"body": {...}, "path": {...}, "query": {...}}
Returns: API response data or error details.
| Name | Required | Description | Default |
|---|---|---|---|
| params | No | ||
| operationId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behavioral traits: auto-injection of apiKey, fallback recommendations, and return of error details. No contradictions with missing annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Compact, well-organized into IMPORTANT and Args sections; every sentence adds value 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?
Fully covers usage, parameters, and return value (API response or error details), meeting all needs for a generic API caller 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?
Despite 0% schema coverage, the description fully explains both parameters: operationId as string and params as dict with body/path/query, adding essential structural detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Explicitly states the tool executes 'any Descovo API operation by operationId', clearly defining its purpose and distinguishing it from sibling tools like search_endpoints and get_endpoint_details_full.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit guidance: when to omit apiKey (auto-injection), when to prefer search_endpoints (ambiguous choice), and when to use get_endpoint_details_full (complex parameters).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_endpoint_details_fullAInspect
Get COMPLETE schema and details for a specific API operation.
Use this BEFORE calling an API to understand exactly what parameters are needed.
Args: operationId: The operation ID (e.g., "syncContactEnrichment")
Returns: Complete schema including all required/optional fields, request body schema, response schema, and example usage.
| Name | Required | Description | Default |
|---|---|---|---|
| operationId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It explains the return includes complete schema, request/response details, and examples. This adequately communicates the read-only nature and behavior, though it omits mention of error handling or invalid inputs.
Agents need to know what a tool does to the world before calling 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 only four sentences, each earning its place. It front-loads the purpose, gives usage advice, and then lists args and returns in a clear, structured manner.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 one parameter and an output schema, the description covers what the tool does and returns. It lists key return components (request body, response schema, example). Minor omission: no mention of errors or state effects, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description compensates by providing an example ('syncContactEnrichment') and explaining the parameter as 'The operation ID'. This adds meaningful context beyond the raw 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 gets the 'COMPLETE schema and details for a specific API operation'. It uses a specific verb ('Get') and resource, and distinguishes well from siblings like list_all_endpoints (lists all) and call_operation (executes).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 says 'Use this BEFORE calling an API to understand exactly what parameters are needed,' which provides clear context and contrasts with call_operation. However, it does not mention when not to use it or exclude other sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_all_endpointsCInspect
List available Descovo API endpoints with optional tag/search filtering.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| limit | No | ||
| search | No | ||
| tagPack | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavioral traits. It indicates a read operation (list) but lacks details on pagination, rate limits, or any side effects. 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?
A single sentence with no fluff. It is efficient but could be slightly improved by front-loading the main action. Still, it achieves 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?
Despite having an output schema, the description fails to explain four optional parameters and usage context. Given the presence of sibling tools, more detail is needed to avoid 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 description coverage is 0%, so the description should clarify parameters. It mentions 'tag/search filtering' hinting at 'tags' and 'search' but ignores 'limit' and 'tagPack'. Insufficient compensation for missing schema 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?
Clearly states it lists available Descovo API endpoints with optional filtering. The verb 'list' and resource 'endpoints' are specific. It distinguishes from siblings like 'call_operation' but not from 'search_endpoints' explicitly, though the name implies a broader listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 'search_endpoints' or 'get_endpoint_details_full'. Does not specify any preconditions or contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tag_packsAInspect
List curated tag packs for large tool catalogs.
Use this to narrow exploration (for example social-media or enrichment).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It describes a list operation which is inherently read-only, but does not elaborate on potential limitations (e.g., whether the list is exhaustive, sorted, or paginated). For a simple list with no parameters, this is adequate but could be richer.
Agents need to know what a tool does to the world before 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. Every word is purposeful: the first sentence defines the tool's action, the second provides usage guidance with examples. No unnecessary 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 zero parameters and an existing output schema, the description is complete and self-contained. It provides all necessary context for an agent to understand when and why to use this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so coverage is 100% by default. The description adds value by explaining the purpose (curated tag packs) and providing usage examples, which goes 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 it lists curated tag packs for large tool catalogs, with examples of narrowing exploration like social-media or enrichment. This verb+resource combination is distinct from siblings which focus on endpoints and 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 explicitly advises using this tool to narrow exploration, providing concrete examples. While it doesn't state when not to use it, the sibling tools cover different aspects (endpoints, operations) making the usage context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_endpointsAInspect
Canonical API selection tool for endpoint discovery and ranking.
Use this first to get the top recommended operations for a user intent. Supports optional constraints plus tag-scoped selection via preferredTags, excludedTags, or a curated tagPack key.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| tagPack | No | ||
| constraints | No | ||
| excludedTags | No | ||
| preferredTags | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should fully disclose behavior. It mentions discovery and ranking and optional constraints, implying read-only operation, but does not specify output structure, pagination, or side effects. Adequate but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with key identifier 'Canonical API selection tool'. No redundant information; every sentence adds value. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters with no schema descriptions and presence of output schema, the description covers the main purpose and key parameters well. Missing details on 'query' and 'limit' prevent full completeness, but the tool's purpose is clear.
Complex tools with many parameters or behaviors need more documentation. 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 has 0% description coverage, so description must compensate. It explains tag-scoped selection (preferredTags, excludedTags, tagPack) and constraints, but does not define the 'query' parameter (user intent) or 'limit' parameter. Adds value but not complete.
Input schemas describe structure but not intent. Descriptions should explain 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 is for endpoint discovery and ranking, with a specific verb 'search' and resource 'endpoints'. Distinguishes from siblings like list_all_endpoints (listing all) and get_endpoint_details_full (details) by emphasizing canonical selection and ranking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells agents to 'Use this first to get the top recommended operations for a user intent', providing clear context for when to use. Lacks explicit when-not or alternatives, but the guidance is strong enough relative to sibling tools.
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.
5 tool updates
- First observed
call_operation - First observed
get_endpoint_details_full - First observed
list_all_endpoints - First observed
list_tag_packs - First observed
search_endpoints
Related MCP Connectors
B2B lead and company data for AI agents: free search, pay only for emails, phones, profiles.
- LeadMCPOAuthai.leadmcp
B2B contact database for AI agents: search, count, export and enrich 375M+ contacts.
Real-time B2B data for agents: search and enrich 1B+ people and 200M+ company profiles.
Search companies, enrich contacts, and reveal emails and phones from your AI agent.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to search a global professional database in plain English, reveal full profiles, and fetch verified work emails, email verification, reverse email lookup, and LinkedIn and company lookups. Searches are free, while most lookups cost credits that are refunded automatically when nothing is found.MIT

Prospeo MCP Serverofficial
AlicenseAqualityDmaintenanceEnables AI tools to search and enrich B2B leads, including finding professional emails, company profiles, and filtering people and companies by various criteria.5386 npmMIT- AlicenseAqualityCmaintenanceEnables AI agents to retrieve person and company profiles, search companies and logos, find work email candidates, and validate email addresses through structured API tools.6MIT
- AlicenseAqualityDmaintenanceGive your AI agent access to 60M+ companies and 300M+ verified contacts. Enrich leads, find work emails, discover tech stacks, and identify buying intent — directly from Claude, Cursor, Windsurf, or any MCP-compatible AI agent.1119 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.