MCP.Market

EZ@Work MCP server

online · 100% uptime
by eranfinish·io.github.eranfinish/ezatwork·v0.1.0

Manage clients, projects, time, and invoices in EZ@Work — business management for freelancers.

A85/100grade A
What users say
No reviews yet
Be the first
Safety scan
A85/100

full report

Adoption
New

0 stars

Reviews

Write one

Nobody has reviewed EZ@Work yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

EZ@Work tools

Tool list not cached yet. `describe` through the gateway fetches it live.

Public scan report

scanner v0.1.9 · 2026-09-26 · same rubric, same numbers if you re-run it

no findings
  • –Code scanremote-only server, no package to scann/a
  • Live reliabilityremote reachable in 256ms (auth required)20/20
  • –Tool poisoningtools not inspected (endpoint requires auth); not countedn/a
  • Auth qualityOAuth resource metadata advertised on 40115/15
  • Maintenancelast push 99 days ago8/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 85/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How EZ@Work compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
85/100
higher than 70% of 48,255 servers
Uptime
100%
of our recent checks; the typical remote server answers 100%
Response time
429 ms
faster than 34% of 30,031 servers

Install EZ@Work in Claude Code, Cursor or VS Code

claude mcp add --transport http ezatwork https://mcp.ezatwork.com/mcp
Add to Cursor

What the publisher says

From the EZ@Work repository's README, as published. We do not edit it. Read it on GitHub

EZ@Work MCP Server

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)

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 ezwpat...

Local testing with MCP Inspector:

npx @modelcontextprotocol/inspector

Connect to http://localhost:8080/mcp with header Authorization: Bearer ezwpat...

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-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): gethttpheaders() from fastmcp.server.dependencies
  • Dual-auth: OAuth active when GOOGLECLIENTID + GOOGLECLIENTSECRET + MCPBASEURL 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 — the business OS for independents.

Nothing above is checked by us. What we check is on the safety report.

EZ@Work: common questions

Is EZ@Work MCP server safe?
Yes, by our scan: it is graded A (85/100). Read the EZ@Work safety report
How do I install EZ@Work?
It runs remotely at mcp.ezatwork.com. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
Does EZ@Work need an API key?
No key to paste: it signs you in with OAuth when your client connects.
Is EZ@Work maintained?
The last commit was 138 days ago (2026-06-19). The latest release is v0.1.0.
Is EZ@Work up?
100% of our last 28 checks got an answer. We check remote servers about four times a day.
How does EZ@Work compare with other MCP servers?
safety score 85/100 (higher than 70% of 48,255 servers); uptime 100% (of our recent checks; the typical remote server answers 100%); response time 429 ms (faster than 34% of 30,031 servers). Full comparison.