Harvest MCP Server for managing Harvest via the Model Context Protocol
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"harvest-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# Harvest MCP Server A Model Context Protocol (MCP) server for interacting with Harvest time tracking and project management APIs. The PyPI package and the command you run are the same name: **`harvest-mcp`**. ## Install ```bash pip install harvest-mcp ``` ## Run (PyPI — no `--from`) ```bash uvx harvest-mcp --help uvx harvest-mcp \ --account-id "<harvest_account_id>" \ --api-key "<harvest_api_key>" \ --read-only "false" ``` `uvx` downloads the package if needed, installs it in an isolated environment, and runs the `harvest-mcp` CLI. ## Run (editable / local checkout) ```bash pip install -e . harvest-mcp --help ``` ## Run with `python -m` (package already in that interpreter) ```bash python -m harvest_mcp_server \ --account-id "<harvest_account_id>" \ --api-key "<harvest_api_key>" \ --read-only "false" ``` The import path uses underscores (`harvest_mcp_server`); the user-facing CLI is `harvest-mcp`. ### Required arguments - `--account-id`: Harvest account ID - `--api-key`: Harvest API key ### Optional arguments - `--read-only`: Enable read-only mode (`true`/`false`), default `false` ## Features - Users (list, detail) - Time entries (list, create, start/stop timers, details, unsubmitted) - Projects, clients, and tasks lookup - Estimates lifecycle (list/detail/lookup/create/update/state-change/send/delete) - Optional read-only mode for safe operation ## MCP configuration (recommended) Use **`uvx`** and a single tool name — no `--from`** when pulling from PyPI: ```json { "mcpServers": { "harvest-mcp": { "command": "uvx", "args": [ "harvest-mcp", "--account-id", "YOUR_HARVEST_ACCOUNT_ID", "--api-key", "YOUR_HARVEST_API_KEY", "--read-only", "true" ] } } } ``` If `uvx` is not on `PATH`, set `"command"` to the full path of the `uvx` binary (for example `~/.local/bin/uvx` on Linux). ### Local wheel (offline / pre-release) Only when you are not using PyP…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.