kwork-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@kwork-mcpfind Python programming projects"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP server that exposes 25 tools for the Kwork freelance marketplace — browse projects, submit offers, manage orders, send messages, and more.
Built with FastMCP 3.x and pykwork.
Highlights
Tool annotations — read-only, write, and destructive hints for safer agent interactions
Input validation — all parameters validated before API calls
Auto-relogin — automatic session refresh on 401 errors
Error sanitization — internal details stay in logs, not in agent responses
Rate limiting — built-in sliding window rate limiter
Setup
Requirements
Kwork account (login/password or API token)
Install
When using uv no specific installation is needed. We will use uvx to directly run kwork-mcp.
Alternatively, install via pip:
pip install kwork-mcpOr from source:
git clone https://github.com/simonether/kwork-mcp.git
cd kwork-mcp
uv syncConfigure
Variable | Required | Default | Description |
| yes* | — | Kwork login |
| yes* | — | Kwork password |
| yes* | — | Auth token (skips login) |
| no | — | Last 4 digits of phone (2FA) |
| no | — | Proxy (HTTP / SOCKS4 / SOCKS5) |
| no |
| Request timeout in seconds |
| no |
| Requests per second |
| no |
| Burst limit |
| no |
| Token persistence path |
*Either KWORK_TOKEN or both KWORK_LOGIN + KWORK_PASSWORD.
Auth priority: KWORK_TOKEN env → saved token file → fresh login.
Proxy URL formats:
KWORK_PROXY_URL=http://proxy.example.com:8080
KWORK_PROXY_URL=socks5://proxy.example.com:1080
KWORK_PROXY_URL=socks5://user:password@proxy.example.com:1080Usage
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"kwork": {
"command": "uvx",
"args": ["kwork-mcp"],
"env": {
"KWORK_LOGIN": "your_login",
"KWORK_PASSWORD": "your_password"
}
}
}
}Claude Code
claude mcp add kwork -e KWORK_LOGIN=your_login -e KWORK_PASSWORD=your_password -- uvx kwork-mcpVS Code
Add to .vscode/mcp.json:
{
"mcp": {
"servers": {
"kwork": {
"command": "uvx",
"args": ["kwork-mcp"],
"env": {
"KWORK_LOGIN": "your_login",
"KWORK_PASSWORD": "your_password"
}
}
}
}
}stdio
uvx kwork-mcpTools
Tool | Description |
| Current user profile, rating, balance |
| Connect count for exchange offers |
| Public user info by ID |
Tool | Description |
| Browse exchange projects with filters |
| Project details by ID |
| Search by text query |
| Exchange marketplace stats |
Tool | Description |
| Your exchange offers |
| Offer details by ID |
| Submit offer to a project (costs 1 connect) |
| Delete an offer |
Tool | Description |
| Seller orders (all statuses) |
| Order details by ID |
| Submit work for buyer review |
Tool | Description |
| Conversations with latest messages |
| Messages by username |
| Send direct message |
| Mark as read |
Tool | Description |
| Your services grouped by status |
| Kwork details by ID |
| Activate a paused kwork |
| Pause an active kwork |
Tool | Description |
| Full category tree |
| User's favorite categories |
Tool | Description |
| User notifications |
Development
uv sync --dev
uv run python -m pytest tests/ -x -v --cov=kwork_mcp --cov-report=term-missing
uv run ruff check .
uv run ruff format --check .License
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/simonether/kwork-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server