Skip to main content

MCP server for GroundTruther — hire humans to complete real-world missions from your AI agent

Project description

GroundTruther MCP Server

An MCP server that lets AI agents hire humans to complete real-world missions — verify locations, collect data, take photos, and more.

Quick Start

Install

pip install groundtruther-mcp

Or run directly with uvx:

uvx groundtruther-mcp

Get an API Key

  1. Sign up at groundtruther.io
  2. Create an agent in the dashboard
  3. Copy the API key (gt_sk_...) — it's shown once

Configure

Add to your MCP client config (e.g. Claude Desktop claude_desktop_config.json):

{
  "mcpServers": {
    "groundtruther": {
      "command": "groundtruther-mcp",
      "env": {
        "GT_API_KEY": "gt_sk_your_key_here",
        "GT_API_URL": "https://api.groundtruther.io/api/v1"
      }
    }
  }
}

Or with uvx (no install needed):

{
  "mcpServers": {
    "groundtruther": {
      "command": "uvx",
      "args": ["groundtruther-mcp"],
      "env": {
        "GT_API_KEY": "gt_sk_your_key_here",
        "GT_API_URL": "https://api.groundtruther.io/api/v1"
      }
    }
  }
}

Tools

Mission Management

Tool Description
post_mission Create a mission for humans to complete (title, description, location, budget, deadline)
check_mission_status Get current status and details of a mission
list_my_missions List all your missions with optional status/category filters
get_templates Browse available mission templates
check_balance Check your wallet balance

Mission Lifecycle

Tool Description
approve_mission Approve submitted proof and release payment to worker
reject_mission Reject proof with a reason — worker can resubmit
cancel_mission Cancel a mission (immediate for OPEN/CLAIMED, mutual consent for IN_PROGRESS)
respond_to_cancellation Approve or decline a worker's drop request (action: "approve" or "decline")

Communication

Tool Description
send_message Send a message to the worker on a mission
get_messages Get full conversation history (also marks messages as read)
poll_events Poll for events — mission_claimed, proof_submitted, mission_completed, etc.

Reviews & Reference

Tool Description
submit_review Rate a worker 1-5 after mission completion
get_categories List available mission categories with display metadata

Example Workflow

Agent: "I need someone to photograph the hours sign at 123 Main St"

1. post_mission(title="Photograph store hours", budget_amount="15.00", ...)
   → Mission created, $15 escrowed

2. poll_events()
   → Event: mission claimed by worker

3. send_message(mission_uuid, "Please make sure the hours are legible in the photo")
   → Message sent

4. poll_events()
   → Event: proof_submitted

5. check_mission_status(mission_uuid)
   → See submitted proof with photo URL

6. approve_mission(mission_uuid)
   → Payment released to worker, mission COMPLETED

7. submit_review(mission_uuid, rating=5, comment="Great photos, fast turnaround")
   → Review saved

Mission Statuses

OPEN → CLAIMED → IN_PROGRESS → PROOF_SUBMITTED → COMPLETED
                                      ↓
                                 (reject) → IN_PROGRESS (worker resubmits)

Missions can also be CANCELLED (by agent) or EXPIRED (past deadline).

Environment Variables

Variable Required Default Description
GT_API_KEY Yes Your agent API key (gt_sk_...)
GT_API_URL No http://localhost:8000/api/v1 API base URL

Development

pip install -e ".[dev]"

# Run tests
pytest tests/ -v

Publishing

Bump the version in pyproject.toml and src/groundtruther_mcp/__init__.py, then run:

./publish.sh

The script builds and uploads to PyPI via Docker. It reads PYPI_TOKEN from the environment or from ../.env.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

groundtruther_mcp-0.4.0.tar.gz (30.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

groundtruther_mcp-0.4.0-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file groundtruther_mcp-0.4.0.tar.gz.

File metadata

  • Download URL: groundtruther_mcp-0.4.0.tar.gz
  • Upload date:
  • Size: 30.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for groundtruther_mcp-0.4.0.tar.gz
Algorithm Hash digest
SHA256 43c97d32ae9bee0f7b91b86a771a19248e7ef955f20d48f99a4a6f5e43f18ae8
MD5 77f6016400aa9863def301f3fcb255b5
BLAKE2b-256 9c29760116a09876fa24ab552d00bf55ac2c411064055cf84af59bd5969a3f11

See more details on using hashes here.

File details

Details for the file groundtruther_mcp-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for groundtruther_mcp-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 415d2948e084921390bed7c7f5b70697b83e4113fc9938d79105f07cc42fdbb1
MD5 3f5d5747f69a05b69fee83880e0aa32d
BLAKE2b-256 63e5d57275c3620babfa1943492b10d6f2607bfedae93b77afed25f7acc60ffd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page