search_humans
Search for humans available for hire. Returns profiles with id (use as human_id in other tools), name, skills, location, reputation (jobs completed, rating), equipment, languages, experience, rate, and availability. All filters are optional — combine any or use none to browse. Key filters: skill (e.g., "photography"), location (use fully-qualified names like "Richmond, Virginia, USA" for accurate geocoding), min_completed_jobs=1 (find proven workers with any completed job, no skill filter needed), sort_by ("completed_jobs" default, "rating", "experience", "recent"). Default search radius is 30km. Response includes total count and resolvedLocation. Contact info requires get_human_profile (registered agent needed). Typical workflow: search_humans → get_human_profile → create_job_offer.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lat | No | Latitude for radius search (requires lng and radius) | |
| lng | No | Longitude for radius search (requires lat and radius) | |
| field | No | Filter by field of study (e.g., "Computer Science", "Marketing"). Partial match, case-insensitive. | |
| skill | No | Filter by skill tag (e.g., "photography", "driving", "cleaning", "notary") | |
| degree | No | Filter by education degree (e.g., "Bachelor", "MBA", "PhD"). Partial match, case-insensitive. | |
| radius | No | Search radius in kilometers (default: 30km). Works with both text location and explicit lat/lng coordinates. | |
| sort_by | No | Sort results by: "completed_jobs" (humans with platform experience first), "rating" (highest rated first), "experience" (most years of professional experience first), "recent" (most recently active first). Default sorts by completed jobs, then rating, then experience. | |
| language | No | Filter by language ISO code (e.g., "en", "es", "zh") | |
| location | No | Filter by location. Use fully-qualified names for best results (e.g., "San Francisco, California, USA" not just "San Francisco"). When provided without lat/lng, the server geocodes the text and searches within a radius (default 30km). Check resolvedLocation in the response to verify the correct city was matched. | |
| max_rate | No | Maximum hourly rate in USD. Humans who set rates in other currencies are auto-converted to USD for comparison. | |
| verified | No | Filter by verification status. Use "humanity" to only return humans who have verified their identity via Gitcoin Passport (score >= 20). | |
| equipment | No | Filter by equipment (e.g., "car", "drone", "camera") | |
| has_photo | No | Only return humans with an approved profile photo. | |
| work_mode | No | Filter by work mode preference (REMOTE, ONSITE, or HYBRID) | |
| certificate | No | Filter by certificate name or issuer (e.g., "AWS", "PMP", "Google"). Partial match, case-insensitive. | |
| institution | No | Filter by educational institution name (e.g., "MIT", "Oxford"). Partial match, case-insensitive. | |
| min_vouches | No | Only return humans vouched for by at least this many other users. | |
| min_channels | No | Only return humans with at least this many notification channels active (0-4). Channels: email, telegram, whatsapp, push. Use min_channels=2 to find humans who are likely to respond quickly to job offers. | |
| payment_type | No | Filter by accepted payment type (UPFRONT, ESCROW, or UPON_COMPLETION) | |
| fiat_platform | No | Filter by fiat payment platform the human accepts (e.g., "WISE", "PAYPAL", "VENMO", "REVOLUT", "CASHAPP", "ZELLE", "MONZO", "N26", "MERCADOPAGO") | |
| accepts_crypto | No | Filter to only show humans who have a crypto wallet set up and can accept USDC payments | |
| available_only | No | Only return humans who are currently available (default: true) | |
| min_experience | No | Minimum years of professional experience | |
| has_verified_login | No | Only return humans who have verified their identity via an OAuth provider (Google, LinkedIn, or GitHub). Does not reveal which provider. | |
| min_completed_jobs | No | Only return humans who have completed at least this many jobs on the platform. Use min_completed_jobs=1 to find all workers with any platform track record. Works with or without other filters — no skill filter needed. |