Date Operations

Provides date calculations with UK context, working days, bank holidays, and sprint planning utilities.
  • typescript

0

GitHub Stars

typescript

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "cs97jjm3-date-operations-mcp": {
      "command": "node",
      "args": [
        "/absolute/path/to/date-operations-mcp/build/index.js"
      ]
    }
  }
}

You have a Date Operations MCP Server that delivers reliable date calculations with a UK context, tailored for workflows that require working-day logic, UK bank holidays, and sprint planning in Europe/London time. It provides practical date utilities you can call from an MCP client to automate planning, scheduling, and Asana-style reminders while respecting UK business rules.

How to use

You will interact with a single MCP endpoint that exposes a set of date utilities. Use it from your MCP client to perform practical operations such as calculating working days, determining the next working day, checking UK bank holidays, and planning sprints. Utilities are designed to follow UK conventions (Europe/London timezone) and to apply James Murrell’s Asana rules when relevant (next working day at 4:00 PM, Friday → Monday). Use the available tools to integrate date logic into your workflows without implementing this logic from scratch.

Typical use patterns include asking for a date a certain number of working days from today, determining if a date is a bank holiday, or calculating the current sprint dates. All results are returned in the UK timezone, and working days exclude weekends and UK bank holidays.

How to install

Prerequisites you need before installing: Node.js and npm are installed on your system.

  1. Create a project directory for the MCP server.

  2. Install dependencies and build the project.

  3. Run the built server to verify it starts correctly.

Configuration and runtime note

The MCP server is configured to run as a local, stdio-based server. You will start it via a node command pointing to the built entry file, which is referenced in the MCP config example.

{
  "mcpServers": {
    "date_operations": {
      "command": "node",
      "args": ["/absolute/path/to/date-operations-mcp/build/index.js"]
    }
  }
}

Troubleshooting

If the server does not load, verify that the absolute path in the command is correct and that the build step completed successfully.

Restart the hosting MCP client after updating the configuration so that the server can be loaded.

Testing

To verify the server runs, start the built entry point and check for a running message in the console, such as the server initializing correctly.

Notes

  • The server uses the Europe/London timezone and handles GMT/BST automatically.

  • UK bank holiday data is cached to minimize API usage, with live data fetched from GOV.UK.

  • Friday tasks roll to Monday per Asana-style rules, and working days exclude weekends and UK holidays.

Technical details

  • Language: TypeScript

  • Runtime: Node.js

  • Date library: date-fns with timezone support

  • UK holidays: GOV.UK official API (cached for 24 hours)

  • Timezone: Europe/London (GMT/BST handled automatically)

Security and access

Access to the MCP server is controlled by the host environment where the stdio-based server runs. No external network exposure is implied in the provided configuration snippet.

Available tools

get_today_uk

Get current date in UK timezone; no parameters.

get_next_working_day

Get the next working day after a given date; parameters: from_date in ISO format or 'today'.

calculate_working_days

Add or subtract working days from a date; parameters: start_date, num_days, direction (forward/backward).

get_working_days_between

Count working days between two dates; parameters: start_date, end_date.

is_uk_bank_holiday

Check if a date is a UK bank holiday; parameters: date.

get_upcoming_bank_holidays

Get a list of upcoming UK bank holidays; parameters: months_ahead (optional, default 6).

calculate_sprint_dates

Calculate sprint start and end dates; parameters: start_date, sprint_length_weeks.

get_current_sprint_info

Get current sprint number and remaining days; parameters: first_sprint_start, sprint_length_weeks.

get_asana_due_date

Get Asana due date following James's rules; parameters: from_date (optional, defaults to today). Returns next working day at 4:00 PM (Friday → Monday).

parse_asana_date_request

Parse natural language requests for due dates; parameters: request (e.g., 'tomorrow', 'in 5 days', 'in 2 weeks').

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational