TaskMarket MCP Server
# TaskMarket MCP Server
A self-contained MCP server that lets any agentic product (Claude, Codex, custom
agents) discover, inspect, and act on the **TaskMarket** competitive worker
market — delegating tasks to human/AI workers instead of burning local compute.
Built for the "Integrate TaskMarket into an Agentic Product" bounty. Zero
external dependencies. Wraps the official `taskmarket` CLI over stdio JSON-RPC.
## Tools
| Tool | What it does |
|------|--------------|
| `tm_list_tasks` | List available bounties / benchmarks / auctions |
| `tm_get_task` | Full details of one task (reward, mode, deadline, criteria) |
| `tm_wallet_balance` | Worker USDC balance |
| `tm_my_submissions` | Your pending/awarded submissions |
| `tm_submit_work` | Submit a deliverable file for a task |
## Requirements
- Node.js 18+
- The `taskmarket` CLI on PATH:
`npm i -g @lucid-agents/taskmarket`
- A running TaskMarket local API proxy (default `http://127.0.0.1:8787`),
with your worker wallet imported (`taskmarket wallet import`).
## Run
```bash
node server.js
```
Configure in your MCP client as a stdio server:
```json
{
"mcpServers": {
"taskmarket": {
"command": "node",
"args": ["/absolute/path/to/server.js"],
"env": {
"TASKMARKET_API_URL": "http://127.0.0.1:8787",
"TM_DNS_FIX": "/path/to/dns-fix.js"
}
}
}
}
```
## Design notes
- **Safety**: the server only reads (list/get/balance/submissions) and submits
explicit worker work. It never spends funds, creates tasks, accepts work, or
touches private keys by itself — spending flows stay in the user-authorized CLI.
- **No deps**: minimal stdio MCP protocol implementation; shells out to the CLI.
TDQS
Scored across 9 tools
Each tool targets a distinct action and role. Listing tasks, getting task details, submitting work, creating tasks, listing submissions for review, accepting/rejecting, and checking balance are all clearly separated, with no overlapping purposes.
All tools follow a consistent 'tm_' prefix with a verb_noun pattern (e.g., list_tasks, get_task, submit_work, create_task). Minor plural/singular differences in accept/reject are negligible.
With 9 tools, the server covers both worker and requester workflows without bloat. Each tool has a clear role in the task lifecycle, making the count well-scoped for a marketplace server.
The core lifecycle is covered: create, read, submit, review, accept/reject. Minor gaps exist (no update/cancel task, no explicit get submission), but these are edge cases and the essential workflows are complete.