BillionVerify
Email verification for AI agents: verify single or bulk emails, check credits and history.
Should I use this
Quality & Safety
Findings (3)
- LOWin delete_webhook
- LOWin get_download_url
- LOWin list_webhooks
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"billionverify-mcp": {
"command": "npx",
"args": [
"billionverify-mcp"
]
}
}
}Runnable packages
1.1.1stdioRemote endpoints
https://mcp.billionverify.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (11)
🟡create_webhook(events, url)
Create a webhook endpoint for verification lifecycle notifications.
Input Schema
{
"type": "object",
"properties": {
"events": {
"description": "The webhook event types to subscribe to.",
"items": {
"enum": [
"file.completed",
"file.failed"
],
"type": "string"
},
"minItems": 1,
"type": "array"
},
"url": {
"description": "The HTTPS endpoint that should receive webhook deliveries.",
"type": "string"
}
},
"required": [
"url",
"events"
]
}🔴delete_webhook(webhook_id)
Permanently delete a webhook endpoint by identifier. The endpoint stops receiving notifications immediately.
Input Schema
{
"type": "object",
"properties": {
"webhook_id": {
"description": "The webhook identifier to delete.",
"type": "string"
}
},
"required": [
"webhook_id"
]
}🟢get_account_balance
Get the current credit balance for the authenticated account.
Input Schema
{
"type": "object"
}🟢get_download_url(catchall, disposable, invalid, job_id, role, ...)
Get a signed download URL for completed results, or CSV content when filtered or rebuilt from history.
Input Schema
{
"type": "object",
"properties": {
"catchall": {
"default": false,
"description": "Include results marked as catchall.",
"type": "boolean"
},
"disposable": {
"default": false,
"description": "Include results marked as disposable.",
"type": "boolean"
},
"invalid": {
"default": false,
"description": "Include results marked as invalid.",
"type": "boolean"
},
"job_id": {
"description": "The completed verification job identifier.",
"type": "string"
},
"role": {
"default": false,
"description": "Include results marked as role-based addresses.",
"type": "boolean"
},
"unknown": {
"default": false,
"description": "Include results marked as unknown.",
"type": "boolean"
},
"valid": {
"default": false,
"description": "Include results marked as valid.",
"type": "boolean"
}
},
"required": [
"job_id"
]
}🟢get_task_status(task_id)
Get the current status of an asynchronous verification task.
Input Schema
{
"type": "object",
"properties": {
"task_id": {
"description": "The task or job identifier returned by a previous verification request.",
"type": "string"
}
},
"required": [
"task_id"
]
}🟢get_verification_history(limit, page)
List verification history for the authenticated account.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"default": 20,
"description": "The number of history records to return per page.",
"maximum": 100,
"minimum": 1,
"type": "number"
},
"page": {
"default": 1,
"description": "The page number to retrieve.",
"minimum": 1,
"type": "number"
}
}
}🟢get_verification_stats(period)
Get aggregated verification statistics for the authenticated account.
Input Schema
{
"type": "object",
"properties": {
"period": {
"default": "30d",
"description": "The reporting period to query.",
"enum": [
"7d",
"30d",
"90d",
"1y"
],
"type": "string"
}
}
}🟢health_check
Check the health of the BillionVerify MCP server.
Input Schema
{
"type": "object"
}🟢list_webhooks
List all webhook endpoints configured for the authenticated account.
Input Schema
{
"type": "object"
}⚪verify_batch_emails(check_smtp, emails)
Verify 1 to 50 email addresses in one request and return a verdict for each. Split longer lists into chunks of 50. Uses credits from the connected BillionVerify account.
Input Schema
{
"type": "object",
"properties": {
"check_smtp": {
"default": false,
"description": "Whether to perform SMTP checks for each email address.",
"type": "boolean"
},
"emails": {
"description": "The email addresses to verify, with a minimum of 1 item and a maximum of 50 items.",
"items": {
"minLength": 3,
"type": "string"
},
"maxItems": 50,
"minItems": 1,
"type": "array"
}
},
"required": [
"emails"
]
}⚪verify_single_email(check_smtp, email, force_refresh)
Verify whether a single email address can receive mail. Checks syntax and the domain's mail servers, and optionally the mailbox over SMTP. Uses credits from the connected BillionVerify account.
Input Schema
{
"type": "object",
"properties": {
"check_smtp": {
"default": false,
"description": "Whether to perform an SMTP check in addition to syntax and domain checks.",
"type": "boolean"
},
"email": {
"description": "The email address to verify.",
"type": "string"
},
"force_refresh": {
"default": false,
"description": "Whether to bypass cached results and force a fresh verification.",
"type": "boolean"
}
},
"required": [
"email"
]
}Community
Evidence