Enrich Layer MCP Server
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Enrich Layer MCP Server Look up the company profile for Stripe"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Enrich Layer MCP Server
An MCP (Model Context Protocol) server that provides 25 tools for enriching company, person, contact, school, and job data via the Enrich Layer API.
Use it with any MCP-compatible client: Claude Desktop, Claude Code, Cursor, VS Code, and more.
Quick Start
npx -y @enrichlayer/mcp-serverSet your API key as an environment variable:
export ENRICH_LAYER_API_KEY=your_api_key_hereGet your API key at enrichlayer.com/dashboard.
Related MCP server: LeadMagic MCP Server
Configuration
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"enrich-layer": {
"command": "npx",
"args": ["-y", "@enrichlayer/mcp-server"],
"env": {
"ENRICH_LAYER_API_KEY": "your_api_key_here"
}
}
}
}Claude Desktop (MCPB Extension)
Download the .mcpb file from Releases and open it in Claude Desktop. You'll be prompted to enter your API key during setup.
Claude Code
claude mcp add enrich-layer -- npx -y @enrichlayer/mcp-serverThen set the env var ENRICH_LAYER_API_KEY in your shell.
Cursor
Add to your Cursor MCP settings:
{
"mcpServers": {
"enrich-layer": {
"command": "npx",
"args": ["-y", "@enrichlayer/mcp-server"],
"env": {
"ENRICH_LAYER_API_KEY": "your_api_key_here"
}
}
}
}VS Code
Add to your VS Code MCP settings (.vscode/mcp.json):
{
"servers": {
"enrich-layer": {
"command": "npx",
"args": ["-y", "@enrichlayer/mcp-server"],
"env": {
"ENRICH_LAYER_API_KEY": "your_api_key_here"
}
}
}
}Remote HTTP Server
For remote deployments, the server also supports Streamable HTTP transport:
npm run start:httpThis starts an Express server on port 3000 (configurable via PORT env var) with a /mcp endpoint for JSON-RPC and a /health endpoint for health checks.
Optional Sentry self-reporting
The server captures startup, request, and graceful-shutdown failures when
SENTRY_DSN is configured. Set SENTRY_ENVIRONMENT, SENTRY_RELEASE, and
SENTRY_SERVICE alongside it to control the event tags. The defaults are the
current NODE_ENV, the package version, and enrich-layer-mcp-server for HTTP
or enrich-layer-mcp-server-stdio for stdio; the environment variables always
take precedence over those defaults. Missing or invalid DSNs disable reporting
without affecting server startup. Failure telemetry is scrubbed before it is
sent: request query strings are removed, credential-like values are redacted,
and default PII and tracing integrations are disabled. Error text may still be
forwarded after scrubbing, so configure this only where that operational
telemetry is permitted.
The application does not load an environment file. A deployment/runtime
manager must export these variables or inject them through its secret store;
never commit a DSN to source or pass it in a request. For the production
mcp.verticalint.co deployment, Vault injection and rollout are tracked
separately in INF-887.
Usage Examples
1. Look up a company
"Look up the company profile for Stripe"
This calls enrich_company_lookup with company_name: "Stripe" to find the company's professional network URL and profile data.
2. Find a work email by role
"Find the work email for the CTO of Notion"
This chains two tools: first enrich_role_lookup with company_name: "Notion", role: "cto" to find the person, then enrich_work_email with their profile URL to get the email address.
3. Check your credit balance
"How many credits do I have left?"
This calls enrich_credit_balance to show your remaining API credits. Costs 0 credits.
Available Tools (25)
Company (7 tools)
Tool | Description | Credits |
| Get structured company data from URL | 1 |
| Look up company by name or domain | 2 |
| Look up company by numeric ID | 0 |
| Get company profile picture URL | 0 |
| List employees of a company | 3/employee |
| Get employee count | 1 |
| Search employees by keyword | 10 |
Person (4 tools)
Tool | Description | Credits |
| Get structured person data from URL | 1 |
| Look up person by name + company | 2 |
| Get person profile picture URL | 0 |
| Find person by role at company | 3 |
Contact (6 tools)
Tool | Description | Credits |
| Find profile by email | 3 |
| Find profile by phone number | 3 |
| Get work email from profile | 3 |
| Get personal phone numbers | 1/contact |
| Get personal email addresses | 1/email |
| Check if email is disposable | 0 |
School (2 tools)
Tool | Description | Credits |
| Get structured school data | 1 |
| List students of a school | 3/student |
Job (3 tools)
Tool | Description | Credits |
| Get structured job posting data | 2 |
| Search job postings | 2 |
| Count matching job postings | 2 |
Search (2 tools)
Tool | Description | Credits |
| Search companies by criteria | 3/URL |
| Search people by criteria | 3/URL |
Meta (1 tool)
Tool | Description | Credits |
| Check your credit balance | 0 |
Privacy Policy
Enrich Layer collects only the data you explicitly pass as tool parameters (URLs, names, emails). No conversation data or chat history is collected by the
MCP transport, and all API requests go directly to the Enrich Layer API over
HTTPS. When optional Sentry self-reporting is configured, scrubbed operational
failure telemetry may be sent to the configured Sentry project; it is separate
from the API request path and can be disabled by omitting SENTRY_DSN.
For the full privacy policy, see enrichlayer.com/privacy.
Development
# Install dependencies
npm install
# Build
npm run build
# Run stdio server (for MCP clients)
npm start
# Run HTTP server (for remote deployments)
npm run start:http
# Test with MCP Inspector
npx @modelcontextprotocol/inspector node build/index.jsAPI surface conformance
Tool schemas follow the published Enrich Layer OpenAPI spec — the single source of truth for the API surface: https://enrichlayer.com/docs/api/v2/openapi.yaml
A copy of the spec is vendored at spec/enrichlayer-api.yaml, and CI runs
npm run check:spec on every pull request. A tool fails the check when:
its endpoint is not in the spec;
it exposes a parameter the spec does not document for that endpoint;
a parameter's required/optional flag disagrees with the spec;
it omits a parameter the spec marks required.
Optional spec parameters a tool does not expose are reported as warnings — tools may deliberately expose a curated subset. The check matches parameter names and required-ness only; it does not validate enum values or types, because the spec does not encode those for query parameters.
When the API changes:
npm run update-spec # refresh spec/enrichlayer-api.yaml from the published URL
npm run build
npm run check:spec # see which tools drifted, fix their schemasThe conformance logic lives in scripts/conformance-core.mjs and is unit-tested
(npm test, Node's built-in test runner).
License
MIT
Available Tools
25 toolsenrich_company_id_lookupARead-only
Look up a company by its internal numeric ID to get its professional network URL. Cost: 0 credits.
Inputs: id (required).
enrich_company_lookupARead-only
Look up a company by name or domain to find its professional network URL. Provide at least one of company_name or company_domain. Cost: 2 credits.
Inputs: company_name, company_domain, enrich_profile, company_location.
enrich_company_pictureARead-only
Get the profile picture URL of a company. Cost: 0 credits.
Inputs: company_profile_url (required).
enrich_company_profileARead-only
Get structured data of a company profile from its professional network URL. Returns company details including name, industry, size, description, specialties, and more. Cost: 1 credit.
Inputs: url (required), extra, exit_data, use_cache, +3 more.
enrich_company_searchARead-only
Search for companies by various criteria including location, industry, size, funding, and more. Returns professional network URLs. Cost: 3 credits per URL returned. Returns up to page_size results (max 100) per call. If more matches exist, the response includes total_result_count and a next_page URL — pass its next_token back in to page through the full set.
Inputs: city, name, type, region, +20 more.
enrich_credit_balanceARead-only
View your current Enrich Layer credit balance. Cost: 0 credits.
Inputs: no named parameters.
enrich_disposable_emailARead-only
Check if an email address is from a disposable email provider. Cost: 0 credits.
Inputs: email (required).
enrich_employee_countBRead-only
Get the number of employees at a company. Cost: 1 credit.
Inputs: url (required), at_date, use_cache, coy_name_match, +2 more.
enrich_employee_listARead-only
List employees of a company. Returns profile URLs and basic info. Cost: 3 credits per employee returned.
Inputs: url (required), country, sort_by, page_size, +6 more.
enrich_employee_searchBRead-only
Search employees by keyword at a specific company. Uses boolean search syntax for job titles. Cost: 10 credits per request.
Inputs: keyword_boolean (required), company_profile_url (required), country, page_size, +2 more.
enrich_job_countARead-only
Get the number of job postings matching your criteria. Cost: 2 credits.
Inputs: when, geo_id, keyword, job_type, +3 more.
enrich_job_profileARead-only
Get structured data of a job posting from its professional network URL. Returns job title, description, company, location, and more. Cost: 2 credits.
Inputs: url (required).
enrich_job_searchARead-only
Search for job postings. Filter by company, type, experience level, location, and more. Cost: 2 credits.
Inputs: when, geo_id, keyword, job_type, +3 more.
enrich_personal_contactARead-only
Get personal contact phone numbers of a person. Provide at least one of: profile_url, twitter_profile_url, or facebook_profile_url. Cost: 1 credit per contact number.
Inputs: page_size, profile_url, twitter_profile_url, facebook_profile_url.
enrich_personal_emailARead-only
Get personal email addresses of a person. Provide at least one of: profile_url, twitter_profile_url, or facebook_profile_url. Cost: 1 credit per email.
Inputs: page_size, profile_url, email_validation, twitter_profile_url, +1 more.
enrich_person_lookupBRead-only
Look up a person by first name and company domain to find their professional network profile. Cost: 2 credits.
Inputs: first_name (required), company_domain (required), title, location, +3 more.
enrich_person_pictureARead-only
Get the profile picture URL of a person. Cost: 0 credits.
Inputs: person_profile_url (required).
enrich_person_profileARead-only
Get structured data of a person profile. Provide exactly one of: profile_url, twitter_profile_url, or facebook_profile_url. Returns experience, education, skills, and more. Cost: 1 credit.
Inputs: extra, skills, use_cache, profile_url, +4 more.
enrich_person_searchARead-only
Search for people by various criteria including name, location, education, role, company, and more. Returns professional network URLs. Cost: 3 credits per URL returned. Returns up to page_size results (max 100) per call. If more matches exist, the response includes total_result_count and a next_page URL — pass its next_token back in to page through the full set.
Inputs: city, groups, region, skills, +24 more.
enrich_reverse_emailARead-only
Look up a person's professional network profile by their email address. Cost: 3 credits.
Inputs: email (required), lookup_depth, enrich_profile.
enrich_reverse_phoneARead-only
Look up a person's professional network profile by their phone number. Cost: 3 credits.
Inputs: phone_number (required).
enrich_role_lookupARead-only
Look up a person by their role at a company. Find who holds a specific title at a given company. Cost: 3 credits.
Inputs: role (required), company_name (required), enrich_profile.
enrich_school_profileARead-only
Get structured data of a school profile from its professional network URL. Cost: 1 credit.
Inputs: url (required), use_cache, live_fetch.
enrich_student_listARead-only
List students of a school. Returns profile URLs and basic info. Cost: 3 credits per student returned.
Inputs: school_url (required), country, sort_by, page_size, +4 more.
enrich_work_emailARead-only
Get the work email address of a person from their professional network profile URL. Cost: 3 credits.
Inputs: profile_url (required), callback_url.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 25 tools
Tool families are grouped by entity (company, person, school, job, credit), and each tool has a distinct input/output relationship. A few pairs like employee_list vs employee_search and company_lookup vs company_id_lookup could initially be confused, but their descriptions clarify different query inputs and result sets.
All tools share the enrich_ prefix and most follow an enrich_<entity>_<operation> pattern, making navigation predictable. Minor deviations like enrich_reverse_email, enrich_work_email, and enrich_disposable_email omit the person entity, but the intent remains clear.
The server covers multiple subdomains (companies, people, jobs, schools, credit) and nearly every tool has a distinct purpose. However, 25 tools is at the heavy end for an MCP server, making it feel more like a full API surface than a focused tool set.
Company, person, and job domains have strong lookup/search/profile coverage, including useful reverse and contact enrichment tools. The school domain is thinner: school_profile and student_list require a school URL, and there is no school lookup or search to discover that URL.
Maintenance
Related MCP Connectors
Enrich contacts by email or LinkedIn URL and build targeted B2B audiences.
People, company, job and LinkedIn post data, plus email finding and verification.
Company and contact enrichment: firmographics from a domain or IP, profiles from a work email.
Find companies and B2B contacts, enrich profiles, and look up work emails and business phones.
Related MCP Servers
- AlicenseCqualityDmaintenanceEnables access to LinkedIn data including profile enrichment, company information, job searches, post analytics, and social interactions through the LinkedIn Api8 API with comprehensive search and data retrieval capabilities.51MIT
- AlicenseBqualityCmaintenanceProvides 19 B2B data enrichment tools for finding and validating emails, searching company profiles, analyzing job postings, discovering employee information, and researching advertising campaigns through the LeadMagic API.1926 npm7MIT

Prospeo MCP Serverofficial
AlicenseAqualityCmaintenanceEnables AI tools to search and enrich B2B leads, including finding professional emails, company profiles, and filtering people and companies by various criteria.5468 npmMIT
Scrupp MCP serverofficial
AlicenseAqualityBmaintenanceExport LinkedIn, Sales Navigator and Apollo searches, find decision makers, and find and verify work emails from any MCP client.1061 npmMIT