Mcp Enrichment

io.github.IntelagentStudios由 GitHub 帳號 IntelagentStudios 發布v0.1.1更新於 Oct 24, 2026

Multi-source entity enrichment: company data, contacts, email verification, and phone validation

概覽

AI 產生的概覽

本機 MCP 伺服器,透過 Clearbit、Hunter.io 和 Twilio 補齊公司、聯絡人、電子郵件與電話資料,未設定金鑰時以模擬模式運作。

可以做什麼
依網域或公司名稱補齊公司資訊,包括產業、規模、募資、技術堆疊和社群檔案;依電子郵件或 LinkedIn 連結補齊聯絡人(Clearbit)。驗證電子郵件可送達性、一次性信箱與角色信箱,並尋找某人在某公司的電子郵件(Hunter.io)。驗證電話號碼,回傳號碼類型、電信業者和所在地(Twilio)。查看伺服器中繼資料與各服務商狀態,了解哪些 API 已啟用或處於模擬模式。
適用情境
適合助理需要調查公司或人物、篩選潛在客戶,或借助真實資料服務清理聯絡人名單的情境。也適合在還沒有任何 API 帳號時,用逼真的模擬資料進行開發測試。
執行需求
以 stdio 在本機執行,通常透過 npx 啟動,需要 Node.js 20 或更新版本。取得真實資料需以環境變數設定 API 金鑰:CLEARBIT_API_KEY、HUNTER_API_KEY、TWILIO_ACCOUNT_SID 和 TWILIO_AUTH_TOKEN;APOLLO_API_KEY 為未來預留。未設定金鑰時進入模擬模式。真實查詢需要能連線至這些服務商的網路。
安裝前請注意
伺服器環境中保存第三方 API 憑證,這些服務商依查詢計費,使用可能產生費用。查詢會將公司網域、電子郵件地址、LinkedIn 連結和電話號碼傳送給 Clearbit、Hunter.io 和 Twilio。結果預設在記憶體中快取 24 小時(ENRICHMENT_CACHE_TTL),可能回傳過期資料。模擬模式回傳的是虛構資料,不應視為真實資訊。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Mcp Enrichment,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@opafex/mcp-enrichment

MCP server for multi-source entity enrichment — company data, contact lookup, email verification, phone validation, and email discovery.

Uses Clearbit, Hunter.io, and Twilio APIs. Works in mock mode with no API keys configured.

Installation

bash
# Clone and build from sourcegit clone https://github.com/opafex/opafex-mcps.gitcd opafex-mcpsnpm install && npm run build

Requires Node.js 20+.

Quick Start

Add to Claude Code / Claude Desktop

Create or edit .mcp.json in your project root:

json
{  "mcpServers": {    "enrichment": {      "command": "node",      "args": ["/path/to/opafex-mcps/packages/enrichment/dist/index.js"],      "env": {        "CLEARBIT_API_KEY": "sk-...",        "HUNTER_API_KEY": "...",        "TWILIO_ACCOUNT_SID": "...",        "TWILIO_AUTH_TOKEN": "..."      }    }  }}

Omit the env block to run in mock mode.

Tools

enrich_company

Enrich company data from a domain name or company name. Returns industry, employee count, funding, tech stack, social profiles, and more.

ParameterTypeRequiredDescription
domainstringOne of domain or companyNameCompany website domain (e.g. "stripe.com")
companyNamestringOne of domain or companyNameCompany name

Provider: Clearbit

Example response
json
{  "success": true,  "company": {    "name": "Company for stripe.com",    "domain": "stripe.com",    "description": "A leading technology company specializing in innovative solutions.",    "industry": "Technology",    "sector": "Software",    "employees": 150,    "employeesRange": "101-250",    "founded": 2015,    "location": { "city": "London", "country": "United Kingdom" },    "socialProfiles": { "linkedin": "https://linkedin.com/company/example" },    "techStack": ["React", "Node.js", "PostgreSQL", "AWS"],    "type": "private"  },  "provider": "mock",  "cached": false,  "timestamp": "2026-03-15T00:00:00.000Z"}

enrich_contact

Enrich contact/person data from an email address or LinkedIn URL.

