Company Enrichment MCP Server

io.github.rezearcherPublished by GitHub account rezearcherv0.2.0Updated Oct 30, 2026

Live company enrichment from a domain: firmographics, contacts, tech stack + 8-ATS hiring signal.

The publisher's own server: Tech Risk

VerifiedStreamable HTTPWeb executableWeb Search & ScrapingBusiness & Commerce

Overview

AI-generated overview

Turns a company domain into a live enrichment record — firmographics, contacts, tech stack and an 8-ATS hiring signal — with free preview tools and paid depth.

What you can do
  • Resolve a company's applicant-tracking system and board token from a slug or domain
  • Preview free DNS/RDAP enrichment for a domain: email provider, SaaS detected from DNS, domain age and registrar
  • Retrieve the paid x402 rail details: metered depth layers, prices in USDC on Base, pay-to address and the 402 flow
  • Report the record schema, supported ATS platforms and data policy
When to use it
Useful for sales prospecting, market research or recruiting work where an assistant needs current company facts and a live hiring signal rather than a stale database snapshot. The free preview and ATS resolution are enough for a quick check; the full record requires paying per call.
Requirements
Remote streamable HTTP endpoint; no account, API key or environment variable is declared. The free tools rely on public DNS, RDAP and ATS JSON. Full enrichment is metered over x402 and requires an x402-aware client that can pay in USDC on Base.
Before you install
The full firmographic record, tech-stack fingerprint and email deliverability are paid per call in USDC on Base through the x402 rail, so a client that can spend funds may incur real costs. The server reads public websites, DNS and ATS postings, so requests go to third-party sites on your behalf; respect their terms and rate limits. The README lists tools such as enrich_company and company_hiring_signal that are not among the three tools declared in the manifest.

Installation

In SourceWeft

  1. Open Company Enrichment MCP Server in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.rezearcher%2Fcompany-enrichment-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "company-enrichment": {
      "type": "http",
      "url": "https://assetfactory-jobs-x402.sigrunner.workers.dev/mcp/enrich"
    }
  }
}

README

Grey Ridge Company Enrichment MCP

[smoke] [MCP] [deps]

A Model Context Protocol server that turns a company domain into a live, normalized enrichment record — for any MCP client (Claude Desktop, Cursor, Cline, Continue, or your own agent).

Give it stripe.com and get back, in one call, firmographics + verified business contacts + a tech-stack fingerprint + social links and a live hiring signal — the buying-intent layer that static enrichment databases can't carry:

company_name · industry · hq_country · tech_stack · contacts (MX-graded) · social_links · hiring{ats_vendor, open_reqs, departments, locations, remote_share, intensity, newest_posting}

  • Live from source, never a resold database. Every field is read this call from the company's own public website, public DNS/MX, and public applicant-tracking JSON. No stale cache, no third-party data broker, no paid key to hold.
  • Zero keys, zero account, free COGS. All upstreams are keyless and public.
  • The hiring signal is the moat. The hiring{} block is derived live from 8 ATS platforms (Greenhouse · Lever · Ashby · SmartRecruiters · Workday · Recruitee · Workable · BambooHR) — a real buying-intent signal (who is hiring, how hard, in which departments) that resold-DB enrichers do not ship because they sell static firmographics.
  • One parse dependency. cheerio for robust HTML extraction — no MCP SDK, no 90-package transitive tree dragged into your agent's trust boundary.
  • Honest, never fabricated. Thin crawls are flagged (enrichment_status), absent fields stay null, placeholder/noreply addresses are dropped.

Install

Requires Node.js ≥ 18.

Claude Desktop

Add to claude_desktop_config.json (Settings → Developer → Edit Config):

json
{  "mcpServers": {    "company-enrichment": {      "command": "npx",      "args": ["-y", "github:rezearcher/company-enrichment-mcp"]    }  }}

Cursor / Cline / Continue

Point the client at the same command (npx -y github:rezearcher/company-enrichment-mcp) as a stdio server. In Cursor: Settings → MCP → Add new server → type command.

From source

bash
git clone https://github.com/rezearcher/company-enrichment-mcpcd company-enrichment-mcpnpm installnode server.mjs          # speaks MCP over stdionpm test                 # real client handshake + live-data roundtrip

Tools

