Every tool in the list is a get: goals, cycles, feedback and updates come back as they stand, and nothing here creates, edits or closes them. The pairing is consistent — a collection tool and a by-ID tool for each record type — so most work is one listing call followed by detail lookups. lattice_get_user_direct_reports and lattice_get_user_goals are the two that start from a person rather than an object ID, which is what makes a manager-shaped question answerable without first knowing an object ID.
A read client for Lattice HQ, 16 tools over users, goals, review cycles, feedback, departments and updates.
- People: lattice_get_users for the organization, lattice_get_user by ID, lattice_get_user_direct_reports for a reporting line, and lattice_get_me for the authenticated user.
- Goals at three levels: lattice_get_goals across the organization, lattice_get_goal by ID, and lattice_get_user_goals for one person.
- Review cycles: lattice_get_review_cycles, lattice_get_review_cycle by ID, and lattice_get_review_cycle_reviewees for everyone covered by a cycle.
- Feedback and updates as separate records: lattice_get_feedbacks and lattice_get_feedback, lattice_get_updates and lattice_get_update.
- Departments: lattice_get_departments and lattice_get_department by ID.
An API key for the Lattice HQ organization, and LATTICE_API_URL naming the Lattice API the server calls.
One command plus a key — LATTICE_API_URL=https://your-company.latticehq.com npx lattice-hq-mcp-server --api-key=YOUR-TOKEN --stdio, then supply credentials
