Skip to main content

Lattice MCP Tools

MCP Tools are the specific capabilities that the MCP exposes to an AI assistant.

Written by Adam

A tool can allow users to read data from Lattice, or write data back to Lattice. Which tools a user has access to and the data exposed to the user is limited by the same roles and permissions the user has in the Lattice platform.

Note: This list changes over time. Tools may be added, updated, or deprecated as the tool set evolves. The authoritative source for the current tool set and parameter schemas is the tools/list MCP command in your client.

Using MCP Tools

You do not need to know or name these tools in order to use them, just write prompts describing the tasks you want to complete in natural language and your AI assistant will orchestrate a workflow across the correct set of tools to complete the task.

Each tool is one of two types:

  • Read tools return data from Lattice without making any changes.

  • Write tools create or modify data in Lattice.

Manager and IC Tools

These tools expose capabilities in the Manager and Individual Contributor section of the Lattice platform. Even if used by an administrator, these tools will only provide data and support actions that the administrator may take as an IC or Manager, not the admin capabilities.

Example: when a super admin who can view all employees' reviews in the Admin UI uses the find-reviews tool, it will only return their own reviews and reviews of their reports with the level of visibility they have in the main Performance section.

Org-chart / Identity

Tool

Type

Description

Example prompts

whoami

Read

Returns the identity of the current user — their employee profile (entity ID, name, title, email, department) and their manager's profile. Use this when you need to know who is making the request or to get the user's own entity ID for use with other tools. Does not return the user's direct reports, reviews, goals, or other work artifacts.

"Who am I in Lattice?" "What's my role and who's my manager?"

find-employees

Read

Searches for employees in the user's company by name, work email, and/or department. Use this when you need to look up a person's identity or resolve a name to an entity ID before calling another tool. Returns employee profiles including their entity ID (UUID), which is the identifier required by other tools that accept employee ID parameters. Omit all filters to list all employees. Does not return org-chart relationships (reports, manager chain) or work artifacts (reviews, feedback, goals). Results reflect what the user is permitted to see.

"Find Dinesh's employee ID." "Who's on the engineering team?"

find-reports

Read

Use this to get the team beneath an employee — direct reports, or the full subtree down to a given depth — when you need to understand who someone manages, fan out work, or analyze a team. Returns each report's employee profile (entity ID, name, title, email) with their manager's id. Only returns downward reports; does not include the employee themselves, their manager, or peers. Results reflect what the user is permitted to see.

"Who reports to me?" "Show me my whole team."

find-ancestors

Read

Use this to get the full chain of managers above an employee — from their direct manager up to the org root — when you need to understand reporting structure or escalation paths. Returns each ancestor's employee profile (entity ID, name, title, email) ordered from direct manager to org root. Only returns upward ancestors; does not include the employee themselves, their direct reports, or peers. Results reflect what the user is permitted to see.

"Who's in my management chain?" "Who does Employee A ultimately roll up to?"

list-departments

Read

Lists active departments in the user's company. Use this when the user asks about organizational structure or when you need a department entity ID to filter employees by department. Each department includes its entity ID (UUID) and name. Does not return the employees within each department or the department hierarchy. Results reflect what the user is permitted to see.

"What departments does my company have?"

Performance Reviews

Tool

Type

Description

Example prompts

get-draft-reviews

Read

Retrieves the open performance review drafts the user is currently authoring. Each draft includes the review cycle metadata, the questions on the form, any answers already saved, and identifying information about the reviewee (UUID, name, email). Each answer has a unique id that identifies the specific answer slot — multiple answer slots can share the same questionRevisionEntityId when a form rates several competencies or goals with the same question, but each slot always has its own id. This tool should be used when the user wants to see, fill out, or edit reviews they've been assigned — including self-reviews and reviews about other people. Does not return submitted or shared reviews, reviews authored by other people, or review cycle metadata without draft content. By default returns all open drafts authored by the user across all review cycles. Results are paginated; use nextCursor to fetch the next page. Results reflect what the user is permitted to see.

"What reviews do I owe?" "Show me my pending review drafts."

find-reviews

Read

