MCP (Model Context Protocol) server for Upwork via browser automation. Enables Claude Code to search jobs, manage proposals, messages, and contracts on Upwork.
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"upwork": {
"args": [
"--directory",
"/path/to/upwork-mcp",
"run",
"upwork-mcp"
],
"command": "uv"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP (Model Context Protocol) server for Upwork via browser automation. Enables Claude Code to search jobs, manage proposals, messages, and contracts on Upwork.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
uvx 'upwork-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked upwork-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in ai-ml / browser
Dynamic problem-solving through sequential thought chains
Workspace template + MCP server for Claude Code, Codex CLI, Cursor & Windsurf. Multi-agent knowledge engine (ag-refresh / ag-ask) that turns any codebase into a queryable AI assistant.
Browser automation with Puppeteer for web scraping and testing
Persistent memory using a knowledge graph
MCP Security Weekly
Get CVE alerts and security updates for Upwork Mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
MCP (Model Context Protocol) server for Upwork via browser automation. Enables Claude Code to search jobs, manage proposals, messages, and contracts on Upwork.
This MCP uses Chrome DevTools Protocol (CDP) to connect to your real Chrome browser. This approach:
cd upwork-mcp
uv sync
The server connects to Chrome via CDP (Chrome DevTools Protocol).
# Start login flow - opens Chrome with debug port
uv run upwork-mcp --login
This will:
--remote-debugging-port=9222~/.upwork-mcp/chrome-profile/uv run upwork-mcp --check
uv run upwork-mcp --logout
Add to your MCP settings (~/.config/claude-code/settings.json or workspace settings):
{
"mcpServers": {
"upwork": {
"command": "uv",
"args": ["--directory", "/path/to/upwork-mcp", "run", "upwork-mcp"]
}
}
}
| Tool | Description |
|---|---|
upwork_search_jobs | Search for jobs matching criteria |
upwork_get_job_details | Get detailed job information |
upwork_get_my_profile | Get your freelancer profile |
upwork_get_connects_balance | Get current connects balance |
upwork_get_profile_stats | Get earnings and work history stats |
upwork_get_proposals | Get your submitted proposals |
upwork_get_proposal_details | Get details of a specific proposal |
upwork_submit_proposal | Submit a proposal to a job |
upwork_withdraw_proposal | Withdraw a submitted proposal |
upwork_get_messages | Get inbox conversations |
upwork_get_conversation | Get messages in a conversation |
upwork_send_message | Send a message |
upwork_get_unread_count | Get unread message count |
upwork_get_contracts | Get your contracts |
upwork_get_contract_details | Get contract details |
upwork_get_work_diary | Get work diary entries |
upwork_check_session | Check if session is valid |
upwork_close_session | Close browser and cleanup |
Search for Python developer jobs on Upwork with budget over $1000
Get details for this Upwork job: https://www.upwork.com/jobs/~01234567890
Show my active proposals on Upwork
Check my Upwork messages
upwork-mcp [OPTIONS]
Options:
--login Open browser for manual login
--check Check if session is valid
--logout Clear saved session
--no-headless Show browser window (debugging)
--timeout MS Page timeout in milliseconds (default: 30000)
--transport MCP transport type (default: stdio)
upwork-mcp/
├── pyproject.toml
├── README.md
├── src/upwork_mcp/
│ ├── __init__.py
│ ├── server.py # MCP server entry point
│ ├── browser/
│ │ ├── client.py # Patchright
... [View full README on GitHub](https://github.com/vanooo/upwork-mcp#readme)