UNPKG

campertunity-mcp-server

Version:

MCP Server for Campertunity - A Model Context Protocol server for interacting with camping and outdoor recreation data

30 lines (29 loc) 1.22 kB
import { z } from 'zod'; export const placeBookTool = (server, campertunityClient) => { server.tool('place-book', { placeId: z.string().describe('The id of the place to book.'), startDate: z.string().optional().describe('The start date of the booking. Format: YYYY-MM-DD'), endDate: z.string().optional().describe('The end date of the booking. Format: YYYY-MM-DD'), adults: z.number().default(1).describe('Number of adults. Default is 1.'), children: z.number().default(0).describe('Number of children. Default is 0.'), }, async ({ placeId, startDate, endDate, adults, children }) => { try { const availability = await campertunityClient.post(`/place/book`, { placeId, startDate, endDate, adults, children, }); return { content: [{ type: 'text', text: JSON.stringify(availability), mimeType: 'application/json' }], }; } catch (error) { return { content: [{ type: 'text', text: 'Error: ' + error.message }], isError: true, }; } }); };