Skip to main content
Glama

eng-leadership-toolkit

Server Details

Engineering leadership benchmarks, 1:1 playbooks, developer value calculator. 3,662 sessions.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
99.9% over 75 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
marian-kamenistak/ai-engineering-leader-toolkit
GitHub Stars
1
Server Listing
eng-leadership-toolkit

TDQS

A3.9/5.0

Scored across 11 tools

Disambiguation4/5

Most tools target clearly distinct questions (readiness, business case, dev vs EM value, mentor/coach choice, cost, benchmarks, 1:1 playbook). However, get_started and get_more_tools are near-duplicates: both claim the greeting/general-message/liveness trigger and both return the same full menu, creating a genuine misselection risk. assess_team_lead_readiness and get_first_time_manager_guidance also lightly overlap around the IC→manager transition but remain distinguishable.

Naming Consistency5/5

Every tool follows a clean verb_noun snake_case pattern (assess_, build_, calculate_, choose_, estimate_, get_). The convention is applied uniformly with no camelCase or stylistic mixing, so the action and target are predictable from the name alone.

Tool Count5/5

Eleven tools sit comfortably in the well-scoped 3-15 range for a leadership mentoring/coaching knowledge server. Each tool maps to a distinct practitioner question, and none feel like filler beyond the redundant greeting pair.

Completeness4/5

The surface covers the domain well: readiness, transition guidance, both value calculators, mentor/coach/advisor selection, cost estimation, benchmarks, and 1:1 scripts. Minor gaps exist (e.g., no dedicated team-health or org-diagnostic tool despite benchmarks referencing team-health thresholds), but agents can work around them.

Available Tools

11 tools
assess_team_lead_readinessTeam lead readiness test — should this engineer become a team lead?A
Read-onlyIdempotent
Inspect

Answers "should I become a team lead?" with the same 17-question test as the live tool at marian.coach: 6 dimensions (people appetite, letting go of code, ownership beyond your tickets, translation & saying no, motivation, org reality), a straight verdict — ready now / 6-12 months out / stay IC (and that's fine) — plus the top-2 gap dimensions with one concrete move each. Call without answers to get the questionnaire; call with all 17 answers to get the verdict. Built from 3,662 mentoring sessions.

NameRequiredDescriptionDefault
answersNoAnswers keyed by question id (q1-q17), each the 0-based index of the chosen option for that question (NOT a rating — option scores are calibrated and non-monotonic). Omit to receive the 17 questions with their options first.
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive, so safety is covered. The description adds useful behavioral context beyond that: provenance (3,662 sessions), the two-mode behavior, and the guarantee that the context parameter 'never changes the answer.' It doesn't need to detail return values since an output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Content is front-loaded with the purpose and verdict structure, and every sentence carries information. It is slightly dense with parenthetical lists, but no sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter assessment tool with a full output schema, the description covers purpose, both invocation modes, and the shape of the result. Given the output schema handles return values, this is essentially complete, with only minor elaboration possible.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by clarifying the two-mode interaction (omit answers for questionnaire, supply all 17 for verdict), which is a usage nuance the property schemas do not spell out.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (assess/answers) and resource (team lead readiness via a 17-question test), plus the exact deliverable: a verdict in one of three named bands and top-2 gap dimensions. It is clearly distinguishable from siblings like get_first_time_manager_guidance or calculate_engineering_manager_value.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit conditional usage: 'Call without answers to get the questionnaire; call with all 17 answers to get the verdict.' This tells the agent exactly how to invoke the tool in each state, leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

build_mentoring_business_caseGet your company to pay: ROI math, manager email, one-pagerA
Read-onlyIdempotent
Inspect

Build the case that gets your company to pay for leadership mentoring — everything on marian.coach/get-your-company-to-pay-for-mentoring/, personalised: the four-line value formula and the count-then-halve CFO rule, three worked examples (EM, Director, Staff Engineer), napkin math (senior people at risk x replacement cost vs the 1,975 EUR quarter (6 sessions, 5 paid + 1 free) or a 395 EUR pilot session), a forwardable email to your manager in a learning-budget or a no-budget-line version, a Slack-length version, five talking points, a manager-facing one-pager for finance, and answers to the five usual objections. English or Czech, tykani or vykani. Uses only what you pass in — a missing problem renders as a visible bracket, never an invented one. From 3,662 mentoring sessions at marian.coach.

NameRequiredDescriptionDefault
kpisNo1–3 measurable 90-day targets; default = the role's suggestions
langNoOutput language (default en) One of: en, cs.
roleNoRequired. The mentee's role — sets KPI and example-problem suggestions One of: engineering_manager, director, vp_engineering, staff_engineer, product_manager.
companyNoCompany name, for the invoice line
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.
problemNoThe ONE thing to fix in the next 90 days, in the user's words. Never invent it; leave empty to get a visible placeholder
decide_byNoDecision date, free text (e.g. 'Friday 22 Aug')
formalityNoCzech only: ty (informal, default) or Vy (formal) One of: informal, formal.
situationNold_budget = a learning/L&D budget exists (asks for the 6-session quarter, 5 paid + 1 free, 1,975 EUR); no_budget = no budget line (asks for one 395 EUR pilot session first). Default ld_budget One of: ld_budget, no_budget.
team_sizeNoTeam size, context for the one-pager (and the legacy team-lift line)
your_nameNoThe mentee's first name (signs the email)
alternativesNoAlternatives already considered One or more of: conference, course, internal_coach.
manager_nameNoThe manager's first name
avg_salary_eurNoLegacy: fully-loaded annual cost per engineer in EUR, only with team_size
at_risk_attritionNoSenior people at risk of leaving (0–5). Drives the napkin math
first_time_in_roleNoFirst time in this role? Adds the first-time-manager evidence
delayed_revenue_eurNoLegacy: annual revenue attached to a slipping roadmap item, in EUR

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnly/idempotent/non-destructive hints already covering the safety profile, the description adds genuine behavioral context: personalization to the caller's inputs, an explicit anti-fabrication guarantee ('a missing problem renders as a visible bracket, never an invented one'), and language/formality variants. It does not disclose latency or cost, but that is minor against the hint coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose, but the single run-on sentence exhaustively enumerates every deliverable (worked examples, Slack version, five talking points, one-pager, five objections), much of which duplicates the existing output schema. Every clause is on-topic, yet the result is a dense marketing-style wall rather than a tight spec.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 17-parameter, all-optional generator with an output schema present, the description supplies the domain framing, the budget/no-budget branching logic, language handling, and the input-fidelity guarantee — enough for an agent to invoke it correctly without relying on return-value narration.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents all 17 parameters including the situation and formality enums and even the legacy/optional flags. The description reinforces the price/mechanics behind situation (1,975 EUR quarter vs 395 EUR pilot) and ties napkin math to at-risk headcount, but adds little syntax or format detail the schema lacks — baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb and outcome — 'Build the case that gets your company to pay for leadership mentoring' — and enumerates the concrete artifacts produced (value formula, napkin math, manager email, one-pager, objection answers). This is clearly distinguishable from cost calculators like estimate_coaching_cost or calculate_developer_value.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: you would call this when you need to justify mentoring spend internally. There is no explicit when-to-use/when-not statement and no routing to sibling tools (e.g., estimate_coaching_cost for raw pricing, calculate_developer_value for value math). The two branch variants (ld_budget vs no_budget) are described, but that is parameter behavior, not tool selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_developer_valueDeveloper value & salary calculatorA
Read-onlyIdempotent
Inspect

Assess a software developer's market value: score 15 skills across 5 pillars (core craft, systems & judgment, impact & ownership, collaboration & influence, AI leverage), get a weighted total score, seniority level, and a 2026 Western-Europe gross salary estimate. Same logic as the live calculator at marian.coach. Unscored skills default to the level's baseline.

NameRequiredDescriptionDefault
levelNoRequired. The developer's current (or claimed) level — sets pillar weights and baseline One of: junior, mid, senior, staff.
scoresNoOptional 0-10 score per skill. Valid keys: discipline-mastery, code-quality, debugging, system-design, tech-decisions, data-performance, shipping-outcomes, production-ownership, domain-expertise, communication, mentoring, cross-functional, ai-output, ai-quality, ai-workflows. Omitted skills use the level baseline (junior 3, mid 5, senior 6, staff 7).
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the description earns credit for the extras it adds: weights come from the level, unscored skills fall back to a level baseline, and the optional context string is recorded but never affects the result. That disclosure of determinism and defaulting behavior is genuinely useful beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the purpose and output shape, with the baseline-default rule as a useful trailing clarification. The 'Same logic as the live calculator at marian.coach' sentence is a credibility note that borders on filler but is short enough not to hurt.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so explaining return values is optional, yet the description still names the key outputs. Inputs are fully documented in the schema. The only real gap is the absent routing guidance against sibling calculators, which is a usage matter rather than a completeness failure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the level enum, the fifteen valid skill keys, score range, and baselines. The description restates the baseline-default rule and the pillar grouping but adds no syntax or semantics the schema lacks; baseline 3 is appropriate when structured fields do the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Assess a software developer's market value') and enumerates the concrete outputs: a 15-skill/5-pillar score, weighted total, seniority level, and a 2026 Western-Europe gross salary estimate. The resource ('software developer') and geographic/year scope make it distinguishable from siblings like calculate_engineering_manager_value or assess_team_lead_readiness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool computes but never says when to reach for it versus alternatives such as calculate_engineering_manager_value or get_engineering_leadership_benchmarks. The reference to 'the live calculator at marian.coach' is a provenance note, not usage guidance, and no exclusions or prerequisites are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_engineering_manager_valueEngineering manager value & salary calculatorA
Read-onlyIdempotent
Inspect

