kakao_maps_search
Search Korean addresses, businesses, and points of interest using Kakao Maps API to find locations in South Korea.
Instructions
Search Korean places via Kakao Maps API. Best for Korean addresses, local businesses, and POI search in South Korea.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search keyword (Korean supported, e.g., '강남역 맛집') | |
| category_group_code | No | Category: MT1=mart, CS2=convenience, PS3=kindergarten, SC4=school, AC5=academy, PK6=parking, OL7=gas, SW8=subway, BK9=bank, CT1=culture, AG2=broker, PO3=government, AT4=attraction, AD5=accommodation, FD6=food, CE7=cafe, HP8=hospital, PM9=pharmacy | |
| x | No | Longitude for center point | |
| y | No | Latitude for center point | |
| radius | No | Search radius in meters (max 20000) | |
| page | No | Page number (default 1) | |
| size | No | Results per page (default 15, max 45) |
Implementation Reference
- src/index.ts:20-39 (handler)This is the generic handler logic that executes 'kakao_maps_search' (and other tools) by sending a request to the gateway endpoint defined in the tool configuration.
async (params) => { const method = tool.method || "POST"; const result = await gatewayRequest(method, tool.endpoint, params as Record<string, unknown>); if (result.error) { return { content: [{ type: "text" as const, text: `Error (${result.status}): ${result.error}` }], isError: true, }; } const text = typeof result.data === "string" ? result.data : JSON.stringify(result.data, null, 2); return { content: [{ type: "text" as const, text }], }; }, ); - src/tools/kakao-maps.ts:6-19 (schema)Definition of the 'kakao_maps_search' tool, including its input schema and the API endpoint it maps to.
name: "kakao_maps_search", description: "Search Korean places via Kakao Maps API. Best for Korean addresses, local businesses, and POI search in South Korea.", inputSchema: z.object({ query: z.string().describe("Search keyword (Korean supported, e.g., '강남역 맛집')"), category_group_code: z.string().optional() .describe("Category: MT1=mart, CS2=convenience, PS3=kindergarten, SC4=school, AC5=academy, PK6=parking, OL7=gas, SW8=subway, BK9=bank, CT1=culture, AG2=broker, PO3=government, AT4=attraction, AD5=accommodation, FD6=food, CE7=cafe, HP8=hospital, PM9=pharmacy"), x: z.string().optional().describe("Longitude for center point"), y: z.string().optional().describe("Latitude for center point"), radius: z.number().optional().describe("Search radius in meters (max 20000)"), page: z.number().optional().describe("Page number (default 1)"), size: z.number().optional().describe("Results per page (default 15, max 45)"), }), endpoint: "/v1/kakao-maps/search", },