eHour MCP Server

The eHour MCP Server lets AI tools work directly with your eHour data. Instead of clicking through reports or updating data manually, you can just ask.

You can use tools like Claude Code, Copilot, or Codex (OpenAI) to log time, manage projects and users, and run reports, all through natural language.


What you can do

The MCP server is capable of:

  • Logging and updating time entries (manual or via timers)
  • Managing clients, projects, tasks, and assignments
  • Inviting, updating, or archiving users and manage teams
  • Running reports and asking questions about your data

Examples

Here are a few things you can ask:

I logged all my time last week to 'Acme Onboarding' by mistake. Move those entries over to 'Acme Phase 1'.
 
Start a timer for the Website Redesign project at Globex.

Who on the Engineering team hasn't submitted their timesheet for last week?

Create client 'Initech', add a 'Phase 1' project under it, and assign the Design team at €95/hr.

Run a monthly billable-hours report for the Mobile App project in Q3.

You can refine results, ask follow-ups, or combine questions, just like you would with any AI tool.

Access & permissions

Access follows your existing eHour roles and permissions. If you can’t do something in eHour, the MCP Server won’t allow it either.

Admins need to enable the MCP Server first in the Admin section and can decide which users or roles have access.

Install

Step 1: Enable the MCP Server in eHour

An admin needs to switch this on before any client can connect.

  1. Go to Admin → MCP Server.
  2. Toggle Enable MCP Server on.
  3. Choose which users or roles get access.

Access follows your existing eHour roles and permissions. If you can't do something in eHour, the MCP Server won't let you do it either.

Step 2: Connect your client

Claude (web and desktop app)

  1. Open Settings → Connectors.
  2. Click Add custom connector.
  3. Name it eHour
  4. Paste https://ehourapp.com/mcp  into the URL field.
  5. Leave Advanced settings empty. The OAuth Client ID and Secret fields are not needed.
  6. Click Add, then Connect, and sign in to eHour when prompted.

To use it in a conversation, click + at the bottom of the chat, choose Connectors, and toggle eHour on.

On Team or Enterprise plans: an Owner has to add the connector for the organisation first, under Settings → Organization settings → Connectors. Individual members can then find eHour in their own connector list and click Connect. Members can't add it themselves.

Claude Code

From the command line, run:
claude mcp add --transport http ehour https://ehourapp.com/mcp

Codex CLI

Add to ~/.codex/config.toml :

[mcp_servers.ehour]
url = "https://ehourapp.com/mcp"

Then authorise:

codex mcp login ehour

Other MCP clients

Any client that supports remote MCP servers over streamable HTTP will work. Point it at https://ehourapp.com/mcp  and complete the OAuth prompt.


Troubleshooting

"Could not connect" or a similar error when adding the connector

Check the URL is exactly https://ehourapp.com/mcp . The most common mistake is pasting the address of the eHour admin page instead. Anything containing /eh/admin  is a web page, not the MCP endpoint, and won't connect.

The connector was added but no eHour tools appear

Confirm an admin has enabled the MCP Server (Step 1) and that your user or role is included in the access list. Then check the connector is toggled on for that specific conversation via the + menu.

Claude Desktop: using an older config file setup

Earlier versions of this guide asked you to edit claude_desktop_config.json  and run npx -y mcp-remote https://ehourapp.com/mcp . That still works, but it's no longer necessary, because the desktop app now connects to remote servers directly through Settings → Connectors. If you have the old entry, you can remove it and add eHour as a custom connector instead.


Some more examples

Tracking Time

  • “What did I track this week?”
  • “Log 3 hours on the API refactor yesterday.”
  • “Log 7.5 hours on Acme Website with the comment ‘release prep’.”
  • “Start a timer for Mobile App, task Frontend.”
  • “Stop the timer and record it.”
  • “Is a timer running right now?”

Projects, clients, tasks

  • “Create client Acme with projects Website Redesign and Mobile App.”
  • “Assign Alice, Bob, and Carol to Website Redesign at €95/hr.”
  • “Set a hard budget of 200 hours on the iOS App project.”
  • “Rename project ‘Mobile App’ to ‘iOS and Android App’.”
  • “Remove Bob from the Website Redesign project.”
  • “List every active project for client Acme.”

Users and teams

  • “Invite alice@example.com as a consultant on the Design team.”
  • “Onboard these three people as project managers: alice@…, bob@…, carol@….”
  • “Create team ‘Mobile’ and add Alice, Bob, Carol.”
  • “Move David from the Backend team to the Platform team.”
  • “Set Alice’s contract hours to 32 and her line manager to Bob.”
  • “Archive every contractor who hasn’t logged time this year.”

Reporting

You can run both saved and custom reports.

Try asking your AI:

  • “Show me hours per project for Q1 this year.”
  • “Run a weekly report of billable hours by user for client Acme.”
  • “List my saved reports.”
  • “Open the ‘Monthly utilisation’ report.”

Reports can be filtered by date, project, client, or user, and grouped by day, week, month, and more.

Still need help? Contact Us Contact Us