ToolWhat it does
enrich_companyFull live record(s) for one or more domains: firmographics, MX-graded contacts, tech-stack fingerprint, social links, and the live hiring block. Args: domains (string[]), includeHiring/includeContacts/includeTech (default true), maxPages (default 4, max 12), maxCompanies. Deduped by canonical domain.
company_hiring_signalCheap buying-intent probe — just the live hiring block for one company, skipping the site crawl. Resolves the ATS across 8 platforms and returns open reqs, departments/locations hiring, remote share, intensity, newest posting. Args: company (slug or domain).
check_email_domainGrade a domain's mail deliverability from public DNS (keyless, free). Returns {resolves, has_mx, mx_hosts, grade} (B/D/F). Accepts a domain or an email address.
list_capabilitiesThe record schema, the 8 ATS platforms, the live/keyless data policy, and the public-business-data-only legal scope. No network call.

Example

Ask your assistant: "Enrich stripe.com and ramp.com, and tell me which is hiring harder." The model calls:

json
{ "name": "enrich_company",  "arguments": { "domains": ["stripe.com", "ramp.com"] } }

and gets back a records[] array — each a unified company record whose hiring.hiring_intensity (none/low/med/high) and hiring.open_reqs_count answer the question directly.

Or, for a fast buying-intent check without the full crawl: "Is bunq hiring right now?" →

json
{ "name": "company_hiring_signal", "arguments": { "company": "bunq.com" } }

The record

jsonc
{  "input_domain": "stripe.com",  "canonical_domain": "stripe.com",  "company_name": "Stripe",  "description": "...",  "industry": "...",  "hq_country": "US",  "social_links": ["https://twitter.com/stripe", ...],  "tech_stack": [ { "name": "Next.js", "category": "..." }, ... ],  "contacts": { "emails": [ { "email": "...", "mx": true, "deliverability_grade": "B" } ], "phones": [...] },  "hiring": {    "ats_vendor": "greenhouse", "open_reqs_count": 725, "hiring_intensity": "high",    "departments_hiring": [...], "locations_hiring": [...], "remote_share": 0.18,    "newest_posting_at": "2026-10-29T..."  },  "source_freshness": "live",  "enrichment_status": "ok"}

Why live-from-source (and not a resold database)

Resold-database enrichers (the common Apify/marketplace pattern) return whatever was in a broker's last crawl — often months stale — and need a paid data key behind them. This server reads each company now, from sources the buyer would otherwise have to integrate and maintain themselves: a heterogeneous website layout, a DNS/MX posture, and eight different ATS JSON shapes that drift and that companies migrate between. That upkeep is the point — a scheduled canary (.github/workflows/smoke.yml) exercises the live path on every push and daily and fails loudly the moment an upstream reshapes. And because the hiring block is computed live, it reflects today's open reqs, not a snapshot — the signal a prospector actually wants.

Legal scope

PUBLIC business data only — published firmographics, published business contact points (role inboxes, switchboard, public social profiles), and public ATS postings. No login, no personal/consumer PII, no scraped individual profiles, no third-party database. Respect each source's terms and rate limits.

License

MIT © Grey Ridge Signals Group LLC.

Related tools (same maintained engine)

  • company-enrichment-cli — the same enrichment core as a plain command-line tool (npx github:rezearcher/company-enrichment-cli stripe.com).
  • jobs-mcp-server — the raw 8-ATS job feed as an MCP server, when you want the postings themselves rather than a company-level signal.

Source: README.md at commit 216810f

Tools

3

resolve_company

Resolve which applicant-tracking system a company uses and its board token, from a bare slug or domain. Returns {platform, token, via}. Free.

Parameterscompanyrequired

enrich_preview

Free keyless DNS/RDAP enrichment preview for a company domain: email provider (from MX), SaaS detected from DNS TXT, domain age + registrar (RDAP). A real taste of the paid /company/enrich, which adds a bounded site crawl (firmographics, contacts, social), tech-stack fingerprint, office address, legal registration (VAT / company number) and the live multi-ATS hiring block — call get_premium_access for the full record.

Parametersdomainrequired

get_premium_access

Return the paid x402 rail: the metered depth layers (hosted 10-ATS search, normalized compensation, per-company hiring-intent signal, company enrichment, email deliverability) with exact prices (USDC on Base), the pay-to address, and how the 402 flow works. No account; an x402-aware client pays inline from the agent's wallet.

Takes no parameters.

Version history

2
  1. v0.2.0LatestOct 30, 2026
  2. v0.1.0Oct 29, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Greyridgesignals integrations