search_job_postings
Search job postings to identify hiring companies and discover sales opportunities by analyzing employment trends and organizational growth signals.
Instructions
Search for job postings to identify companies that are hiring and find buying signals.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q_keywords | No | Keywords to search in job postings | |
| organization_ids | No | Filter by organization IDs | |
| page | No | Page number |
Implementation Reference
- src/index.ts:1180-1202 (handler)Core handler function that executes the tool by calling Apollo API endpoint /job_postings/search with provided arguments and formats the response into a readable text summary of up to 20 job postings including title, company, location, post date, and URL.private async searchJobPostings(args: any) { const response = await this.axiosInstance.post("/job_postings/search", args); const jobPostings = response.data.job_postings || []; let result = `Job Postings Found: ${jobPostings.length}\n\n`; jobPostings.slice(0, 20).forEach((job: any, index: number) => { result += `${index + 1}. ${job.title}\n`; result += ` Company: ${job.organization?.name || "N/A"}\n`; result += ` Location: ${job.city || "N/A"}\n`; result += ` Posted: ${job.posted_at ? new Date(job.posted_at).toLocaleDateString() : "N/A"}\n`; result += ` URL: ${job.url || "N/A"}\n\n`; }); return { content: [ { type: "text", text: result, }, ], }; }
- src/index.ts:565-582 (schema)Input schema defining parameters for the search_job_postings tool: q_keywords (search keywords), organization_ids (array of org IDs to filter), page (pagination).inputSchema: { type: "object", properties: { q_keywords: { type: "string", description: "Keywords to search in job postings", }, organization_ids: { type: "array", items: { type: "string" }, description: "Filter by organization IDs", }, page: { type: "number", description: "Page number", }, }, },
- src/index.ts:561-583 (registration)Tool registration in getTools() array: defines name, description, and input schema for MCP ListTools response.{ name: "search_job_postings", description: "Search for job postings to identify companies that are hiring and find buying signals.", inputSchema: { type: "object", properties: { q_keywords: { type: "string", description: "Keywords to search in job postings", }, organization_ids: { type: "array", items: { type: "string" }, description: "Filter by organization IDs", }, page: { type: "number", description: "Page number", }, }, }, },
- src/index.ts:96-97 (registration)Dispatcher case in CallToolRequestSchema handler that routes calls to the searchJobPostings method.case "search_job_postings": return await this.searchJobPostings(args);