Retrieves reviews the user is permitted to see, filterable by who the review is about, who wrote it, the cycle, direction, submission/sharing status, and date range. It should be used when the user wants to read or browse reviews - their own self-reviews, reviews they wrote about someone, reviews about an employee, or all reviews in a cycle - including a manager asking about reviews for their direct or indirect reports. Each result includes review metadata (id, cycle, reviewee identity, author identity, direction, state), the questions on the form, and the saved answers (text and ratings). By default only reviews already shared with the reviewee are returned. When the request may involve reviews that are still in progress, such as a manager checking their team or their reports, pass status = all_submitted to also include submitted reviews that have not yet been shared. A review that has not yet been submitted does not appear under shared or all_submitted, and open returns only drafts authored by the user, so when a review is missing treat it as not having reached the requested stage rather than as the user lacking permission to see it. Does not return review cycle metadata without review content. Pagination is cursor-based: pass the nextCursor from the previous response back as cursor to fetch the next page, and stop once nextCursor is no longer returned. A total match count is not provided. Results reflect what the user is permitted to see.

"What did peers say about Employee A last cycle?" "Show me my past self-reviews."

get-review-cycles

Read

Returns the review cycles the user is currently participating in, with their role (reviewee, reviewer, or both) and how many review drafts they owe per cycle. It should be used when the user wants to know which cycles affect them right now - 'what cycles am I in?', 'am I a reviewer or a reviewee in Q1?', 'which cycles am I behind in?'. Returns cycle-level aggregates only (counts), not the draft content itself. Each result includes the cycle id, name, type, state, start/end timestamps, the user's role in that cycle, and counts of open drafts authored by the user and shared reviews about the user. A cycle is considered 'reviewee participation' only once at least one review about the user has been shared - cycles where the user is enrolled as a reviewee but has not yet received a shared review do not appear under that role. Does not return cycles the user is not participating in, the questions on the form, or other reviewees in the cycle. To guard against runaway queries the underlying fetches are capped, so a user with extensive review history may see an incomplete cycle list; the response includes a truncated flag when this happens. When truncated is true, narrow the window with dateFrom / dateTo to fetch the missing cycles. Results reflect what the user is permitted to see.

"What review cycles am I in right now?" "What cycles am I only a reviewer in?"

validate-draft-review

Read

Validates an open performance review draft by returning the questions that still need required answers, and whether submission is currently locked for reasons other than missing answers. Each unanswered question includes the question text, description, and which parts of the form are required (comment and/or rating). It should be used when the user wants to know what is left to complete on a specific review they are writing, including whether the form can actually be submitted yet. Submission can be locked when this is a manager review in a cycle where managers submit last and other reviews of the reviewee are still open, or when the cycle has not launched yet during peer selection; the form can still be drafted in those cases. Only applies to open drafts the user is currently authoring; submitted, shared, or closed reviews are not included. Does not return questions that are optional or already have all required fields filled in. Results reflect what the user is permitted to see.

"Is anything missing from my draft review of Employee A?" "Am I ready to submit?"

save-draft-review

Write

Saves answers to an open performance review draft. It should be used when the user wants to record or update their answers on a review they're authoring. Works whether the review currently has no saved answers or partial ones; the answers passed in this call replace any previously saved answers for the same questions. This call does NOT submit the review — it remains an editable draft after saving. Does not create new reviews or change the review's assignment; only saves answer content on an existing draft. Returns the saved state of the review, including the resulting status and the persisted answers.

"Save 'TBD' as my answer to the impact question." "Update Employee A's review with my draft answers."

save-manager-summary

Write

Saves the current user's overall manager summary for an employee in a review cycle. It should be used when a manager (or the employee's designated summary writer) wants to record or update the free-text summary they leave on that employee's review. This is a single free-text summary, distinct from question-by-question review answers. Saving replaces any summary the user previously saved for that employee in that cycle. This call does NOT submit, finalize, or share the summary with the employee; it only stores the text. Writing is only permitted when the cycle is set up for manager summaries and the user is the employee's manager or designated summary writer. Returns the saved summary id, the stored text, and when it was last updated.

"Save this as my manager summary for Employee A." / "Update my summary on Employee A's review."

submit-review

Write

Submits a performance review draft, transitioning it from drafted to submitted. It should be used when the user has finished writing a review and is ready to finalize it. The review must already be in drafted state with all required questions answered; submitting an incomplete or unstarted review will fail. Once submitted, the review is no longer editable as a draft. Does not save answers — answers must be saved before submitting. Returns the resulting review state and submission timestamp.

"Submit Employee A's review." "Finalize this draft."

Updates

Tool

Type

Description

