list_people
Retrieve a list of employees from Humaans. Filter by email, location, or status, and paginate results using limit and skip.
Instructions
List people (employees). Optional filters: email, locationId, status. Paginated via limit/skip (max 250). Note: Humaans has no manager-side filter on this endpoint — use get_direct_reports for that.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| No | |||
| location_id | No | ||
| status | No | ||
| limit | No | ||
| skip | No |
Implementation Reference
- humaans_mcp/server.py:42-56 (handler)The list_people handler function itself, decorated with @mcp.tool(). Queries the Humaans /people endpoint with optional filters (email, locationId, status) and pagination (limit/skip, max 250). Calls client().list_page('/people', ...).
@mcp.tool() async def list_people( email: str | None = None, location_id: str | None = None, status: str | None = None, limit: int = 100, skip: int = 0, ) -> Any: """List people (employees). Optional filters: email, locationId, status. Paginated via limit/skip (max 250). Note: Humaans has no manager-side filter on this endpoint — use get_direct_reports for that.""" filters = { "email": email, "locationId": location_id, "status": status, } return await client().list_page("/people", filters=filters, limit=limit, skip=skip) - humaans_mcp/server.py:7-7 (registration)FastMCP instance ('mcp') that registers the tool via the @mcp.tool() decorator on line 42.
mcp = FastMCP("humaans") - humaans_mcp/client.py:45-55 (helper)The HumaansClient.list_page helper method called by list_people to perform the actual HTTP GET request with limit/skip pagination to the Humaans API.
async def list_page( self, path: str, filters: dict[str, Any] | None = None, limit: int = 100, skip: int = 0, ) -> Any: params = dict(filters or {}) params["$limit"] = limit params["$skip"] = skip return await self.get(path, params)