fi_search_by_industry
Search for Finnish companies by industry classification to identify market opportunities and analyze competitors. Filter results by location and company form for targeted research.
Instructions
Find Finnish companies by industry (TOL 2008 classification). Useful for market research and competitor analysis.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| industry | Yes | Industry - either a TOL 2008 code (e.g., '62010' for software) or descriptive text (e.g., 'software', 'restaurant') | |
| location | No | Filter by town/city | |
| company_form | No | Filter by company form (OY, OYJ, etc.) | |
| page | No | Page number |
Implementation Reference
- src/servers/finnish-companies.js:235-263 (handler)The implementation of the `fi_search_by_industry` tool, including its registration, schema definition, and handler logic.
server.tool( "fi_search_by_industry", "Find Finnish companies by industry (TOL 2008 classification). Useful for market research and competitor analysis.", { industry: z.string().describe("Industry - either a TOL 2008 code (e.g., '62010' for software) or descriptive text (e.g., 'software', 'restaurant')"), location: z.string().optional().describe("Filter by town/city"), company_form: z.string().optional().describe("Filter by company form (OY, OYJ, etc.)"), page: z.number().optional().default(1).describe("Page number"), }, async ({ industry, location, company_form, page }) => { const params = { mainBusinessLine: industry }; if (location) params.location = location; if (company_form) params.companyForm = company_form; if (page && page > 1) params.page = page; const data = await apiFetch("/companies", params); const companies = data.companies || []; const total = data.totalResults || 0; if (companies.length === 0) { return { content: [{ type: "text", text: `No companies found in industry "${industry}".` }] }; } const header = `Found ${total.toLocaleString()} companies in "${industry}" (showing ${companies.length}):\n`; const results = companies.map((c, i) => `${i + 1}. ${formatCompanySummary(c)}`).join("\n\n"); return { content: [{ type: "text", text: header + "\n" + results }] }; } );