Eranfinish/Ezatwork
FreeNot checkedMCP server for EZ@Work — manage clients, projects, time entries, and invoices from Claude through natural conversation. OAuth 2.1 with Google sign-in, multi-cur
About
MCP server for EZ@Work — manage clients, projects, time entries, and invoices from Claude through natural conversation. OAuth 2.1 with Google sign-in, multi-currency support.
README
Connect EZ@Work — all-in-one business management for freelancers, lawyers, agencies, and service businesses — to Claude, Gemini, Cursor, and any MCP-compatible AI.
Tools (v1)
| Tool | Description | Type |
|---|---|---|
list_clients |
List your clients/customers | Read |
list_projects |
List your projects/cases/work orders | Read |
log_time_entry |
Log billable hours to a project | Write |
create_invoice |
Create a draft invoice (auto currency/language/VAT) | Write |
Setup
Claude Desktop / Claude.ai (OAuth — recommended)
Settings → Connectors → Add custom connector
- URL:
https://mcp.ezatwork.com/mcp - Authentication: OAuth (automatic)
Claude Code / Cursor / MCP Inspector (API token)
- Create a free EZ@Work account at https://app.ezatwork.com
- Generate an API token at https://app.ezatwork.com/settings/api-tokens
- Connect to
https://mcp.ezatwork.com/mcpwith headerAuthorization: Bearer ezw_pat_...
Local testing with MCP Inspector:
npx @modelcontextprotocol/inspector
Connect to http://localhost:8080/mcp with header Authorization: Bearer ezw_pat_...
Security
- Your data stays in your EZ@Work account
- OAuth mode: Google identity → EZ@Work account lookup; no credentials stored in the MCP
- API token mode: scoped permissions — grant only what you need; mandatory expiration
- Authorization is verified on every request
Privacy Policy
https://www.ezatwork.com/privacy
Universal Design
EZ@Work adapts to your business type: a lawyer sees "cases," a freelancer sees "projects," a service business sees "work orders." Currency, language (24 supported), and tax rules auto-detect from your profile — no configuration needed in the MCP.
Development
Run locally
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
cp .env.example .env
# Edit .env: EZ_API_BASE=http://localhost:5000 for local backend
python -m ezatwork_mcp.server
# Server starts at http://localhost:8080/mcp
Run tests
pip install pytest pytest-asyncio
pytest tests/
Docker
docker build -t ezatwork-mcp .
docker run -p 8080:8080 -e EZ_API_BASE=https://api.ezatwork.com ezatwork-mcp
Deploy to Cloud Run
gcloud run deploy ezatwork-mcp \
--source . \
--region europe-west1 \
--project ezatwork-production \
--allow-unauthenticated \
--port 8080 \
--update-env-vars "EZ_API_BASE=https://api.ezatwork.com,MCP_BASE_URL=https://mcp.ezatwork.com" \
--update-secrets "GOOGLE_CLIENT_ID=ezmcp-google-client-id:latest" \
--update-secrets "GOOGLE_CLIENT_SECRET=ezmcp-google-client-secret:latest" \
--update-secrets "EZ_MCP_MASTER_TOKEN=ezmcp-master-token:latest"
--allow-unauthenticatedis correct — auth is enforced at the MCP layer (OAuth or API token), not at the Cloud Run IAM level.
Technical notes
- Transport: Streamable HTTP (
/mcpendpoint) - Library:
fastmcp 3.3.1 - Auth (OAuth):
GoogleProviderfromfastmcp.server.auth.providers.google - Auth (token):
get_http_headers()fromfastmcp.server.dependencies - Dual-auth: OAuth active when
GOOGLE_CLIENT_ID+GOOGLE_CLIENT_SECRET+MCP_BASE_URLare set - Backend:
GET /api/users/mefor locale;GET /api/internal/users/by-emailfor OAuth→user mapping - Time entries:
POST /api/timeentrywithisBillablefield - Invoices:
POST /api/invoiceswith computeddueDateandtotalper item
Built by
EZ@Work — the business OS for independents.
Install Eranfinish/Ezatwork in Claude Desktop, Claude Code & Cursor
unyly install eranfinish-ezatwork-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add eranfinish-ezatwork-mcp -- uvx --from git+https://github.com/eranfinish/ezatwork-mcp ezatwork-mcpFAQ
Is Eranfinish/Ezatwork MCP free?
Yes, Eranfinish/Ezatwork MCP is free — one-click install via Unyly at no cost.
Does Eranfinish/Ezatwork need an API key?
No, Eranfinish/Ezatwork runs without API keys or environment variables.
Is Eranfinish/Ezatwork hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Eranfinish/Ezatwork in Claude Desktop, Claude Code or Cursor?
Open Eranfinish/Ezatwork on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Eranfinish/Ezatwork with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
