Token导航 LogoToken导航TokenDH.com
Abstractapi MCP Server logo
办公协作stdio官方级别未说明来源级核验

Abstractapi MCP Server

MCP Server

一个基于Abstract API的MCP服务器,提供电子邮件和电话号码验证功能,适用于AI应用和工作流集成。

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
Python数据验证团队协作

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

avivshafir

提供方

avivshafir

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

摘要API MCP服务器

模型上下文协议(MCP)服务器,使用抽象API服务提供电子邮件和电话验证工具。该服务器采用FastMCP构建,可以轻松地将验证功能集成到AI应用程序和工作流中。

概述

此MCP服务器公开了三个主要的验证工具:

  • 电子邮件验证:全面的电子邮件地址验证和确认
  • 电话验证:190多个国家的电话号码验证
  • 电子邮件信誉:具有安全洞察力的高级电子邮件信誉分析

特性

电子邮件验证

  • 格式验证
  • 交付能力检查
  • 域名验证
  • SMTP验证
  • 检测一次性/角色/包罗万象的电子邮件
  • 质量评分

电话验证

  • 国际电话号码验证
  • 格式标准化(国际/本地)
  • 国家和承运商标识
  • 电话类型检测(移动电话、固定电话等)
  • 位置信息

电子邮件信誉

  • 全面的交付能力分析
  • 质量评分和风险评估
  • 发件人和组织标识
  • 域安全分析(DMARC、SPF)
  • 数据泄露历史跟踪
  • 欺诈和滥用检测

先决条件

安装

选项1:使用紫外线(推荐)

  1. 克隆存储库:
git clone https://github.com/avivshafir/abstractapi-mcp-server
cd abstractapi-mcp-server
  1. 创建虚拟环境并安装依赖关系:
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install .
  1. 设置环境变量:
cp .env.example .env
# Edit .env and add your Abstract API key

选项2:使用传统pip

  1. 克隆存储库:
git clone https://github.com/avivshafir/abstractapi-mcp-server
cd abstractapi-mcp-server
  1. 创建虚拟环境:
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
  1. 安装依赖项:
pip install -r requirements.txt
  1. 设置环境变量:
cp .env.example .env
# Edit .env and add your Abstract API key

你的 .env 文件应包含:

ABSTRACT_API_KEY=your_abstract_api_key_here

用法

运行MCP服务器

服务器可以在stdio模式下运行,以便与MCP客户端集成:

# With uv (if virtual environment is activated)
python server.py

# Or run directly with uv
uv run server.py

FastMCP框架

此服务器是使用 FastMCP,一个简化MCP服务器开发的Python框架。FastMCP提供:

  • 自动刀具注册:功能装饰 @mcp.tool() 自动显示为MCP工具
  • 类型安全性:完整的类型提示和验证
  • 简单的异步支持:本机异步/等待支持
  • 简化服务器设置:最少的样板代码

FastMCP关键概念

from mcp.server.fastmcp import FastMCP

# Initialize the server
mcp = FastMCP("abstract_api")

# Register a tool
@mcp.tool()
async def my_tool(param: str) -> dict:
    """Tool description for AI clients"""
    return {"result": param}

# Run the server
mcp.run(transport="stdio")

可用工具

1.电子邮件验证(verify_email)

验证电子邮件地址并返回全面的信息。

参数:

  • email (str):要验证的电子邮件地址

示例响应:

{
  "email": "user@example.com",
  "deliverability": "DELIVERABLE",
  "quality_score": "0.99",
  "is_valid_format": {"value": true, "text": "TRUE"},
  "is_free_email": {"value": false, "text": "FALSE"},
  "is_disposable_email": {"value": false, "text": "FALSE"},
  "is_role_email": {"value": false, "text": "FALSE"},
  "is_catchall_email": {"value": false, "text": "FALSE"},
  "is_mx_found": {"value": true, "text": "TRUE"},
  "is_smtp_valid": {"value": true, "text": "TRUE"}
}

2.电话验证(validate_phone)

验证190多个国家的电话号码。

参数:

  • phone (str):要验证的电话号码
  • country (str,可选):ISO国家代码用于上下文

示例响应:

{
  "phone": "14152007986",
  "valid": true,
  "format": {
    "international": "+14152007986",
    "local": "(415) 200-7986"
  },
  "country": {
    "code": "US",
    "name": "United States",
    "prefix": "+1"
  },
  "location": "California",
  "type": "mobile",
  "carrier": "T-Mobile USA, Inc."
}