ParameterTypeRequiredDescription
emailstringOne of email or linkedinUrlEmail address
linkedinUrlstringOne of email or linkedinUrlLinkedIn profile URL
firstNamestringNoFirst name (optional hint)
lastNamestringNoLast name (optional hint)
companystringNoCompany name (optional hint)
domainstringNoCompany domain (optional hint)

Provider: Clearbit

verify_email

Verify an email address for deliverability. Returns validity, deliverability score, disposable/free provider detection, role-based detection, and SMTP validation.

ParameterTypeRequiredDescription
emailstringYesEmail address to verify

Provider: Hunter.io

Example response
json
{  "success": true,  "email": "[email protected]",  "valid": true,  "deliverable": true,  "disposable": false,  "freeProvider": false,  "role": false,  "score": 95,  "provider": "mock",  "cached": false}

verify_phone

Validate and look up a phone number. Returns validity, formatted number, line type (mobile/landline/voip), carrier info, and location.

ParameterTypeRequiredDescription
phonestringYesPhone number (any format, E.164 preferred)
countryCodestringNoCountry dialing code without + (e.g. "1" for US, "44" for UK). Defaults to "44" (UK).

Provider: Twilio

find_email

Find the email address for a specific person at a company.

ParameterTypeRequiredDescription
firstNamestringYesPerson's first name
lastNamestringYesPerson's last name
domainstringYesCompany domain (e.g. "stripe.com")

Provider: Hunter.io

Example response
json
{  "success": true,  "email": "[email protected]",  "score": 85,  "sources": ["LinkedIn", "Company Website"],  "provider": "mock",  "cached": false}

server_info (built-in)

Returns server metadata: name, version, registered tools, and resources. Added automatically by @opafex/mcp-shared.

Resources

ResourceDescription
enrichment://statusProvider configuration status (which APIs are active, mock mode)

Mock Mode

When no API keys are configured, all tools return realistic mock data. This is great for development and testing — you can build against the MCP without any API accounts.

Mock mode activates automatically:

  • Globally when none of CLEARBIT_API_KEY, HUNTER_API_KEY, or TWILIO_ACCOUNT_SID are set
  • Per-tool when the specific provider key is missing (e.g. if you only set CLEARBIT_API_KEY, company/contact tools use real data while email/phone tools fall back to mock)

Check enrichment://status resource or the server_info tool to see which providers are active.

Environment Variables

VariableTypeDefaultDescription
CLEARBIT_API_KEYstring—Clearbit API key for enrich_company, enrich_contact
HUNTER_API_KEYstring—Hunter.io API key for verify_email, find_email
TWILIO_ACCOUNT_SIDstring—Twilio Account SID for verify_phone
TWILIO_AUTH_TOKENstring—Twilio Auth Token for verify_phone
APOLLO_API_KEYstring—Apollo.io API key (reserved for future use)
ENRICHMENT_CACHE_TTLnumber (seconds)86400 (24h)How long to cache enrichment results

Development

bash
npm run build    # Compile TypeScriptnpm run dev      # Run with tsx (no build needed)npm test         # Run testsnpm start        # Run compiled server

Library Usage

The enrichment service can be used programmatically (not just as an MCP server):

typescript
import { EnrichmentService } from '@opafex/mcp-enrichment/service';import type { CacheProvider } from '@opafex/mcp-enrichment/service';
const service = new EnrichmentService({  clearbitApiKey: 'sk-...',  hunterApiKey: '...',});
const result = await service.enrichCompany({ domain: 'stripe.com' });

Custom Cache Provider

The default in-memory cache works out of the box. For Redis, SQLite, or any custom store, implement the CacheProvider interface:

typescript
import { EnrichmentService } from '@opafex/mcp-enrichment/service';import type { CacheProvider } from '@opafex/mcp-enrichment/service';
const redisCache: CacheProvider = {  async get(key) { /* ... */ },  async set(key, data, ttlMs) { /* ... */ },  async delete(key) { /* ... */ },  async clear() { /* ... */ },};
const service = new EnrichmentService({  clearbitApiKey: '...',  cache: redisCache,});

Contributing

Found a bug or have a feature request? Open an issue.

Pull requests welcome — see the main repo for development setup.

License

MIT — see LICENSE.

來源:packages/enrichment/README.md,提交 02c34ab

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分