scrape_linkedin
Extract LinkedIn profile details, posts, and comments programmatically by providing a profile URL. Integrates with RapidAPI, costing 2 credits per request, for efficient data retrieval and analysis.
Instructions
Retrieves detailed profile data and posts with comments from a LinkedIn profile URL using RapidAPI. Each request costs 2 credits.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| linkedin_url | Yes | The LinkedIn profile URL to scrape. |
Implementation Reference
- src/tools/scrape-linkedin.ts:16-39 (handler)The main async handler function that executes the LinkedIn profile scraping logic using the Linkd API.export const scrapeLinkedinTool = async ({ linkedin_url, }: ScrapeLinkedinParams) => { const apiUrl = new URL("https://search.linkd.inc/api/enrich/scrape"); apiUrl.searchParams.append("linkedin_url", linkedin_url); const response = await makeLinkdRequest(apiUrl.toString(), {}); const responseData = await response.json(); if (responseData.error) { throw new Error( `Failed to scrape LinkedIn profile: ${JSON.stringify(responseData.error)}` ); } return { content: [ { type: "text" as const, text: `profile scraping completed successfully: ${JSON.stringify(responseData, null, 2)}` } ] }; };
- src/tools/scrape-linkedin.ts:8-10 (schema)Zod schema defining the single input parameter 'linkedin_url' for the tool.export const scrapeLinkedinSchema = { linkedin_url: z.string().describe("The LinkedIn profile URL to scrape."), };
- src/server_setup.ts:40-45 (registration)Registration of the scrape_linkedin tool on the MCP server using server.tool().server.tool( scrapeLinkedinName, scrapeLinkedinDescription, scrapeLinkedinSchema, scrapeLinkedinTool );