get_listing_brief
Retrieve essential listing details for conversations or reservations in Hostaway MCP, providing context to support hospitality workflows.
Instructions
Return the minimum useful listing context tied to conversations or reservations.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| listingId | Yes | ||
| detailLevel | No |
Implementation Reference
- src/tools/get-listing-brief.ts:19-57 (registration)Registration and handler implementation for get_listing_brief tool. The tool uses a client to fetch listing data and formats it using buildListingBrief.
export function registerGetListingBriefTool(server: McpServer, client: HostawayDataClient) { server.registerTool( "get_listing_brief", { description: "Return the minimum useful listing context tied to conversations or reservations.", inputSchema: { listingId: z.union([z.string(), z.number()]), detailLevel: z.enum(["compact", "full"]).optional() }, outputSchema: { listingId: z.string().nullable(), listingName: z.string(), channelFacingName: z.string(), city: z.string().nullable(), country: z.string().nullable(), personCapacity: z.number().nullable(), bedrooms: z.number().nullable(), bathrooms: z.number().nullable(), missing: z.array(z.string()), notes: z.array(z.string()), raw: z .object({ listing: z.record(z.string(), z.unknown()) }) .optional() } }, async ({ listingId, detailLevel }) => { const listing = await client.getListing(listingId); return toolResult( buildListingBrief({ listing, detailLevel: detailLevel ?? "compact" }) ); } ); }