@pipeworx/forager

Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/forager’s. Install: one-click buttons

Connect to just the @pipeworx/forager pack

https://gateway.pipeworx.io/forager/mcp — only @pipeworx/forager’s own tools, nothing else in the catalog.

No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.

Tools: 1

Find a person’s phone number from their LinkedIn profile URL, via Forager (forager.ai). Part of enrich-waterfall’s new enrich_find_phone finder rotation (fleet #2860).

Tools

  • forager_find_phone(linkedin_url?, person_id?, _accountId, _apiKey) — phone number + type. Requires BOTH a Forager account id and an API key.

Auth

BYO only. Pass your Forager account id as _accountId and your API key as _apiKey (header X-API-KEY, with the account id as a PATH segment: /api/{account_id}/...). Both are on your Forager dashboard. No platform key (D4).

Data sources

  • https://api-v2.forager.ai/api/{account_id}/datastorage/person_contacts_lookup/phone_numbers/

Verification notes (fleet #2860, 2026-10-08, no vendor key held) — THIS PACK HAS THE WEAKEST CONFIRMATION IN THE BATCH

  • The URL path is confirmed live. Every auth shape tried against .../phone_numbers/ with account id "0" returns HTTP 403 (never 404), so the path and the account-id-in-path convention are real.
  • The header name is NOT independently confirmed. No header, X-API-KEY: invalidkey123, Authorization: Api-Key invalidkey123, and Authorization: Bearer invalidkey123 all return the byte-identical {"detail":"Authentication credentials were not provided."}. A placeholder-key probe cannot tell “wrong header” apart from “right header, garbage key” when the server’s generic-scheme message is this generic. X-API-KEY is used here because that is what search results describing Forager’s own docs name, but this is the one auth shape in this batch that should be treated as a hypothesis, not a confirmed fact, until a real key either works or returns a DIFFERENT 401/403 body.
  • The request/response body fields are a best-effort guess, not a confirmed schema. We could not read docs.forager.ai’s own schema page for this specific endpoint (only sibling endpoints — detail lookup, reverse-by-email, reverse-by-phone, role search — turned up in what we could fetch). This pack sends {"linkedin_url": ...} or {"person_id": ...} and reads a phone_numbers array (string or {number, type} objects) back, by analogy with Forager’s REST conventions elsewhere. If a real key gets a 200 with a different shape, findPhone() in src/index.ts is the only place that needs fixing.
  • Not verified (no key held), and more load-bearing than usual for this pack: the auth header name, the request body field name, the response field name, and whether _accountId is even the right concept (vs. the account id being derivable from the key itself).

Tools

Tools

  • forager_find_phone — Find a person's phone number from their LinkedIn profile URL, via Forager. Requires both your Forager account id and API key. Example: forager_find_phone({ linkedin_url: https://www.linkedin.com/in/pa

Regenerated from source · build October 9, 2026