Connect an AI agent
engman's MCP server lets an AI assistant you trust read who is in your organization and propose changes that you confirm in engman.
What engman is for
engman keeps the 1:1s, feedback and career plans of the people a tech leader manages: CTOs, heads of department and engineering managers.
A connected agent works for you, with your permissions. It sees only the people you see in engman: you and everyone below you, or everyone if you own the workspace.
An agent reads identifiers only: names, work emails, teams, managers, dates and statuses. It never reads what was said in a 1:1, notes, feedback or any other content.
An agent never changes anything directly. Everything it writes is a proposal that waits for you to confirm it in the web app.
How to connect
Server URL:
https://app.engmanapp.com/mcp
- Add that URL to your MCP client, for example as a custom connector. The client sends you to engman to sign in.
- Sign in to engman with your password or Google account, and your second factor (authenticator app or passkey). Every engman user has one.
- engman shows a consent page with the agent's name and the hosts it comes from. Only allow agents you trust, from hosts you recognise. If you last confirmed your second factor more than 15 minutes ago, engman asks for it again.
- Choose Allow. Your client is connected, and the agent can call the tools below.
The workspace owner decides whether agents work at all, under Agent access on the Connected agents page:
- Actions (the default): agents read names, teams, dates and statuses, and propose changes you confirm.
- Off: no agent can connect, and every call from a connected agent is refused. Connections are kept for when the owner switches back.
For client developers
- Transport: Streamable HTTP, stateless,
POSTonly. Protocol revisions 2026-07-28 and 2025-11-25. - Authorization: OAuth.
A request without a valid token gets
401with aWWW-Authenticateheader pointing at the protected resource metadata,https://app.engmanapp.com/.well-known/oauth-protected-resource/mcp. - Clients identify themselves with a Client ID Metadata Document; dynamic client registration is off.
- Scopes:
read,proposeandoffline_access. Access tokens last 10 minutes; clients renew them with the refresh token. - The same tools are available over A2A at
https://app.engmanapp.com/a2a, with the Agent Card athttps://app.engmanapp.com/.well-known/agent-card.json.
Tools
engman lists eighteen tools: fourteen reads and four proposals. Read tools are marked read-only. Proposal tools are marked as writes, so your client asks you before it calls one, and nothing they send is saved until you confirm it in engman.
Reads
get_my_context- Who you are, your workspace, the agent access level and the scopes this connection was granted.
get_workspace- The workspace's id and name, your own person and whether you own the workspace.
list_people- The people you see, by name, with each one's team and direct manager.
get_person- One person's name, work email, start date, email language, archived state, team, chain of command and pending invitation.
list_teams- The teams you see, by name, each with its manager.
list_one_on_ones- A person's 1:1s, newest first: date, status, kind, who held them, and how many action items are open and overdue. Never what was said.
get_manager_panel- A manager's Overview: yours, or that of a manager among your people (managerPersonId) exactly as they see it, with the path from you down to them. Each of the manager's direct reports who leads a team, with how many people they have, how many of them have had no 1:1 in that lead's own reminder weeks, the open and overdue action items of their 1:1s, their improvement feedback with no follow-up in those weeks, and their active career plans with how many have had no progress in those weeks; then each of the manager's direct reports by name and team, with the date of their last 1:1 held, since when they have had none once past the manager's reminder weeks, the action items of the manager's 1:1s with them, the manager's feedback about them with no follow-up, and whether the manager's career plan for them is active, stalled since a date, or missing. Never what was said, and never a plan's progress.
list_one_on_one_overview- For each of your people with a regular 1:1: the date of the last one held, the next one planned and how many of their action items are open. Never what was said.
list_feedback- The feedback given to a person, newest first: date, kind (recognition or improvement), status, the manager who owns it and the 1:1 it was given in. Never what was said.
list_timeline- Everything you may see about a person, newest first, 50 at a time: each entry's type (and a feedback entry's kind), date, the manager who owns it, its source, whether you may read its content, whether it is private and who else reads it by name. Never a title or what was written. Pass
typesto keep only some record types (person_changefor the person's changes), andnextCursorback ascursorfor the next page. get_ladder- The workspace's career ladder: each level's name, track (shared, individual contributor or manager), position and whether it is switched on, and each discipline's name. Never what a level expects.
list_career_plans- A person's career plans, newest first: type, status, target discipline and level, dates, progress, when progress last changed and the manager who owns each. Never an objective or key result.
list_connected_agents- The agents connected to engman: client, who connected it, when, last use, and reads and proposals over the last 30 days.
get_proposal_status- Whether your proposals were confirmed or discarded, and the id of what each confirmed one became.
Proposals
propose_person- Propose 1 to 100 people to add, each by full name, with an optional work email, start date, email language, and the team or manager they go under in plain words.
propose_one_on_one- Propose a 1:1 with one of your people: planned with topics, or held (dated today or earlier) with the person's answers, notes and action items.
propose_feedback- Propose feedback you gave one of your people, dated today or earlier: recognition or a point to improve, what you said, optionally the situation, behavior, impact, the change you expect and a 1:1 you held with them. Only you can mark it private, when you confirm it.
propose_career_plan- Propose a whole career plan for one of your direct reports: traditional, toward their next level, or liquid, toward a discipline and level from
get_ladder; an optional target date; objectives with key results (type, title, an http(s) link and a due date, each optional but the type and title); and whether to pre-fill it from the target level when you confirm. It is never private, and you can confirm it only once any active plan you own for them is closed.
Proposals and the confirmation queue
When an agent calls a proposal tool, engman saves the proposals as one batch and answers with a link to the batch and a link to each proposal.
- The batch waits in your Confirmation queue. Only you see it.
- Each proposal shows the agent that made it, the tool it called and when. You can correct a proposal before you confirm it, confirm it, or discard it.
- engman flags what needs your eye: a team or manager it could not match, a likely duplicate, a work email already taken, a 1:1 you already have with that person that day, or feedback of the same kind you already gave them that day. Confirm all confirms every proposal without a flag; flagged ones you confirm one by one.
- Proposals still waiting 30 days after their batch was made are discarded automatically.
- The agent can follow up with
get_proposal_status.
How to disconnect
Open Connected agents in engman and choose Disconnect next to the agent. It is cut off at its next call and has to be connected again to come back. What it proposed stays in your queue.
Everyone sees and disconnects their own agents; the workspace owner sees and disconnects every agent in the workspace.
Troubleshooting
A failed tool call comes back as an error result with a code and a message.
401 Unauthorized- The access token is missing, invalid, expired or revoked, or the agent was disconnected. Clients renew tokens on their own; if the error stays, remove the connector and connect it again.
AGENT_ACCESS_OFF- The workspace owner has switched agents off. Ask them to set Agent access back to Actions on the Connected agents page. The consent page shows the same message.
429 Too Many Requests- Each connection makes up to 60 requests a minute, counting every request, the MCP handshake included, and MCP and A2A calls together.
Wait the seconds the
Retry-Afterheader gives, then try again. NOT_FOUND("Not found")- The id does not exist, or you can no longer see it, for example after a person moves outside your part of the organization.
In the demo workspace, which is reset periodically, every reset gives records new ids.
Call
list_peopleorlist_teamsagain to get current ids. INVALID_INPUT- The input does not match the tool's schema.
The error lists each problem with its path; for
propose_personthe path names the row. - Second factor errors on the consent page
- Set up an authenticator app or a passkey in engman first, then connect again. If engman asks you to confirm it is you, enter your current code or use your passkey.
Help and legal
Write to hello@engmanapp.com.
Using an agent with engman is covered by the Terms of Service (español), the Privacy Policy (español) and the Data Processing Agreement (español).