3.电子邮件信誉(check_email_reputation)

提供全面的电子邮件信誉分析,包括安全见解和违规历史。

参数:

  • email (str):要分析的电子邮件地址

示例响应:

{
  "email_address": "benjamin.richard@abstractapi.com",
  "email_deliverability": {
    "status": "deliverable",
    "status_detail": "valid_email",
    "is_format_valid": true,
    "is_smtp_valid": true,
    "is_mx_valid": true,
    "mx_records": ["gmail-smtp-in.l.google.com", "..."]
  },
  "email_quality": {
    "score": 0.8,
    "is_free_email": false,
    "is_username_suspicious": false,
    "is_disposable": false,
    "is_catchall": true,
    "is_subaddress": false,
    "is_role": false,
    "is_dmarc_enforced": true,
    "is_spf_strict": true,
    "minimum_age": 1418
  },
  "email_sender": {
    "first_name": "Benjamin",
    "last_name": "Richard",
    "email_provider_name": "Google",
    "organization_name": "Abstract API",
    "organization_type": "company"
  },
  "email_domain": {
    "domain": "abstractapi.com",
    "domain_age": 1418,
    "is_live_site": true,
    "registrar": "NAMECHEAP INC",
    "date_registered": "2020-05-13",
    "date_expires": "2025-05-13",
    "is_risky_tld": false
  },
  "email_risk": {
    "address_risk_status": "low",
    "domain_risk_status": "low"
  },
  "email_breaches": {
    "total_breaches": 2,
    "date_first_breached": "2018-07-23T14:30:00Z",
    "date_last_breached": "2019-05-24T14:30:00Z",
    "breached_domains": [
      {"domain": "apollo.io", "date_breached": "2018-07-23T14:30:00Z"},
      {"domain": "canva.com", "date_breached": "2019-05-24T14:30:00Z"}
    ]
  }
}

与MCP客户端集成

将此服务器添加到您的mcp配置中:

{
  "mcpServers": {
    "abstract-api": {
      "command": "uv",
      "args": ["run", "/path/to/mcp-abstract-api/server.py"],
      "env": {
        "ABSTRACT_API_KEY": "your_api_key_here"
      }
    }
  }
}

或者,如果您更喜欢使用传统方法:

{
  "mcpServers": {
    "abstract-api": {
      "command": "python",
      "args": ["/path/to/mcp-abstract-api/server.py"],
      "env": {
        "ABSTRACT_API_KEY": "your_api_key_here"
      }
    }
  }
}

其他MCP客户端

此服务器遵循标准MCP协议,可以与任何兼容MCP的客户端集成。服务器通过stdio传输进行通信。

错误处理

服务器包括全面的错误处理:

  • API密钥验证:检查缺少的API密钥
  • HTTP错误处理:正确处理API响应错误
  • 输入验证:类型检查和参数验证
  • 故障弱化:调试时有意义的错误消息

API费率限制

摘要API根据您的计划有不同的费率限制:

  • 免费计划:每秒1个请求
  • 付费计划:可提供更高的费率限制

无论验证成功还是失败,每个API调用都算作一个信用。

发展

项目结构

mcp-abstract-api/
├── server.py          # Main MCP server implementation
├── .env              # Environment variables (not in repo)
├── .env.example      # Environment template
├── requirements.txt  # Python dependencies (pip format)
├── uv.lock           # uv lock file for reproducible builds
├── pyproject.toml    # Project configuration
├── README.md         # This file
└── LICENSE          # MIT License

添加新工具

添加新的抽象API工具:

  1. 将API端点URL添加为常量
  2. 创建一个新功能,用 @mcp.tool()
  3. 添加带有参数和返回描述的综合文档字符串
  4. 按照现有模式实现错误处理

例子:

@mcp.tool()
async def new_validation_tool(param: str) -> dict[str, Any]:
    """
    Description of what this tool does.
    
    Args:
        param (str): Description of parameter
        
    Returns:
        dict[str, Any]: Description of return value
    """
    # Implementation here
    pass

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 如果适用,添加测试
  5. 提交拉取请求

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

支持

关于以下问题:

致谢

目录标签

目录标签

Python数据验证团队协作电子邮件验证本地部署电话验证电子邮件信誉分析AI集成

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-keyremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP