get_session_data_properties
Retrieve session data property names and data types for a website within a specified time range.
Instructions
Get session data property names and their data types for a website
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| websiteId | Yes | Website UUID | |
| startAt | Yes | Start timestamp in milliseconds | |
| endAt | Yes | End timestamp in milliseconds |
Implementation Reference
- src/tools/sessions.ts:54-71 (handler)The handler, schema, and registration are all in one block via the McpServer.tool() call. The handler makes a GET request to /api/websites/${websiteId}/session-data/properties with startAt and endAt query parameters and returns the JSON result.
server.tool( "get_session_data_properties", "Get session data property names and their data types for a website", { websiteId: z.string().describe("Website UUID"), startAt: z.number().describe("Start timestamp in milliseconds"), endAt: z.number().describe("End timestamp in milliseconds"), }, async ({ websiteId, startAt, endAt }) => { const data = await client.call( "GET", `/api/websites/${websiteId}/session-data/properties`, undefined, { startAt, endAt } ); return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] }; } ); - src/tools/sessions.ts:57-61 (schema)Input schema using Zod: websiteId (string), startAt (number), endAt (number) - all required.
{ websiteId: z.string().describe("Website UUID"), startAt: z.number().describe("Start timestamp in milliseconds"), endAt: z.number().describe("End timestamp in milliseconds"), }, - src/tools/sessions.ts:54-71 (registration)Registered via server.tool('get_session_data_properties', ...) inside registerSessionTools() in src/tools/sessions.ts. Called from src/index.ts line 31.
server.tool( "get_session_data_properties", "Get session data property names and their data types for a website", { websiteId: z.string().describe("Website UUID"), startAt: z.number().describe("Start timestamp in milliseconds"), endAt: z.number().describe("End timestamp in milliseconds"), }, async ({ websiteId, startAt, endAt }) => { const data = await client.call( "GET", `/api/websites/${websiteId}/session-data/properties`, undefined, { startAt, endAt } ); return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] }; } );