home / mcp / timesheet mcp server

Timesheet MCP Server

Provides stateless MCP-based access to authentication, timesheet, activities, and daily standup updates.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "arshad-khan1-timesheet-mcp": {
      "command": "node",
      "args": [
        "/path/to/timesheet-mcp/dist/main.js"
      ],
      "env": {
        "NODE_ENV": "production",
        "API_BASE_URL": "https://timesheet.pinnacle.in:3000/api",
        "TIMESHEET_PASSWORD": "your-password",
        "TIMESHEET_USERNAME": "[email protected]"
      }
    }
  }
}

This Timesheet MCP Server provides a stateless, self-authenticating bridge that lets you manage authentication, daily timesheets, activities, and daily standups through simple MCP tool calls. It refreshes tokens automatically, avoids storing sensitive credentials on the server, and ensures each request is independent and easy to troubleshoot.

How to use

You interact with the server through an MCP client. On each tool invocation, the server automatically authenticates, refreshes tokens when needed, and returns fresh results for your requested action. You can perform authentication checks, create and list timesheet entries, fetch available work activities, and submit daily scrum updates without managing tokens yourself.

How to install

npm install
```

```bash
# Optional: set server defaults via environment if you are running the server locally
# Backend API (optional - defaults to https://timesheet.pinnacle.in:3000/api)
# API_BASE_URL=https://timesheet.pinnacle.in:3000/api
# NODE_ENV=production
```

```bash
npm run build
npm run start

Configuration and usage notes

The server expects credentials to be provided by your MCP client environment. Do not store credentials on the server. You will configure TIMESSHEET_USERNAME and TIMESHEET_PASSWORD in the MCP client environment, not in a server file. The client examples below illustrate typical setups.

Security and tokens

Token handling is fully stateless. A fresh login occurs for every session, and tokens are refreshed automatically as needed. On server startup, any cached token data is cleared to ensure a clean state. If login fails, you receive a clear error message and no sensitive data is retained on disk between restarts.

Notes

SSL certificate verification is disabled in this setup to accommodate self-signed certificates. Use caution in production environments and prefer valid certificates where possible.

MCP client configuration examples

The MCP client configuration demonstrates how to wire credentials and API endpoints into client environments.

Tools overview

The server exposes a focused set of tools organized by domain to simplify automation tasks.

Architecture overview

The server follows a modular architecture with dedicated modules for authentication, projects, timesheets, activities, daily updates, and shared utilities. This separation helps you extend or customize each domain independently.

API Endpoints Used

The server relies on a concise set of endpoints to perform core actions: login, fetch user projects, list modules by project, fetch activities, create timesheet entries, and list user timesheets.

Available tools

whoami

Get current authenticated user info with assigned projects and modules, handling token refresh automatically.

create_new_timesheet_entry

Create a new daily timesheet entry with project, module, activity, time range, duration, and description.

list_user_timesheet_entries

Fetch and display a user’s timesheet entries with optional pagination.

list_all_available_work_activities

Retrieve all available work activity types to classify timesheet entries.

create_daily_scrum_standup_update

Submit a daily standup update with progress, priorities, and blockers.