Example prompts

get-current-update-draft

Read

Returns the user's current-period update draft, with the questions on the form, any answers already saved, the period bounds, and the cadence. Use this when the user wants to see, fill out, or edit their update for the current period - 'what's my weekly update look like?', 'show me what I need to fill in for my update', 'start my update for this week.' Returns the draft id (use it to save answers), the questions on the form, the period dates (start/end), the cycle cadence in weeks, the public flag, the saved sentiment, and the saved answers so far. If

draft

is null, no current-period draft exists yet — questions are still returned so the user can preview the template, but answers cannot be saved until a draft is available. Does not return other employees' updates or historical drafts.

"What's my weekly update look like for this period?"
"Start my update for this week."

list-updates-for-employee

Read

Use this to surface the updates authored by a specific employee, for review-writing context or recalling what the employee has been reporting about their own work. Each update is returned with its inline question/answer text, sentiment (if reported), and metadata. Author identity is returned with name + email already resolved. Filter by dateFrom/dateTo to scope to a review period or other window. Does not return draft updates that haven't been submitted, or updates from other employees. Results reflect what the user is permitted to see.

"Show me Employee A's recent updates."
"Pull the last 8 weeks of updates from my team."

save-draft-update

Write

Saves or updates answers, sentiment, and public flag on the user's current-period update draft. Use this when the user wants to fill in their weekly update - 'save my answers as a draft', 'set my sentiment to 4', 'mark my update as public.' Supports partial saves: answers not included in this call are left untouched; pass

body: null

on an answer to clear it. Does not submit or publish the draft. Returns the updated draft with the saved answers, sentiment, period info, and last-modified timestamp.

"Set my sentiment to 4 and save 'Team is in a good groove this week.'"

submit-update

Write

Submits (publishes) the user's drafted update, finalizing it and sending it to their manager. Use this when the user has finished their update and wants to submit it - 'submit my update', 'publish my update', 'I'm done with my update.' Submitting is final: an update can only be submitted once and cannot be returned to a draft, and on submission the manager is notified and any answers marked public become visible to others in the company. This does not create or edit answers, sentiment, or the public flag; those are saved onto the draft beforehand. Returns the submitted update with its answers, sentiment, period info, and the submission timestamp. Results reflect what the user is permitted to do.

"Submit my current Lattice Update."
"Publish the Update draft I just reviewed."

Feedback

Tool

Type

Description

Example prompts

find-feedback

Read

Retrieves feedback items the user has visibility into. It should be used when the user wants to see what others have said about a specific employee, or what feedback a specific employee has written about others. Each item includes the feedback text, visibility level, creation date, author and target identities (UUID, name, email), and any company values tagged on the feedback. Pass aboutEmployeeId for feedback about a person, or byEmployeeId for feedback authored by them; if both are passed, aboutEmployeeId takes precedence. If neither is set, returns recent feedback for the viewer-expanded accessible target set (self, reports, and relationship-accessible targets) and does not enumerate every company-public/open feedback item. Pass aboutEmployeeId to retrieve feedback about a specific employee, including public/open feedback the viewer can see. Does not return performance reviews, update answers, or 1:1 notes. Results reflect what the user is permitted to see.

"What feedback has Employee A received this year?"
"What feedback have I given recently?"

give-feedback

Write

Writes feedback about one or more employees on the user's behalf. Use this when the user wants to give, leave, or write feedback about someone - 'give Priya feedback on the launch', 'leave feedback for my two teammates.' Passing multiple target ids creates a single feedback shared to all of them. The visibility parameter controls who can see it: 'open' is visible to everyone in the company, 'private' to the author and the target, 'only_manager' to the author and the target's manager, and 'private_manager' to the author, the target, and the target's manager. Returns the created feedback (id, body, visibility, creation time, the author, and the targets). Does not request feedback from others, edit or delete existing feedback, or tag company values. Results reflect what the user is permitted to do.

"Submit feedback for Employee A on their work on the onboarding project. Highlight their clear communication and suggest they involve stakeholders earlier."
"Give private feedback to Employee A's manager about their leadership during the incident."

request-feedback

Write

