NeverBounce MCP by usefulapi

MCP server for NeverBounce — business email verification, credits and bulk jobs.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
90%
命名品質
77%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

發現項目(1)

  • LOWTool 'neverbounce_download_job_results' name length outside 3-30 range在 neverbounce_download_job_results 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~1,996Token(工具定義)
~1.5 KB典型回應大小
中等的注意力影響(128k 上下文的 1.56%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "neverbounce": {
      "url": "https://neverbounce.usefulapi.io/mcp"
    }
  }
}

遠端端點

https://neverbounce.usefulapi.io/mcpstreamable-http

它能做什麼

工具清單

工具(8)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢neverbounce_get_account_info

Credits left (paid and free), credits used, and how many verification jobs are completed, queued, processing or under review. Free: it spends no credits. POST /account/info.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴neverbounce_verify_email(email, address_info, timeout)

WRITE: SPENDS 1 of your NeverBounce credits per call. Verifies ONE e-mail address and returns result (valid, invalid, disposable, catchall or unknown), flags (e.g. has_dns_mx, role_account, free_email_host), a suggested correction for typos like gmal.com, and optionally the parsed address parts. NeverBounce's usage rules: use this for a single address at the point of entry; do NOT call it in a loop over a list or database (the account can be locked) - use neverbounce_create_job for lists. POST /single/check.

輸入結構描述

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "minLength": 3,
      "maxLength": 254,
      "description": "The one e-mail address to verify."
    },
    "address_info": {
      "description": "Also return the parsed address parts (addr, alias, host, domain, tld...).",
      "type": "boolean"
    },
    "timeout": {
      "description": "Seconds NeverBounce may spend before answering 'unknown' (1-60). Omit for the default.",
      "type": "integer",
      "minimum": 1,
      "maximum": 60
    }
  },
  "required": [
    "email"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢neverbounce_list_jobs(job_id, filename, job_status, page, items_per_page)

Bulk verification jobs of the account (most recent first as NeverBounce returns them) with id, status, filename, timestamps, totals per result (valid, invalid, catchall, disposable, unknown, duplicates, bad_syntax), bounce estimate and percent complete. Filter by id, exact filename or status. POST /jobs/search.

輸入結構描述

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "NeverBounce job id (from neverbounce_list_jobs or neverbounce_create_job)."
    },
    "filename": {
      "description": "Exact filename of the job.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "job_status": {
      "description": "Only jobs in this status.",
      "type": "string",
      "enum": [
        "under_review",
        "queued",
        "failed",
        "complete",
        "running",
        "parsing",
        "waiting",
        "waiting_analyzed",
        "uploading"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "items_per_page": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢neverbounce_get_job(job_id)

One verification job: status (waiting, parsing, running, complete, failed, under_review...), failure reason, timestamps, totals (records, billable = credits it will use, processed, valid, invalid, catchall, disposable, unknown, duplicates, bad_syntax), bounce estimate and percent complete. Poll this until status is complete. POST /jobs/status.

輸入結構描述

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "NeverBounce job id (from neverbounce_list_jobs or neverbounce_create_job)."
    }
  },
  "required": [
    "job_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢neverbounce_get_job_results(job_id, page, items_per_page)

Per-address results of a job: the submitted row (data) and its verification (result, flags, suggested_correction, address info). Paged; use neverbounce_download_job_results for a CSV. The job must be complete. POST /jobs/results.

輸入結構描述

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "NeverBounce job id (from neverbounce_list_jobs or neverbounce_create_job)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "items_per_page": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "job_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢neverbounce_download_job_results(job_id, valids, invalids, catchalls, disposables, ...)

The results of a complete job as CSV text (the submitted columns plus email_status), cut at 200000 characters with a note when longer (use neverbounce_get_job_results to page through large jobs). By default every result type is included; set a type to false to leave it out. POST /jobs/download.

輸入結構描述

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "NeverBounce job id (from neverbounce_list_jobs or neverbounce_create_job)."
    },
    "valids": {
      "description": "Include valid addresses (default true).",
      "type": "boolean"
    },
    "invalids": {
      "description": "Include invalid addresses (default true).",
      "type": "boolean"
    },
    "catchalls": {
      "description": "Include catch-all addresses (default true).",
      "type": "boolean"
    },
    "disposables": {
      "description": "Include disposable addresses (default true).",
      "type": "boolean"
    },
    "unknowns": {
      "description": "Include unknown addresses (default true).",
      "type": "boolean"
    }
  },
  "required": [
    "job_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡neverbounce_create_job(emails, filename, leverage_historical_data)

WRITE: creates a bulk verification job from up to 100 e-mail addresses given in this call, and has NeverBounce parse it. It does NOT start the verification and spends NO credits; run neverbounce_start_job afterwards (that spends 1 credit per billable address). Put ALL the addresses of one list into ONE job: NeverBounce's rules allow 10 concurrent jobs and 50 runs a day, and many small jobs in a short time can get the account locked. Returns the job_id. POST /jobs/create.

輸入結構描述

{
  "type": "object",
  "properties": {
    "emails": {
      "minItems": 1,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 3,
        "maxLength": 254
      },
      "description": "The e-mail addresses to verify, 1-100."
    },
    "filename": {
      "description": "Name shown in the NeverBounce dashboard (default: a timestamped name).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "leverage_historical_data": {
      "description": "Default true. Set false to use real-time verification only (no historical data).",
      "type": "boolean"
    }
  },
  "required": [
    "emails"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴neverbounce_start_job(job_id, max_credits, run_sample)

WRITE: STARTS a created job and SPENDS 1 credit per billable address (shown as total.billable in neverbounce_get_job); it cannot be stopped or undone. Safety: you must pass max_credits, and the job is refused when its billable count is above it or above 1000 (start bigger jobs in the NeverBounce dashboard). The job must be in status waiting or waiting_analyzed. With run_sample true it only runs the free sample analysis (estimated bounce rate) and spends nothing. POST /jobs/start.

輸入結構描述

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "NeverBounce job id (from neverbounce_list_jobs or neverbounce_create_job)."
    },
    "max_credits": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "description": "The most credits you accept to spend (1-1000); the job is refused if its billable count is higher."
    },
    "run_sample": {
      "description": "Run only the free sample analysis instead of the full verification.",
      "type": "boolean"
    }
  },
  "required": [
    "job_id",
    "max_credits"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本8 個工具