kwork-mcp
This MCP server provides 28 tools to interact with the Kwork freelance marketplace, enabling you to manage your freelance activity end-to-end.
Profile Management
View your profile details (rating, balance, order stats) and connects balance
Look up any user by ID or username, or search users by name
Projects
Browse and search projects with filters (category, budget range, hiring rate, max offers, text query)
Get detailed project info by ID and view exchange marketplace statistics
Offers
List your submitted offers, view offer details, submit new offers (costs 1 connect), and delete existing ones
Orders
List your seller orders, view detailed order info (description, stages, history), and submit completed work for buyer approval
Dialogs & Messages
List conversations with unread counts, read messages in a dialog, send/edit/delete messages, and mark dialogs as read
Kworks (Services)
List your kworks grouped by status, view kwork details (reviews, FAQ), and activate or pause kworks
Categories
Browse the full category tree and view your favorite categories
Notifications
Access your notifications for orders, messages, and system alerts
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 28 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
Related MCP server: upwork-mcp
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 |
| Search users by name or username |
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 |
| Edit a sent message by ID |
| Delete a sent message by ID |
| 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
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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