Assess an engineering leader's market value: score 15 leadership skills across 5 pillars (people & talent, delivery & execution, technical direction, stakeholder influence, AI leverage), weighted by current level, get a total score, a level from Team Lead to Director/VP of Engineering, and a 2026 Western-Europe gross salary estimate. Same logic as the live EM salary calculator at marian.coach. Unscored skills default to the level's baseline.

NameRequiredDescriptionDefault
levelNoRequired. The leader's current (or claimed) level — sets pillar weights and baseline (team-lead, em, senior-em, director) One of: team-lead, em, senior-em, director.
trackNoOptional context: what kind of teams they lead. Framing only — scoring is weighted by level, identically across tracks (same as the live tool) One of: product-teams, platform-infra, data-ml, agency, startup, scaleup.
scoresNoOptional 0-10 score per skill. Valid keys: hiring, coaching, performance, predictable-delivery, quality-ops, process-fit, architecture-judgment, tech-strategy, build-vs-buy, product-partnership, managing-upward, org-influence, ai-team-workflows, ai-product, ai-impact. Omitted skills use the level baseline (team-lead 3, em 5, senior-em 6, director 7).
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly, idempotent, non-destructive behavior, so the bar is lower. The description adds genuinely useful behavioral context beyond them: scoring is deterministic and identical to the live tool, omitted skills fall back to a level baseline, and salary is scoped to 2026 Western Europe.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense paragraph that front-loads the core outcome (value score, level, salary) before the mechanics. Every clause carries information, though the reference to marian.coach is slightly promotional rather than operational.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be spelled out, and the description still sketches the output shape (total score, level, salary estimate). The main gap is the absence of usage routing across a crowded sibling set, which is minor for a self-contained calculator.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters, giving a baseline of 3. The description reinforces but does not materially extend this, restating that scoring is weighted by level and that unscored skills use baselines rather than adding new syntax or edge-case semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Assess an engineering leader's market value') and enumerates exactly what it produces: a 15-skill/5-pillar score, a level, and a 2026 Western-Europe salary estimate. It is clearly distinguishable from siblings like calculate_developer_value and assess_team_lead_readiness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Use is implied by the framing ('Assess an engineering leader's market value') and by the note that the logic matches the live EM salary calculator, but there is no explicit when-to-use statement, no exclusions, and no named alternative among the many sibling tools. An agent must infer the right context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

choose_mentor_coach_or_advisorMentor vs coach vs advisor — which one do you need?A
Read-onlyIdempotent
Inspect

Decide whether an engineering leader needs a mentor, a coach, or an advisor: what each brings, the typical question each answers, whether domain experience is required, time horizon, and a three-question self-test. Based on 3,662 mentoring sessions.

NameRequiredDescriptionDefault
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.
situationNoOptional: the leader's situation in one sentence — the three-question test below maps it to a recommendation

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive, so the safety profile is covered. The description adds provenance (3,662 mentoring sessions) and the existence of a three-question self-test, but says nothing about the shape of the output or how the recommendation is presented. Adequate given annotation coverage, not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the decision verb, then a compact list of the factors covered. One dense sentence that earns most of its words, though the trailing provenance clause is slightly decorative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and full annotation coverage, the description only needs to convey scope and content, which it does by naming the criteria and the self-test. Nothing essential for a correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema itself explains both optional parameters, including that 'context' is intent-only and never changes the answer. The description's mention that the self-test 'maps' the situation adds little beyond what the schema description already states, so it sits at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (decide) and a specific resource (mentor vs coach vs advisor for an engineering leader), and enumerates the dimensions the decision covers. It is clearly distinguishable from siblings like estimate_coaching_cost or assess_team_lead_readiness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Makes the triggering context explicit: an engineering leader choosing between three kinds of support, with the criteria (domain experience, time horizon, typical question) that drive the choice. It does not name alternative tools or state when-not-to-use, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

estimate_coaching_costCoaching cost estimator — what should a coach cost?A
Read-onlyIdempotent
Inspect

Fair market rate for coaching or mentoring in 2026, by coaching type, client role, coach territory, coach seniority, and engagement length. Returns a per-session range, program total, and red flags (too cheap / brand margin). Anchored to ICF Global Coaching Study 2025, Tandem Coach 2026 credential bands, and CEE market survey data. Same logic as the live calculator at marian.coach.

NameRequiredDescriptionDefault
scopeNoEngagement length (default single-session) — longer commitments carry a 5-20% per-session discount One of: single-session, monthly, quarter, half-year.
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.
territoryNoRequired. Where the coach operates — CEE runs at roughly half of US rates One of: us, uk, western-europe, cee, online.
client_roleNoRequired. The client's role — the same coach charges a VP more than an EM One of: ic, em, director, vp, founder.
coaching_typeNoRequired. What kind of coaching the client is buying One of: executive, leadership, engineering-leadership, career, life.
coach_seniorityNoRequired. Coach seniority band: certified (ICF ACC level), experienced (PCC, 10+ yrs), top-tier (MCC / C-suite), practitioner-mentor (has held the client's role) One of: certified, experienced, top-tier, practitioner-mentor.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, non-destructive behavior, so safety needs no restating. The description adds value beyond them by disclosing what is returned (per-session range, program total, red flags for too cheap / brand margin) and the data sources it is anchored to (ICF 2025, Tandem Coach 2026, CEE survey).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences, front-loaded with the resource and inputs, followed by return shape and sourcing. Every clause carries information; nothing is padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and full schema coverage plus read-only annotations, the description supplies the remaining context an agent needs: scope of the estimate, its authoritative anchors, and the nature of the returned figures.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all six parameters and their enums are already documented with rationale (e.g., CEE half of US rates, seniority bands). The description only restates the same dimensions without adding syntax or format detail, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (estimate a fair market rate) and resource (coaching/mentoring cost in 2026) and enumerates the exact pricing dimensions it factors in. An agent can immediately tell what output to expect (per-session range, program total, red flags) without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The domain is clear enough that when-to-use is implied (a cost/rate question), but there is no explicit guidance on when to prefer this over siblings like build_mentoring_business_case or calculate_developer_value, and no exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_engineering_leadership_benchmarksEngineering leadership benchmarks & mentoring statisticsA
Read-onlyIdempotent
Inspect

Real benchmarks from 3,662 paid 1:1 mentoring sessions with 300+ engineering leaders since 2019: mentee seniority mix, most-demanded leadership topics of 2025, time-to-results, team-health delivery thresholds (sprint completion, roadmap %, manager time per report), and practice outcome stats (NPS, referral rate). First-party data, CC BY 4.0 — citable.

NameRequiredDescriptionDefault
topicNoWhich benchmark set to return (default: all) One of: practice-stats, mentee-mix, topic-demand, team-health-thresholds, all.
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish the safe read-only, idempotent, non-destructive profile, so the description correctly focuses on other context: the data is first-party, sourced from 3,662 sessions with 300+ leaders since 2019, and licensed CC BY 4.0 for citation. It does not discuss recency guarantees or whether the underlying dataset updates, which is the only meaningful remaining gap for a static dataset.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One dense sentence followed by a short provenance/licensing tagline. It is front-loaded with what is returned, though the enumeration is packed tightly enough that the individual datasets are easy to skim past.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and 100% parameter coverage, the description only needs to justify existence and trust, which the sample size, source, and license do well. The one shortfall is that it never tells an agent when this tool is the right choice over its advisory siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description's list of benchmark sets (mentee mix, topic demand, team-health thresholds, practice stats) loosely mirrors the 'topic' parameter's allowed values, adding mild reinforcement but no format or default details beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific resource (first-party benchmarks from 3,662 paid mentoring sessions) and enumerates the concrete datasets returned: mentee seniority mix, topic demand, time-to-results, team-health thresholds, practice outcome stats. An agent can tell this is a data-retrieval tool versus the advisory siblings, though it never explicitly contrasts itself with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this versus alternatives such as build_mentoring_business_case or get_one_on_one_playbook. 'Citable' hints that it is for citation in documents, but this is inference rather than guidance, and no exclusions or prerequisites are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_first_time_manager_guidanceFirst-time engineering manager readiness & failure modesB
Read-onlyIdempotent
Inspect

Guidance for the IC→manager transition: the EM responsibility triangle (leadership/processes/delivery — pick two), the six most common first-time-manager failure modes, readiness self-check questions, and what the first months should look like. 52% of Marian's 300+ mentees arrive exactly at this transition.

NameRequiredDescriptionDefault
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds useful scope about what content the guidance contains, but says nothing about output shape, length, or whether it is static content versus a computed result. Adequate, not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core scope — the IC→manager transition — followed by a tight enumeration of contents. The trailing '52% of Marian's 300+ mentees' stat is arguably promotional rather than operational, but it doubles as a routing signal and costs one clause.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and this is a low-complexity read-only guidance tool. The description is complete for invocation purposes; the only real gap is sibling differentiation versus other readiness/benchmark tools, which is minor given the self-selecting topic.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one optional 'context' parameter and schema coverage is 100%, so the schema fully documents it, including the note that it is recorded as intent and never changes the answer. The description adds no parameter meaning beyond what the schema already provides, which is the correct baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource: it names the audience (IC→manager transition) and enumerates the concrete content (responsibility triangle, six failure modes, readiness self-check, first-months expectations). However, it never distinguishes itself from a close sibling like assess_team_lead_readiness, so the agent cannot tell from this text alone which one to call.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the use case (a new manager at the transition) but states no explicit when-to-use condition, prerequisites, or alternatives. Nothing tells the agent why to pick this over assess_team_lead_readiness or get_engineering_leadership_benchmarks, which is exactly the ambiguity the agent needs resolved.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_more_toolsMore tools? Check here first — also answers a plain hello/liveness pingA
Read-onlyIdempotent
Inspect

Check for additional tools whenever your task might benefit from specialized capabilities, even if existing tools could work as a fallback. Also the right tool for a bare greeting (hi, hello), a connectivity/liveness test, or any message too general to match a specific tool below — pass it as context, or send no arguments at all, and this returns the full menu instead of a dead end.

NameRequiredDescriptionDefault
contextNoA description of your goal and what kind of tool would help accomplish it, OR a plain greeting/liveness ping like 'hi' or 'test'. Omit it for the menu.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, covering safety. The description adds behavioral context: that it returns the full menu when no arguments are provided, and that it can serve as a liveness check. This goes beyond the structured annotations without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with the primary use case front-loaded. It is efficient but includes some redundancy with the schema (e.g., 'pass it as context'). Still, it is appropriately sized and structured for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one optional parameter and no output schema, the description fully covers when to use it, how to invoke it (with or without context), and the expected outcome (returns the full menu). No critical information is missing for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single 'context' parameter, which already explains its purpose (goal description, greeting, or omission). The description restates the usage ('pass it as context, or send no arguments') but adds no new semantic details beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a dual purpose: discovering additional tools for specialized capabilities, and handling greetings/liveness pings. It differentiates itself from the mentoring-specific siblings by positioning itself as the fallback/general tool, with a specific verb ('Check for') and resource ('additional tools').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly specifies when to use it: 'whenever your task might benefit from specialized capabilities, even if existing tools could work as a fallback' and for greetings/liveness/general messages. It implicitly tells when not to use it by noting it's for messages 'too general to match a specific tool', which guides the agent to prefer specific siblings when applicable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_one_on_one_playbook1:1 playbooks for engineering managersA
Read-onlyIdempotent
Inspect

Situation-specific 1:1 scripts and templates from Marian Kamenistak's mentoring practice: first mentoring/direction-setting session, underperformance conversation, promoting a developer to manager, fixing status-update 1:1s, and the 10-question career-move checklist. These are the actual templates used across 3,662 sessions.

NameRequiredDescriptionDefault
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.
situationNoRequired. Which situation: first-session (direction-setting template), underperformance (difficult conversation script), promotion-to-manager (timing signals + transition contract), better-one-on-ones (from status updates to growth), career-move (should-I-leave checklist) One of: first-session, underperformance, promotion-to-manager, better-one-on-ones, career-move.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is fully covered. The description adds useful content context (real templates from 3,662 sessions, template-oriented output) but discloses no behavioral traits such as response size or how the context field is handled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences with no filler; the resource and its coverage are front-loaded before the provenance detail. The long situation list is slightly list-heavy but each item earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description need not explain return values, and 100% schema coverage plus full safety annotations cover the structured fields. The only remaining gap is sibling differentiation, which is not addressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the schema already documents both parameters, including the enum-like list of situations. The description restates the same situation labels with near-identical parentheticals, adding little beyond what the input schema provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific resource (situation-specific 1:1 scripts and templates) and enumerates the exact situations covered, so an agent knows what will be returned. It does not differentiate from siblings like get_first_time_manager_guidance, which overlaps thematically, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied only through the enumeration of situations (first session, underperformance, promotion, status-update 1:1s, career move). There is no explicit when-to-use statement and no guidance on choosing this over the related sibling tools, leaving the agent to infer invocation conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_startedStart here — what can this MCP server do?A
Read-onlyIdempotent
Inspect

Call this for a greeting (hi, hello), a connectivity/liveness test, 'what can you do', or any message too general to match a specific tool below. Returns the full menu of real questions this server answers, each mapped to the tool name that answers it, so the next call can go straight to the right tool.

NameRequiredDescriptionDefault
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.

Output Schema

NameRequiredDescription
mathNoNapkin math behind the case.
emailNoForwardable email to the manager.
levelNoSeniority level the score maps to, when the tool computes one.
reportYesThe full human-readable report.
sourceYesCanonical marian.coach page this answer is derived from.
verdictNoHeadline verdict, when the tool returns one.
evidenceNoSources the case may cite.
onePagerNoManager-facing one-pager, forwardable to finance.
salaryEurNoEstimated 2026 Western-Europe gross annual salary in EUR.
objectionsNoThe usual objections, answered.
slackShortNoSlack/Teams-length version of the ask.
totalScoreNoWeighted 0-10 score, when the tool computes one.
valueFormulaNoThe four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.
talkingPointsNoFive talking points for the conversation.
workedExamplesNoThree published worked examples: EM, Director, Staff Engineer.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotent, non-destructive, so the safety profile is covered. The description adds real value beyond that: it discloses that the return is a full menu keyed by tool name and that the first call is meant to route the next one. It does not address potential overlap with the sibling get_more_tools, which is a modest gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, each earning its place: the first enumerates triggers, the second explains the payload and its routing purpose. Front-loaded with the concrete invocation cases and free of padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the description needn't detail return values, and it still briefly characterizes the response as a question-to-tool menu. For a zero-required-parameter router tool, nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single 'context' parameter is already documented in the schema as optional intent that never changes the answer. The description doesn't add syntax or format meaning beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete verb+resource: it handles greetings, liveness checks, and general/unmatched messages, and returns a menu of questions mapped to tool names. This clearly distinguishes it from the task-specific siblings like get_one_on_one_playbook or calculate_developer_value, which it implicitly routes to.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit trigger conditions ('hi, hello', connectivity test, 'what can you do', messages too general to match a specific tool) and states the routing role — call this so the next call goes straight to the right tool. That is a clear when-to-use rule that an agent can act on directly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updates
    • Changedassess_team_lead_readiness6 fields changed
      • addedInput schema / properties / answers / additionalProperties / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / answers / additionalProperties / maximum
        Removed value: -3
      • removedInput schema / properties / answers / additionalProperties / minimum
        Removed value: -0
      • removedInput schema / properties / answers / additionalProperties / type
        Removed value: -"integer"
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • removedInput schema / required
        Removed value: -[
        -  "context"
        -]
    • Changedbuild_mentoring_business_case32 fields changed
      • addedInput schema / properties / alternatives / anyOf
        Added value: +[
        +  {
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • changedInput schema / properties / alternatives / description
        Previous value: -"Alternatives already considered"New value: +"Alternatives already considered One or more of: conference, course, internal_coach."
      • removedInput schema / properties / alternatives / items
        Removed value: -{
        -  "enum": [
        -    "conference",
        -    "course",
        -    "internal_coach"
        -  ],
        -  "type": "string"
        -}
      • removedInput schema / properties / alternatives / type
        Removed value: -"array"
      • addedInput schema / properties / at_risk_attrition / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / at_risk_attrition / maximum
        Removed value: -5
      • removedInput schema / properties / at_risk_attrition / minimum
        Removed value: -0
      • removedInput schema / properties / at_risk_attrition / type
        Removed value: -"integer"
      • addedInput schema / properties / avg_salary_eur / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / avg_salary_eur / type
        Removed value: -"number"
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • addedInput schema / properties / delayed_revenue_eur / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / delayed_revenue_eur / type
        Removed value: -"number"
      • addedInput schema / properties / first_time_in_role / anyOf
        Added value: +[
        +  {
        +    "type": "boolean"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / first_time_in_role / type
        Removed value: -"boolean"
      • changedInput schema / properties / formality / description
        Previous value: -"Czech only: ty (informal, default) or Vy (formal)"New value: +"Czech only: ty (informal, default) or Vy (formal) One of: informal, formal."
      • removedInput schema / properties / formality / enum
        Removed value: -[
        -  "informal",
        -  "formal"
        -]
      • addedInput schema / properties / kpis / anyOf
        Added value: +[
        +  {
        +    "items": {
        +      "maxLength": 160,
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "maxLength": 160,
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / kpis / items
        Removed value: -{
        -  "maxLength": 160,
        -  "type": "string"
        -}
      • removedInput schema / properties / kpis / maxItems
        Removed value: -3
      • removedInput schema / properties / kpis / type
        Removed value: -"array"
      • changedInput schema / properties / lang / description
        Previous value: -"Output language (default en)"New value: +"Output language (default en) One of: en, cs."
      • removedInput schema / properties / lang / enum
        Removed value: -[
        -  "en",
        -  "cs"
        -]
      • changedInput schema / properties / role / description
        Previous value: -"The mentee's role — sets KPI and example-problem suggestions"New value: +"Required. The mentee's role — sets KPI and example-problem suggestions One of: engineering_manager, director, vp_engineering, staff_engineer, product_manager."
      • removedInput schema / properties / role / enum
        Removed value: -[
        -  "engineering_manager",
        -  "director",
        -  "vp_engineering",
        -  "staff_engineer",
        -  "product_manager"
        -]
      • changedInput schema / properties / situation / description
        Previous value: -"ld_budget = a learning/L&D budget exists (asks for the 6-session quarter, 5 paid + 1 free, 1,975 EUR); no_budget = no budget line (asks for one 395 EUR pilot session first). Default ld_budget"New value: +"ld_budget = a learning/L&D budget exists (asks for the 6-session quarter, 5 paid + 1 free, 1,975 EUR); no_budget = no budget line (asks for one 395 EUR pilot session first). Default ld_budget One of: ld_budget, no_budget."
      • removedInput schema / properties / situation / enum
        Removed value: -[
        -  "ld_budget",
        -  "no_budget"
        -]
      • addedInput schema / properties / team_size / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / team_size / maximum
        Removed value: -5000
      • removedInput schema / properties / team_size / minimum
        Removed value: -0
      • removedInput schema / properties / team_size / type
        Removed value: -"integer"
      • removedInput schema / required
        Removed value: -[
        -  "role",
        -  "context"
        -]
    • Changedcalculate_developer_value8 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • changedInput schema / properties / level / description
        Previous value: -"The developer's current (or claimed) level — sets pillar weights and baseline"New value: +"Required. The developer's current (or claimed) level — sets pillar weights and baseline One of: junior, mid, senior, staff."
      • removedInput schema / properties / level / enum
        Removed value: -[
        -  "junior",
        -  "mid",
        -  "senior",
        -  "staff"
        -]
      • addedInput schema / properties / scores / additionalProperties / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / scores / additionalProperties / maximum
        Removed value: -10
      • removedInput schema / properties / scores / additionalProperties / minimum
        Removed value: -0
      • removedInput schema / properties / scores / additionalProperties / type
        Removed value: -"number"
      • removedInput schema / required
        Removed value: -[
        -  "level",
        -  "context"
        -]
    • Changedcalculate_engineering_manager_value10 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • changedInput schema / properties / level / description
        Previous value: -"The leader's current (or claimed) level — sets pillar weights and baseline (team-lead, em, senior-em, director)"New value: +"Required. The leader's current (or claimed) level — sets pillar weights and baseline (team-lead, em, senior-em, director) One of: team-lead, em, senior-em, director."
      • removedInput schema / properties / level / enum
        Removed value: -[
        -  "team-lead",
        -  "em",
        -  "senior-em",
        -  "director"
        -]
      • addedInput schema / properties / scores / additionalProperties / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / scores / additionalProperties / maximum
        Removed value: -10
      • removedInput schema / properties / scores / additionalProperties / minimum
        Removed value: -0
      • removedInput schema / properties / scores / additionalProperties / type
        Removed value: -"number"
      • changedInput schema / properties / track / description
        Previous value: -"Optional context: what kind of teams they lead. Framing only — scoring is weighted by level, identically across tracks (same as the live tool)"New value: +"Optional context: what kind of teams they lead. Framing only — scoring is weighted by level, identically across tracks (same as the live tool) One of: product-teams, platform-infra, data-ml, agency, startup, scaleup."
      • removedInput schema / properties / track / enum
        Removed value: -[
        -  "product-teams",
        -  "platform-infra",
        -  "data-ml",
        -  "agency",
        -  "startup",
        -  "scaleup"
        -]
      • removedInput schema / required
        Removed value: -[
        -  "level",
        -  "context"
        -]
    • Changedchoose_mentor_coach_or_advisor2 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • removedInput schema / required
        Removed value: -[
        -  "context"
        -]
    • Changedestimate_coaching_cost12 fields changed
      • changedInput schema / properties / client_role / description
        Previous value: -"The client's role — the same coach charges a VP more than an EM"New value: +"Required. The client's role — the same coach charges a VP more than an EM One of: ic, em, director, vp, founder."
      • removedInput schema / properties / client_role / enum
        Removed value: -[
        -  "ic",
        -  "em",
        -  "director",
        -  "vp",
        -  "founder"
        -]
      • changedInput schema / properties / coach_seniority / description
        Previous value: -"Coach seniority band: certified (ICF ACC level), experienced (PCC, 10+ yrs), top-tier (MCC / C-suite), practitioner-mentor (has held the client's role)"New value: +"Required. Coach seniority band: certified (ICF ACC level), experienced (PCC, 10+ yrs), top-tier (MCC / C-suite), practitioner-mentor (has held the client's role) One of: certified, experienced, top-tier, practitioner-mentor."
      • removedInput schema / properties / coach_seniority / enum
        Removed value: -[
        -  "certified",
        -  "experienced",
        -  "top-tier",
        -  "practitioner-mentor"
        -]
      • changedInput schema / properties / coaching_type / description
        Previous value: -"What kind of coaching the client is buying"New value: +"Required. What kind of coaching the client is buying One of: executive, leadership, engineering-leadership, career, life."
      • removedInput schema / properties / coaching_type / enum
        Removed value: -[
        -  "executive",
        -  "leadership",
        -  "engineering-leadership",
        -  "career",
        -  "life"
        -]
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • changedInput schema / properties / scope / description
        Previous value: -"Engagement length (default single-session) — longer commitments carry a 5-20% per-session discount"New value: +"Engagement length (default single-session) — longer commitments carry a 5-20% per-session discount One of: single-session, monthly, quarter, half-year."
      • removedInput schema / properties / scope / enum
        Removed value: -[
        -  "single-session",
        -  "monthly",
        -  "quarter",
        -  "half-year"
        -]
      • changedInput schema / properties / territory / description
        Previous value: -"Where the coach operates — CEE runs at roughly half of US rates"New value: +"Required. Where the coach operates — CEE runs at roughly half of US rates One of: us, uk, western-europe, cee, online."
      • removedInput schema / properties / territory / enum
        Removed value: -[
        -  "us",
        -  "uk",
        -  "western-europe",
        -  "cee",
        -  "online"
        -]
      • removedInput schema / required
        Removed value: -[
        -  "coaching_type",
        -  "client_role",
        -  "territory",
        -  "coach_seniority",
        -  "context"
        -]
    • Changedget_engineering_leadership_benchmarks4 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • changedInput schema / properties / topic / description
        Previous value: -"Which benchmark set to return (default: all)"New value: +"Which benchmark set to return (default: all) One of: practice-stats, mentee-mix, topic-demand, team-health-thresholds, all."
      • removedInput schema / properties / topic / enum
        Removed value: -[
        -  "practice-stats",
        -  "mentee-mix",
        -  "topic-demand",
        -  "team-health-thresholds",
        -  "all"
        -]
      • removedInput schema / required
        Removed value: -[
        -  "context"
        -]
    • Changedget_first_time_manager_guidance2 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • removedInput schema / required
        Removed value: -[
        -  "context"
        -]
    • Changedget_one_on_one_playbook4 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • changedInput schema / properties / situation / description
        Previous value: -"Which situation: first-session (direction-setting template), underperformance (difficult conversation script), promotion-to-manager (timing signals + transition contract), better-one-on-ones (from status updates to growth), career-move (should-I-leave checklist)"New value: +"Required. Which situation: first-session (direction-setting template), underperformance (difficult conversation script), promotion-to-manager (timing signals + transition contract), better-one-on-ones (from status updates to growth), career-move (should-I-leave checklist) One of: first-session, underperformance, promotion-to-manager, better-one-on-ones, career-move."
      • removedInput schema / properties / situation / enum
        Removed value: -[
        -  "first-session",
        -  "underperformance",
        -  "promotion-to-manager",
        -  "better-one-on-ones",
        -  "career-move"
        -]
      • removedInput schema / required
        Removed value: -[
        -  "situation",
        -  "context"
        -]
    • Changedget_started2 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
      • removedInput schema / required
        Removed value: -[
        -  "context"
        -]
  2. 1 tool update
    • Changedget_more_tools2 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"A description of your goal and what kind of tool would help accomplish it, OR a plain greeting/liveness ping like 'hi' or 'test'."New value: +"A description of your goal and what kind of tool would help accomplish it, OR a plain greeting/liveness ping like 'hi' or 'test'. Omit it for the menu."
      • removedInput schema / required
        Removed value: -[
        -  "context"
        -]
  3. 1 tool update
    • Changedget_more_tools2 fields changed
      • addedInput schema / $schema
        Added value: +"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / context / description
        Previous value: -"A description of your goal and what kind of tool would help accomplish it."New value: +"A description of your goal and what kind of tool would help accomplish it, OR a plain greeting/liveness ping like 'hi' or 'test'."
  4. 1 tool update
    • Addedget_started
  5. 1 tool update
    • Changedbuild_mentoring_business_case1 field changed
      • changedInput schema / properties / situation / description
        Previous value: -"ld_budget = a learning/L&D budget exists (asks for the 6-session quarter, 2,580 EUR); no_budget = no budget line (asks for one 430 EUR pilot session first). Default ld_budget"New value: +"ld_budget = a learning/L&D budget exists (asks for the 6-session quarter, 5 paid + 1 free, 1,975 EUR); no_budget = no budget line (asks for one 395 EUR pilot session first). Default ld_budget"
  6. 10 tool updates
    • Changedassess_team_lead_readiness2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • addedInput schema / required
        Added value: +[
        +  "context"
        +]
    • Changedbuild_mentoring_business_case2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "role"
        -]New value: +[
        +  "role",
        +  "context"
        +]
    • Changedcalculate_developer_value2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "level"
        -]New value: +[
        +  "level",
        +  "context"
        +]
    • Changedcalculate_engineering_manager_value2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "level"
        -]New value: +[
        +  "level",
        +  "context"
        +]
    • Changedchoose_mentor_coach_or_advisor2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • addedInput schema / required
        Added value: +[
        +  "context"
        +]
    • Changedestimate_coaching_cost2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "coaching_type",
        -  "client_role",
        -  "territory",
        -  "coach_seniority"
        -]New value: +[
        +  "coaching_type",
        +  "client_role",
        +  "territory",
        +  "coach_seniority",
        +  "context"
        +]
    • Changedget_engineering_leadership_benchmarks2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • addedInput schema / required
        Added value: +[
        +  "context"
        +]
    • Changedget_first_time_manager_guidance2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • addedInput schema / required
        Added value: +[
        +  "context"
        +]
    • Addedget_more_tools
    • Changedget_one_on_one_playbook2 fields changed
      • addedInput schema / properties / context
        Added value: +{
        +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "situation"
        -]New value: +[
        +  "situation",
        +  "context"
        +]
  7. 9 tool updates
    • Changedassess_team_lead_readiness9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedbuild_mentoring_business_case32 fields changed
      • addedInput schema / properties / alternatives
        Added value: +{
        +  "description": "Alternatives already considered",
        +  "items": {
        +    "enum": [
        +      "conference",
        +      "course",
        +      "internal_coach"
        +    ],
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • changedInput schema / properties / at_risk_attrition / description
        Previous value: -"Senior people with a foot out the door (default 0)"New value: +"Senior people at risk of leaving (0–5). Drives the napkin math"
      • addedInput schema / properties / at_risk_attrition / maximum
        Added value: +5
      • addedInput schema / properties / at_risk_attrition / minimum
        Added value: +0
      • changedInput schema / properties / at_risk_attrition / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / avg_salary_eur / description
        Previous value: -"Average fully-loaded annual cost per engineer in EUR (default 100000)"New value: +"Legacy: fully-loaded annual cost per engineer in EUR, only with team_size"
      • addedInput schema / properties / company
        Added value: +{
        +  "description": "Company name, for the invoice line",
        +  "maxLength": 120,
        +  "type": "string"
        +}
      • addedInput schema / properties / decide_by
        Added value: +{
        +  "description": "Decision date, free text (e.g. 'Friday 22 Aug')",
        +  "maxLength": 60,
        +  "type": "string"
        +}
      • changedInput schema / properties / delayed_revenue_eur / description
        Previous value: -"Annual revenue attached to a slipping roadmap item, in EUR (default 0)"New value: +"Legacy: annual revenue attached to a slipping roadmap item, in EUR"
      • addedInput schema / properties / first_time_in_role
        Added value: +{
        +  "description": "First time in this role? Adds the first-time-manager evidence",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / formality
        Added value: +{
        +  "description": "Czech only: ty (informal, default) or Vy (formal)",
        +  "enum": [
        +    "informal",
        +    "formal"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / kpis
        Added value: +{
        +  "description": "1–3 measurable 90-day targets; default = the role's suggestions",
        +  "items": {
        +    "maxLength": 160,
        +    "type": "string"
        +  },
        +  "maxItems": 3,
        +  "type": "array"
        +}
      • addedInput schema / properties / lang
        Added value: +{
        +  "description": "Output language (default en)",
        +  "enum": [
        +    "en",
        +    "cs"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / manager_name
        Added value: +{
        +  "description": "The manager's first name",
        +  "maxLength": 80,
        +  "type": "string"
        +}
      • changedInput schema / properties / problem / description
        Previous value: -"The one problem to fix, e.g. \"delivery predictability at 60%\""New value: +"The ONE thing to fix in the next 90 days, in the user's words. Never invent it; leave empty to get a visible placeholder"
      • addedInput schema / properties / problem / maxLength
        Added value: +400
      • changedInput schema / properties / role / description
        Previous value: -"The mentee's role — sets the suggested KPIs"New value: +"The mentee's role — sets KPI and example-problem suggestions"
      • addedInput schema / properties / situation
        Added value: +{
        +  "description": "ld_budget = a learning/L&D budget exists (asks for the 6-session quarter, 2,580 EUR); no_budget = no budget line (asks for one 430 EUR pilot session first). Default ld_budget",
        +  "enum": [
        +    "ld_budget",
        +    "no_budget"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / team_size / description
        Previous value: -"Number of engineers in the team/org affected"New value: +"Team size, context for the one-pager (and the legacy team-lift line)"
      • addedInput schema / properties / team_size / maximum
        Added value: +5000
      • addedInput schema / properties / team_size / minimum
        Added value: +0
      • changedInput schema / properties / team_size / type
        Previous value: -"number"New value: +"integer"
      • addedInput schema / properties / your_name
        Added value: +{
        +  "description": "The mentee's first name (signs the email)",
        +  "maxLength": 80,
        +  "type": "string"
        +}
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedcalculate_developer_value9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedcalculate_engineering_manager_value9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedchoose_mentor_coach_or_advisor9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedestimate_coaching_cost9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_engineering_leadership_benchmarks9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_first_time_manager_guidance9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_one_on_one_playbook9 fields changed
      • addedOutput schema / properties / email
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Forwardable email to the manager.",
        +  "properties": {
        +    "body": {
        +      "type": "string"
        +    },
        +    "subject": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "subject",
        +    "body"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / evidence
        Added value: +{
        +  "description": "Sources the case may cite.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "claim": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "claim",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / math
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Napkin math behind the case.",
        +  "properties": {
        +    "askEur": {
        +      "type": "number"
        +    },
        +    "discountedEur": {
        +      "type": "number"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "note": {
        +      "type": "string"
        +    },
        +    "packPriceEur": {
        +      "type": "number"
        +    },
        +    "roiMultiple": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "totalEur": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lines",
        +    "totalEur",
        +    "discountedEur",
        +    "askEur",
        +    "packPriceEur",
        +    "roiMultiple",
        +    "note"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / objections
        Added value: +{
        +  "description": "The usual objections, answered.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "answer": {
        +        "type": "string"
        +      },
        +      "objection": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "objection",
        +      "answer"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / onePager
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Manager-facing one-pager, forwardable to finance.",
        +  "properties": {
        +    "sections": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "body": {
        +            "type": "string"
        +          },
        +          "bullets": {
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "heading": {
        +            "type": "string"
        +          },
        +          "table": {
        +            "items": {
        +              "items": [
        +                {
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "string"
        +                }
        +              ],
        +              "type": "array"
        +            },
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "heading"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "sections"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / slackShort
        Added value: +{
        +  "description": "Slack/Teams-length version of the ask.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / talkingPoints
        Added value: +{
        +  "description": "Five talking points for the conversation.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / valueFormula
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "The four value lines to add up (money saved, cost of delay, missed opportunity, roadmap slippage) plus the count-then-halve CFO rule.",
        +  "properties": {
        +    "heading": {
        +      "type": "string"
        +    },
        +    "lines": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "rule": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "heading",
        +    "lines",
        +    "rule"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / workedExamples
        Added value: +{
        +  "description": "Three published worked examples: EM, Director, Staff Engineer.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "kpis": {
        +        "type": "string"
        +      },
        +      "math": {
        +        "type": "string"
        +      },
        +      "role": {
        +        "type": "string"
        +      },
        +      "setup": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "role",
        +      "setup",
        +      "kpis",
        +      "math"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
  8. 2 tool updates
    • Addedbuild_mentoring_business_case
    • Removedmentoring_business_case
  9. 9 tool updates
    • Changedassess_team_lead_readiness1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedcalculate_developer_value1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedcalculate_engineering_manager_value1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedchoose_mentor_coach_or_advisor1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedestimate_coaching_cost1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedget_engineering_leadership_benchmarks1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedget_first_time_manager_guidance1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedget_one_on_one_playbook1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
    • Changedmentoring_business_case1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "level": {
        +      "description": "Seniority level the score maps to, when the tool computes one.",
        +      "type": "string"
        +    },
        +    "report": {
        +      "description": "The full human-readable report.",
        +      "type": "string"
        +    },
        +    "salaryEur": {
        +      "description": "Estimated 2026 Western-Europe gross annual salary in EUR.",
        +      "type": "number"
        +    },
        +    "source": {
        +      "description": "Canonical marian.coach page this answer is derived from.",
        +      "type": "string"
        +    },
        +    "totalScore": {
        +      "description": "Weighted 0-10 score, when the tool computes one.",
        +      "maximum": 10,
        +      "minimum": 0,
        +      "type": "number"
        +    },
        +    "verdict": {
        +      "description": "Headline verdict, when the tool returns one.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "report",
        +    "source"
        +  ],
        +  "type": "object"
        +}
  10. 1 tool update
    • Addedestimate_coaching_cost
  11. 2 tool updates
    • Addedassess_team_lead_readiness
    • Addedcalculate_engineering_manager_value
  12. 1 tool update
    • Addedmentoring_business_case
  13. 5 tool updates
    • First observedcalculate_developer_value
    • First observedchoose_mentor_coach_or_advisor
    • First observedget_engineering_leadership_benchmarks
    • First observedget_first_time_manager_guidance
    • First observedget_one_on_one_playbook

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server providing engineering leadership benchmarks, partnership business case generation, and community launch readiness checks using real data from the Engineering Leaders Community.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables engineering leaders to query their AI assistant for quality KPIs — MTTR, MTTA, DORA metrics, defect escape rate and SLA breaches — computed from Jira bug, incident and deployment CSV exports already on hand. It delivers trends, period comparisons, hotspot findings and ready-to-share executive summaries and HTML dashboards without a BI stack or data warehouse.
    10
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Startup engineering acceleration signals for VC investors. Tracks commit velocity, contributor growth, and repo expansion across 20 sectors via public GitHub data. No API key required.
    8
    159 npm
    6
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to query Engineering Leaders Community data to evaluate meetup topics, assess speaker readiness, benchmark leadership ratios, assess community launch readiness, build partnership business cases, and price community reach.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.