tmap_poi
Search for Korean points of interest using TMap to find specific locations with Korean address details. Supports keyword searches and geographic coordinates.
Instructions
Search Korean points of interest via TMap. Good for finding specific locations with Korean address details.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| searchKeyword | Yes | Search keyword (Korean supported) | |
| centerLon | No | Center longitude for search | |
| centerLat | No | Center latitude for search | |
| page | No | Page number (default 1) | |
| count | No | Results per page (default 20) |
Implementation Reference
- src/tools/tmap.ts:18-29 (registration)Registration of the 'tmap_poi' tool including its description, input schema, and associated API endpoint.
{ name: "tmap_poi", description: "Search Korean points of interest via TMap. Good for finding specific locations with Korean address details.", inputSchema: z.object({ searchKeyword: z.string().describe("Search keyword (Korean supported)"), centerLon: z.string().optional().describe("Center longitude for search"), centerLat: z.string().optional().describe("Center latitude for search"), page: z.number().optional().describe("Page number (default 1)"), count: z.number().optional().describe("Results per page (default 20)"), }), endpoint: "/v1/tmap/poi", }, - src/index.ts:14-40 (handler)The handler logic for all MCP tools, including 'tmap_poi', which dynamically executes the tool by calling the configured gateway endpoint.
// Register all tools for (const tool of allTools) { server.tool( tool.name, tool.description, tool.inputSchema.shape, 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 }], }; }, ); }