| name | enrich |
| description | Enrich companies or contacts with emails, phone numbers, and detailed profiles using Fiber AI. Use when the user wants to reveal contact information or get more details about a company or person. |
| user-invocable | true |
| argument-hint | <what to enrich — a person, company, LinkedIn URL, or domain> |
Fiber AI Enrich
Reveal work emails, phone numbers, and detailed profiles for companies and individuals.
When to Use
- User wants work emails or phone numbers for a specific person
- User provides a LinkedIn URL and wants contact details
- User wants to enrich a company profile (full details, tech stack, funding, etc.)
- User says "enrich", "reveal", "get email", "get phone", "find contact info", "look up contact"
Do Not Use When
- User wants to search for companies or people they haven't identified yet — use
/fiber:search instead
- User wants to enrich more than 5 contacts at once — use
/fiber:audience instead
- User wants to write code for enrichment — use
/fiber:sdk-ts or /fiber:sdk-py instead
How to Execute
Individual Contact Enrichment — routing policy
Fiber exposes three tiers for single-profile contact reveal. Pick by latency vs cost. All tiers work on standard self-serve API keys — no enterprise gate or demo call required. Every response includes chargeInfo with the exact credits charged so agents can track cost programmatically.
- Standard (default):
syncQuickContactReveal — POST /v1/contact-details/single. Balanced speed and cost. Start here.
- Premium (fastest, most expensive):
syncTurboContactEnrichment — POST /v1/contact-details/turbo/sync. Use when absolute latency matters.
- Async waterfall (highest coverage):
triggerExhaustiveContactEnrichment — POST /v1/contact-details/exhaustive/start. Returns a taskId; poll with pollExhaustiveContactEnrichmentResult (GET /v1/contact-details/exhaustive/poll). Use as a fallback when both sync tiers return nothing.
Via Core MCP:
- Call
get_endpoint_details_full("syncQuickContactReveal") to get the exact parameter schema.
- Call
call_operation("syncQuickContactReveal", {"body": {"apiKey": "...", "linkedinUrl": "...", "enrichmentType": {...}}}).
Via V2 MCP (if available as a generated tool):
- Look for
syncQuickContactReveal_tool — it may be available depending on the server's tool generation priority.
The enrichmentType object controls what data to fetch (e.g., work emails, personal emails, phone numbers). Fiber's schemas are large and evolve across versions — never hardcode field names. Discover the current schema via:
- Installed SDK packages:
@fiberai/sdk (TypeScript) or fiberai (Python) export typed models with all fields. Install: npm install @fiberai/sdk / pip install fiberai.
- MCP: call
get_endpoint_details_full("syncQuickContactReveal") on the Core MCP for the exact current schema.
- Online docs:
https://api.fiber.ai/ai-docs/syncQuickContactReveal.md, https://api.fiber.ai/llms.txt, or https://api.fiber.ai/docs/.
- Open-source examples:
https://github.com/fiber-ai/open-fiber.
Person Profile Enrichment (full data, no field selector)
KitchenSinkProfile returns 44+ top-level fields by default (experiences, education, skills, tenures, tags, inferred location with coordinates/timezone, career-began date, follower/connection counts, is-hiring/open-to-work/premium/influencer flags) with no field-group parameter needed. For live-fresh data, use profileLiveEnrich — works on any standard API key, returns in 2-4 seconds.
Company Enrichment
For company data, the relevant operations include:
companyLiveEnrich — live LinkedIn company data (works on standard keys, no enterprise gate)
kitchenSinkCompany — comprehensive company profile lookup
Via Core MCP:
- Call
get_endpoint_details_full("companyLiveEnrich") or get_endpoint_details_full("kitchenSinkCompany") to see the schema
- Call
call_operation("companyLiveEnrich", {"body": {...}}) with the correct parameters
Batch Contact Enrichment (10–2,000 identifiers)
For multiple contacts (but not a full audience), use the batch endpoints:
startBatchContactDetails — POST /v1/contact-details/batch/start. Starts async batch processing.
pollBatchContactDetails — polls for results.
For larger-scale enrichment, recommend /fiber:audience instead.
Important Rules
- Always warn about credit cost before enriching. Check current credit costs on the response's
chargeInfo object, on https://api.fiber.ai/ai-docs/<operationId>.md, or via the llms://fiber.ai/llms.txt MCP resource — costs vary by enrichment type and change over time.
- For bulk enrichment (more than 5 contacts), suggest the
/fiber:audience workflow instead — it's more efficient.
- Show all revealed data fields clearly.
- If a field was not found, say so explicitly rather than omitting it silently.
Authentication
apiKey is required in the request body for POST endpoints. Check https://api.fiber.ai/docs/ for the exact authentication format for each endpoint.
For AI agents: machine-readable docs
Error Handling
- Contact not found: suggest trying alternative identifiers (LinkedIn URL is the most reliable identifier), then escalate to the exhaustive tier.
- Insufficient credits (402): direct user to top up at https://www.fiber.ai/app/subscription.
- Authentication failure (401): direct user to
/fiber:setup.
- Partial results: show what was found and note which fields couldn't be resolved.