MCP server for EZ@Work — manage clients, projects, time tracking, and invoices from Claude through natural conversation. OAuth 2.1 + scoped tokens.
claude mcp add ezatwork-mcp -- python -m -e{
"mcpServers": {
"ezatwork-mcp": {
"command": "python",
"args": ["-m", "venv"],
"env": {
"MCP_BASE_URL": "<mcp_base_url>",
"GOOGLE_CLIENT_SECRET": "<google_client_secret>",
"EZ_MCP_MASTER_TOKEN": "<ez_mcp_master_token>"
}
}
}
}MCP_BASE_URLGOOGLE_CLIENT_SECRETEZ_MCP_MASTER_TOKENMCP Servers overview
# EZ@Work MCP Server Connect [EZ@Work](https://www.ezatwork.com) — 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) 1. Create a free EZ@Work account at https://app.ezatwork.com 2. Generate an API token at https://app.ezatwork.com/settings/api-tokens 3. Connect to `https://mcp.ezatwork.com/mcp` with header `Authorization: Bearer ezw_pat_...` **Local testing with MCP Inspector:** ```bash 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 ```bash 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 ```bash pip install pytest pytest-asyncio pytest tests/ ``` ### Docker ```bash docker build -t ezatwork-mcp . docker run -p 8080:8080 -e EZ_API_BASE=https://api.ezatwork.com ezatwork-mcp ``` ### Deploy to Cloud Run ```bash 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-unauthenticated` is correct — auth is enforced at the MCP layer (OAuth or API token), > not at the Cloud Run IAM level. ### Technical notes - **Transport:** Streamable HTTP (`/mcp` endpoint) - **Library:** `fastmcp 3.3.1` - **Auth (OAuth):** `GoogleProvider` from `fastmcp.server.auth.providers.google` - **Auth (token):** `get_http_headers()` from `fastmcp.server.dependencies` - **Dual-auth:** OAuth active when `GOOGLE_CLIENT_ID` + `GOOGLE_CLIENT_SECRET` + `MCP_BASE_URL` are set - **Backend:** `GET /api/users/me` for locale; `GET /api/internal/users/by-email` for OAuth→user mapping - **Time entries:** `POST /api/timeentry` with `isBillable` field - **Invoices:** `POST /api/invoices` with computed `dueDate` and `total` per item --- ## Built by [EZ@Work](https://www.ezatwork.com) — the business OS for independents.
What people ask about ezatwork-mcp
What is eranfinish/ezatwork-mcp?
+
eranfinish/ezatwork-mcp is mcp servers for the Claude AI ecosystem. MCP server for EZ@Work — manage clients, projects, time tracking, and invoices from Claude through natural conversation. OAuth 2.1 + scoped tokens. It has 0 GitHub stars and was last updated 3d ago.
How do I install ezatwork-mcp?
+
You can install ezatwork-mcp by cloning the repository (https://github.com/eranfinish/ezatwork-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is eranfinish/ezatwork-mcp safe to use?
+
eranfinish/ezatwork-mcp has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.
Who maintains eranfinish/ezatwork-mcp?
+
eranfinish/ezatwork-mcp is maintained by eranfinish. The last recorded GitHub activity is from 3d ago, with 0 open issues.
Are there alternatives to ezatwork-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy ezatwork-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/eranfinish-ezatwork-mcp)<a href="https://claudewave.com/repo/eranfinish-ezatwork-mcp"><img src="https://claudewave.com/api/badge/eranfinish-ezatwork-mcp" alt="Featured on ClaudeWave: eranfinish/ezatwork-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。