get_week_year
Calculate the week number and ISO week number for any given date to track time periods accurately in applications.
Instructions
Get the week and isoWeek of the year.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | The date to get the week and isoWeek of the year. e.g. 2025-03-23 |
Implementation Reference
- src/index.ts:125-140 (handler)Handles the 'get_week_year' tool call: validates input, computes week and isoWeek using getWeekOfYear, and formats response.case 'get_week_year': { if (!checkWeekOfYearArgs(args)) { throw new Error(`Invalid arguments for tool: [${name}]`); } const { date } = args; const { week, isoWeek } = getWeekOfYear(date); return { success: true, content: [ { type: 'text', text: `The week of the year is ${week}, and the isoWeek of the year is ${isoWeek}.`, }, ], }; }
- src/index.ts:183-190 (handler)Core function implementing the logic to get the week and ISO week of the year for a given date or current date using dayjs.week() and dayjs.isoWeek().function getWeekOfYear(date?: string) { const week = date ? dayjs(date).week() : dayjs().week(); const isoWeek = date ? dayjs(date).isoWeek() : dayjs().isoWeek(); return { week, isoWeek, }; }
- src/tools.ts:101-113 (schema)Defines the input schema, name, and description for the 'get_week_year' tool.export const GET_WEEK_YEAR: Tool = { name: 'get_week_year', description: 'Get the week and isoWeek of the year.', inputSchema: { type: 'object', properties: { date: { type: 'string', description: 'The date to get the week and isoWeek of the year. e.g. 2025-03-23', }, }, }, };
- src/index.ts:31-33 (registration)Registers the GET_WEEK_YEAR tool in the list of available tools for ListToolsRequest.return { tools: [CURRENT_TIME, RELATIVE_TIME, DAYS_IN_MONTH, GET_TIMESTAMP, CONVERT_TIME, GET_WEEK_YEAR], };
- src/index.ts:253-259 (helper)Validates the input arguments for the get_week_year tool.function checkWeekOfYearArgs(args: unknown): args is { date: string } { return ( typeof args === 'object' && args !== null && ('date' in args ? typeof args.date === 'string' : true) ); }