get_events
Retrieve real-time business events like funding rounds, acquisitions, executive hires, contracts, and product launches. Filter by type, industry, and location to find relevant events.
Instructions
Get real-time business events: funding rounds, acquisitions, executive hires, government contracts, and product launches. Filter by type, industry, and location.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| types | No | Comma-separated: funding, acquisition, hiring, contract, product_launch. Default: all | |
| days | No | Look back days (1-90). Default: 7 | |
| limit | No | Max events (1-200). Default: 50 | |
| industries | No | Comma-separated industries | |
| locations | No | Comma-separated locations |
Implementation Reference
- src/index.ts:203-225 (handler)Handler for the 'get_events' tool. Makes a GET request to /events with optional filters (types, days, limit, industries, locations), formats the event results with type, title, amount, series, and date, and returns a text response.
case "get_events": { const data = await apiRequest("GET", "/events", { types: (args as any).types, days: (args as any).days, limit: (args as any).limit, industries: (args as any).industries, locations: (args as any).locations, }); const events = data.events || []; if (events.length === 0) { return textResult("No events found matching your filters."); } const summary = events .map((e: any, i: number) => { let detail = `${i + 1}. [${e.type.toUpperCase()}] ${e.title}`; if (e.amount) detail += ` ($${(e.amount / 1_000_000).toFixed(1)}M)`; if (e.series) detail += ` - ${e.series}`; if (e.date) detail += ` | ${e.date}`; return detail; }) .join("\n"); return textResult(`${data.total} events found (showing ${events.length}):\n\n${summary}`); } - src/index.ts:98-111 (schema)Schema definition/registration for the 'get_events' tool. Defines input parameters: types (comma-separated event types), days (lookback period 1-90), limit (max events 1-200), industries and locations (comma-separated strings).
name: "get_events", description: "Get real-time business events: funding rounds, acquisitions, executive hires, " + "government contracts, and product launches. Filter by type, industry, and location.", inputSchema: { type: "object" as const, properties: { types: { type: "string", description: "Comma-separated: funding, acquisition, hiring, contract, product_launch. Default: all" }, days: { type: "number", description: "Look back days (1-90). Default: 7" }, limit: { type: "number", description: "Max events (1-200). Default: 50" }, industries: { type: "string", description: "Comma-separated industries" }, locations: { type: "string", description: "Comma-separated locations" }, }, }, - src/index.ts:71-168 (registration)Tool registration via ListToolsRequestSchema handler. The 'get_events' tool is listed among other tools (lines 97-112) in the array returned by this handler.
server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: [ { name: "get_scored_leads", description: "Get AI-scored sales leads based on your ICP (Ideal Customer Profile). " + "Returns companies with recent business events scored by AI for buyer intent, " + "buying stage, and recommended outreach strategy.", inputSchema: { type: "object" as const, properties: { min_score: { type: "number", description: "Minimum buyer intent score (0-100). Default: 0" }, max_results: { type: "number", description: "Max leads to return (1-50). Default: 25" }, buying_stages: { type: "array", items: { type: "string" }, description: "Filter by buying stage: 'Active Evaluation', 'Decision', 'Research', 'Awareness'", }, industries: { type: "array", items: { type: "string" }, description: "Filter by industry (e.g., ['SaaS', 'HealthTech', 'FinTech'])", }, }, }, }, { name: "get_events", description: "Get real-time business events: funding rounds, acquisitions, executive hires, " + "government contracts, and product launches. Filter by type, industry, and location.", inputSchema: { type: "object" as const, properties: { types: { type: "string", description: "Comma-separated: funding, acquisition, hiring, contract, product_launch. Default: all" }, days: { type: "number", description: "Look back days (1-90). Default: 7" }, limit: { type: "number", description: "Max events (1-200). Default: 50" }, industries: { type: "string", description: "Comma-separated industries" }, locations: { type: "string", description: "Comma-separated locations" }, }, }, }, { name: "get_market_pulse", description: "Get real-time market activity overview: funding totals, acquisition counts, " + "executive moves, contracts, and product launches for the past 7 and 30 days.", inputSchema: { type: "object" as const, properties: {} }, }, { name: "get_market_brief", description: "Get today's AI-generated strategic intelligence brief with narrative analysis " + "of the most important market movements, patterns, and opportunities.", inputSchema: { type: "object" as const, properties: {} }, }, { name: "manage_watchlist", description: "Add, remove, or list companies on your watchlist. Tracked companies generate " + "alerts when they have new events.", inputSchema: { type: "object" as const, properties: { action: { type: "string", enum: ["list", "add", "remove"], description: "Action: 'list' to view, 'add' to track, 'remove' to untrack", }, domains: { type: "array", items: { type: "string" }, description: "Company domains for add/remove (e.g., ['stripe.com', 'github.com'])", }, }, required: ["action"], }, }, { name: "get_watchlist_events", description: "Get recent events for companies on your watchlist: funding, acquisitions, " + "executive hires, contracts.", inputSchema: { type: "object" as const, properties: { days: { type: "number", description: "Look back days (1-90). Default: 7" }, types: { type: "string", description: "Comma-separated event types" }, }, }, }, { name: "get_usage", description: "Check your FundzWatch API usage: calls made, limits, current tier.", inputSchema: { type: "object" as const, properties: {} }, }, ], })); - src/index.ts:10-19 (helper)Helper function getApiKey() used by the handler to retrieve the API key from environment variables.
function getApiKey(): string { const key = process.env.FUNDZWATCH_API_KEY; if (!key) { throw new Error( "FUNDZWATCH_API_KEY environment variable is required. " + "Get a free key at https://fundzwatch.ai/onboarding" ); } return key; } - src/index.ts:58-60 (helper)Helper function textResult() used by the handler to format the response as a text content block.
function textResult(text: string) { return { content: [{ type: "text" as const, text }] }; }