place-details
Retrieve detailed information about a specific location by providing its unique place ID through the Campertunity MCP Server.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| placeId | Yes | The id of the place to get details for. |
Implementation Reference
- src/tools/place_details.ts:12-30 (handler)The handler function that fetches place details by ID from the CampertunityClient API and returns the data as JSON content or an error response.async ({ placeId }) => { try { const place = await campertunityClient.get(`/place/details?placeId=${placeId}`); return { content: [ { type: 'text', text: JSON.stringify(place), mimeType: 'application/json', }, ], }; } catch (error) { return { content: [{ type: 'text', text: 'Error: ' + (error as Error).message }], isError: true, }; } }
- src/tools/place_details.ts:9-11 (schema)Input schema definition using Zod for the 'placeId' parameter.{ placeId: z.string().describe('The id of the place to get details for.'), },
- src/tools/place_details.ts:7-31 (registration)Registers the 'place-details' tool on the MCP server, including name, input schema, and handler.server.tool( 'place-details', { placeId: z.string().describe('The id of the place to get details for.'), }, async ({ placeId }) => { try { const place = await campertunityClient.get(`/place/details?placeId=${placeId}`); return { content: [ { type: 'text', text: JSON.stringify(place), mimeType: 'application/json', }, ], }; } catch (error) { return { content: [{ type: 'text', text: 'Error: ' + (error as Error).message }], isError: true, }; } } );
- src/index.ts:25-25 (registration)Calls the tool registration function in the main server setup.placeDetailsTool(server, campertunityClient);