Asks one or more employees to give feedback, on the user's behalf. Use this when the user wants to request, ask for, or solicit feedback - 'ask Priya and Sam for feedback on me', 'request feedback about my report Alex from his teammates.' Each target id creates a separate feedback request for that person. By default the feedback is requested about the user; pass subjectEmployeeId to request feedback about a different employee instead, for example a manager gathering feedback about their report. The visibility parameter sets the visibility of the feedback that gets written in response: 'private' (the person giving the feedback and the employee it is about), 'only_manager' (the person giving the feedback and that employee's manager), 'private_manager' (the person giving the feedback, the employee it is about, and that employee's manager). Returns the subject the feedback is about and the created requests, each with its target and request id. Does not write feedback directly, and cannot send requests to people outside the company. Results reflect what the user is permitted to do.

"Request feedback from Employee A and Employee B on how I handled the Q3 planning presentation, including what worked well and what I could improve."
"Ask Employee A for feedback about Employee B's collaboration on the launch project."

Goals & OKRs

Tool

Type

Description

Example prompts

list-goals-for-employee

Read

Surface goals owned by a specific employee. Use this for review-writing context, 1:1 prep, or recalling what someone has committed to over a recent period. Returns goal metadata and timeline dates plus inline owner identity (name + email already resolved). Does not return goal updates/check-ins, comments, or goals owned by other employees. Results reflect what the user is permitted to see.

"What are Employee A's active goals?" "Pull the goals my team is working toward this cycle."

create-goal

Write

Creates a new goal for the user or on behalf of another employee (if the user has management permission). Use this when the user wants to create a goal - 'create a goal to improve my leadership', 'create an OKR for my team.' Supports both draft (unpublished) and published goals. Returns the created goal with all metadata including the lifecycle state, owners, and timeline dates.

"Create a goal to improve my presentation skills by the end of Q4." / "Create a draft OKR for my team."

update-goal

Write

Updates an existing goal with new information. Use this to modify goal details after creation - 'update my goal deadline', 'change the priority', 'update the target amount'. Can also publish a draft goal by setting isDraft to false, which makes it visible to others. Supports partial updates — include only the fields you want to change. Returns the updated goal with all current metadata.

"Push my Q4 goal's due date to December 15." / "Publish my draft goal."

Grow / Career Development

Tool

Type

Description

Example prompts

list-grow-competencies-for-employee

Read

Retrieves the Grow Track(s) an employee is on with the competencies for their level. Grow Tracks are structured career paths (e.g. Software Engineer) with ordered job levels (e.g. L1, L2) and competencies (e.g. Technical Skills, Communication); each competency has an expectation describing what good performance looks like at a level. Use this for review prep, coaching, or career-progression conversations. Returns the employee's identity plus a paginated array of tracks (an employee may be on more than one). For each track, when the employee's level is known you get currentJobLevel, and with includeNextLevel also nextJobLevel, each carrying that level's competencies and expectations nested inline so no id lookup is needed. When the level can't be determined or the user isn't permitted to see it, currentJobLevel is null and allJobLevels lists every level with its competencies instead, so the framework is still available. When preparing a review for someone the user neither manages nor reports on, pass reviewCycleId for a cycle in which the user is that employee's reviewer to see the track as the review experience shows it, without the specific level; when omitted, results cover the user, their reports, and (for admins) anyone. Use cursor and pageSize to page through tracks. Does not return career-vision responses, growth areas, or review/feedback content. Returns an empty tracks array when the employee has no Grow Track or the user has no permission to see it. Results reflect what the user is permitted to see.

"What growth competencies are tracked for Employee A?" "Show me their career path and growth areas."

1:1s / Meetings

Tool

Type

Description

Example prompts

find-one-on-ones

Read

Use this to surface past, upcoming, or cancelled 1:1 meetings between the user and a specific employee as context for review-drafting, prep for an upcoming 1:1, or recalling what was discussed and committed to. Returns each meeting with its talking points, action items, shared notes, AI summary, and the user's own private note. Participant/creator/assignee identities are returned with name + email already resolved. Filter by dateFrom / dateTo to scope to a review period or other window. Only returns 1:1s the user themselves participated in; does not return meetings between other employees, or meetings the user was not part of. Results reflect what the user is permitted to see.

"What 1:1s have I had with Employee A recently?" "Pull our 1:1 history from January through March."

Administrator Tools

At this time, the Lattice MCP only provides tools for accomplishing Manager and employee tasks, not administrator tasks. When administrators use Manager and IC tools, their data access and permitted actions will be limited to what is visible in the non-Admin sections of the Lattice platform.

Did this answer your question?