Skip to main content
Glama
README.md
# 7Pace-Connector

An MCP (Model Context Protocol) server that connects Claude to the [7pace Timetracker](https://www.7pace.com/) API for Jira.

## Tools

| Tool | Description |
|------|-------------|
| `list_worklogs` | List work logs, filter by assignee or Jira issue, cursor-paginate |
| `get_worklog` | Get all logs for a Jira issue with total time summary |
| `log_time` | Create a new time entry (duration in minutes) |
| `update_worklog` | Update an existing entry by UUID |
| `delete_worklog` | Delete an entry by UUID |
| `summarize_time` | Paginate all logs and show total + breakdown by Jira issue |

## Setup

### 1. Install dependencies and build

```bash
npm install
npm run build
```

### 2. Generate a 7pace API token

In 7pace → Settings → API Tokens → generate a new token.

### 3. Register in Claude Code

Add to your `~/.claude/mcp.json`:

```json
{
  "mcpServers": {
    "7Pace-Connector": {
      "command": "node",
      "args": ["/path/to/TimeReporting/dist/index.js"],
      "env": {
        "SEVENPACE_TOKEN": "your-token-here"
      }
    }
  }
}
```

Restart Claude Code. The MCP server will connect automatically.

## API Details

- **Base URL:** `https://timehubjra.7pace.com/api/v1`
- **Auth:** Bearer token via `SEVENPACE_TOKEN` env var
- **Pagination:** cursor-based via `pageInfo.endCursor`
- **Filter params:** `assigneeId`, `externalItemId`, `after` (cursor)

## Notes

- `externalItemId` is the **numeric** Jira issue ID (not the key like `PROJ-123`)
- `duration` is in seconds; all tools accept/display minutes for convenience
- Your token stays in your local `~/.claude/mcp.json` and is never committed

TDQS

A3.6/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a distinct purpose: listing, getting by issue, deleting, creating, updating, and summarizing work logs. There is no ambiguity between them.

Naming Consistency4/5

Most tools follow a verb_noun pattern (list_worklogs, get_worklog, delete_worklog, update_worklog). 'log_time' and 'summarize_time' use 'time' instead of 'worklog', but the pattern is still consistent and clear.

Tool Count5/5

Six tools cover the essential operations for work log management without being excessive. The count is well-suited to the server's purpose.

Completeness4/5

CRUD operations are covered (create via log_time, read via list_worklogs and get_worklog, update, delete) plus a summary function. A direct get-by-ID is missing, but list_worklogs and get_worklog cover retrieval adequately.

Maintenance

ActivityStale
ResponsivenessNo issues