Social Security COLA 2027 MCP
Server Details
Social Security COLA 2027, full retirement age, earnings test and 2027 limits from SSA notices.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- theluckystrike/social-security-cola-2027-mcp
- GitHub Stars
- 0
- Server Listing
- social-security-cola-2027-mcp
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 6 tools
Each tool targets a distinct computation or lookup (claiming-age benefit, COLA application, earnings test, FRA lookup, COLA rate, program limits). The only plausible confusion is between get_social_security_cola (fetches the rate) and calculate_cola_increase (applies it), but the descriptions make the fetch-vs-apply split clear.
All names are snake_case with a consistent verb_noun shape: calculate_* for computations and get_* for lookups. The verb choice reliably signals the operation type.
Six tools is well-scoped for a narrow domain, and each one covers a distinct SSA calculation or data lookup with no filler. Nothing feels redundant or missing at the count level.
The surface covers COLA rates/history, program limits, FRA rules, claiming-age benefits, and the earnings test — the core of the domain. Gaps remain for spousal/survivor benefit calculations, benefit taxation, and family maximums, which agents would have to work around.
Available Tools
6 toolscalculate_claiming_age_benefitCalculate benefit by claiming ageARead-onlyIdempotentInspect
Monthly Social Security retirement benefit if claimed at a given age between 62 and 70, from the full-retirement-age amount (PIA). Uses 5/9 of 1 percent a month for the first 36 early months, 5/12 of 1 percent after that, and 2/3 of 1 percent a month of delayed credits for people born after 1942, with SSA dime rounding.
| Name | Required | Description | Default |
|---|---|---|---|
| pia | Yes | Monthly benefit at full retirement age (primary insurance amount) in dollars, from the SSA statement. | |
| birth_date | Yes | Birth date as YYYY-MM-DD, for example "1960-07-15". | |
| claim_age_years | Yes | Claiming age in whole years, 62 to 70. | |
| claim_age_months | No | Extra months, 0 to 11. Default 0. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, non-destructive, closed-world behavior, so the description's value-add is the calculation method: the 5/9-of-1%-per-month reduction for the first 36 early months, 5/12 after that, 2/3-of-1% delayed credits, and SSA dime rounding. This lets an agent sanity-check returned values. One gap: the 'born after 1942' qualifier hints at an unstated branch for earlier birth years, leaving that edge case opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded sentence that names the output first, then the method, with no filler. The statutory percentages are dense but each earns its place as verification context; the one weak spot is that the sentence is long enough that the 'born after 1942' clause is easy to miss.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly identifies the return value as a monthly dollar benefit and notes dime rounding. It is missing only the output type/shape and the treatment of the pre-1943 birth case, minor omissions for a four-parameter pure calculation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are already documented, and the baseline is 3. The description adds only modest meaning beyond the schema — clarifying that pia is the full-retirement-age monthly amount and that claim ages run 62 to 70 — and says nothing about claim_age_months or how birth_date drives the FRA used in the math.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a precise computation — the monthly retirement benefit at a given claiming age between 62 and 70, derived from the PIA — with both input and output semantics clear. An agent can distinguish it from calculate_cola_increase, calculate_earnings_test, and get_full_retirement_age without opening any schema, since those cover cost-of-living, work-limit, and FRA lookup tasks respectively.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 62-to-70 age range and the requirement that the starting point be the full-retirement-age amount imply when the tool applies, but there is no explicit statement of when to use this vs. the sibling calculators or what prerequisites must be satisfied (e.g., that the FRA itself comes from get_full_retirement_age). Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_cola_increaseCalculate COLA increaseARead-onlyIdempotentInspect
Apply a year's Social Security COLA to a monthly benefit. Rounds down to the next lower 10 cents and shows the whole-dollar payment, as SSA does. Default year 2027 (3.6 percent).
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year the COLA is first paid. Default 2027. | |
| monthly_benefit | Yes | Current monthly benefit in dollars, for example 2008. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive behavior, so the safety profile is covered. The description adds genuinely useful behavior beyond that: it rounds down to the next lower 10 cents, reports the whole-dollar payment, mirrors SSA practice, and supplies a default year with its 3.6 percent rate. It does not describe error handling or the exact shape of the returned object.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the action, then the output semantics, then the default. Every clause carries information: rounding rule, whole-dollar display, SSA fidelity, default year and rate. Nothing is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, read-only calculator with no output schema, the description is nearly sufficient: it explains what is computed and how the result is rounded and displayed. It stops short of enumerating the returned fields (e.g., whether the increase amount and new benefit are both returned), which matters slightly more here because no output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100 percent, so both parameters are already documented, making 3 the baseline. The description still adds meaning beyond the schema by tying the default year 2027 to a concrete 3.6 percent rate, which the schema does not state, and by clarifying the SSA-style rounding applied to the benefit input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: apply a year's Social Security COLA to a monthly benefit. That is clearly distinct from the sibling get_social_security_cola (which retrieves a rate rather than applying it), but no sibling is named, so differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the phrasing 'apply a year's COLA to a monthly benefit' — the agent can infer it is the tool for producing an adjusted payment amount. There is no explicit when-to-use versus get_social_security_cola, no prerequisites, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_earnings_testCalculate earnings test withholdingARead-onlyIdempotentInspect
How much Social Security withholds under the retirement earnings test for a year and annual earnings: $1 for every $2 over the limit, or $1 for every $3 in the year you reach full retirement age.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year 2023 to 2027. Default 2027. | |
| annual_earnings | Yes | Wages plus net self-employment earnings for the year, in dollars. In the year you reach full retirement age, only earnings before that month. | |
| monthly_benefit | No | Monthly benefit, to estimate how many months are withheld. | |
| reaches_full_retirement_age_this_year | No | True if you reach full retirement age during this year. Default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds the substantive withholding rules, but says nothing about how limits are sourced, that the result is an estimate, or what form the answer takes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that states the computed quantity first and then the two governing rates. Every clause earns its place and nothing is padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only calculator with only one required parameter and full schema coverage, the description supplies the core rule needed to trust the call. The remaining gap is the absence of an output schema combined with no statement of the return value's shape (a dollar amount, possibly plus months withheld).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 year, annual_earnings, monthly_benefit and the FRA flag in detail; the baseline is 3. The description's rate rules give meaning to why the FRA boolean matters, but that meaning is also already spelled out in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific computation ('How much Social Security withholds under the retirement earnings test') and its inputs (a year and annual earnings), which is clearly distinct from the sibling calculators. It does not explicitly contrast itself with siblings such as get_social_security_limits or calculate_claiming_age_benefit, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the formula it summarizes ($1 per $2 over the limit, $1 per $3 in the FRA year), but there is no explicit statement of when to call this versus the sibling limit or benefit calculators. The agent must infer the selection criteria from the tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_full_retirement_ageGet full retirement ageARead-onlyIdempotentInspect
Full retirement age for Social Security from a birth date (20 CFR 404.409, including the January 1 rule and the day-before-birthday rule), the exact date and month it is reached, the earliest month benefits can start at 62 and the percent cut, the spouse percent at 62, delayed retirement credits to age 70 and the survivor full retirement age.
| Name | Required | Description | Default |
|---|---|---|---|
| birth_date | Yes | Birth date as YYYY-MM-DD, for example "1960-07-15". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this as a read-only, idempotent, closed-world computation, so the description's job is to add edge-case context, and it does: it flags the January 1 rule and the day-before-birthday rule, which materially change how a given birth date is interpreted. It also enumerates the specific outputs in lieu of an output schema, though it does not give exact field names or value formats.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded sentence with no filler, and each clause maps to a distinct returned quantity rather than padding. The density is high enough that the enumerated outputs run together, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter deterministic calculator with no output schema, enumerating the returned quantities is the key compensating detail, and the description does that plus the regulatory basis. The remaining gap is that the returned fields and their formats are described in prose rather than named, so an agent knows roughly what comes back but not the exact shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter is fully documented in the schema (YYYY-MM-DD with an example), so the baseline is 3. The description goes further by tying the date to date-sensitive edge cases (January 1 rule, day-before-birthday rule), which tells the agent that near-boundary birth dates produce non-obvious results and should be trusted to the tool rather than adjusted by the caller.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific computation (full retirement age under 20 CFR 404.409) from a specific input (a birth date), and enumerates the derived values it returns (FRA date, earliest-62 month and cut, spouse percent, delayed credits, survivor FRA). It is clear what the tool does, but it never contrasts itself with the overlapping sibling calculate_claiming_age_benefit, so the boundary between 'this gives me the FRA' and 'this gives me my benefit amount' is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the input: supply a birth date, get FRA-related milestones back. There is no explicit statement of when to prefer this tool over calculate_claiming_age_benefit, which also works from claiming ages, nor any note about prerequisites or valid input ranges (e.g., birth years the CFR schedule covers).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_social_security_colaGet Social Security COLAARead-onlyIdempotentInspect
Social Security cost-of-living adjustment (COLA) for a payable year, from the SSA "Cost-of-Living Increase and Other Determinations" notice in the Federal Register. The 2027 COLA is 3.6 percent (effective December 2026, paid January 2027, published 2026-10-26). Also returns the COLA history back to 1996. Without a year it checks the Federal Register API for a newer notice.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year the COLA is first paid (January). Default: the latest, 2027. | |
| history_years | No | How many years of COLA history to include, newest first. Default 10. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds real value beyond that: the upstream source (SSA notice in the Federal Register), the effective/payment date semantics (effective December 2026, paid January 2027), and the fact that omitting the year triggers a live external API check. It does not say what the response looks like or whether the API check can be slow or fail, but with annotations present this is adequate rather than rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three dense, front-loaded sentences with almost no waste. One weakness is that the hardcoded '2027 COLA is 3.6 percent' will become stale and take up space that could have been used for sibling routing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is simple, with two optional parameters and no output schema. The description supplies what the return contains (the rate plus history back to 1996) and the upstream source, which is enough for an agent to call it correctly. It does not say how the values are shaped or what precision or units the history values use, but this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters are already documented in the schema, including defaults (2027, 10 years). The description mostly restates the schema's year semantics and adds only the fallback behavior when year is omitted, plus the 1996 history floor. The baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: it returns the Social Security COLA rate for a payable year, sourced from the SSA Federal Register notice, plus history back to 1996. That is far more specific than the name alone. It never names a sibling, though, so the boundary with calculate_cola_increase (which presumably applies the rate to a benefit amount) must be inferred from the word 'adjustment' versus 'increase'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It describes one concrete calling mode: with no year, it queries the Federal Register API for a newer notice. That is useful behavior, but not guidance. There is no statement of when to choose this over calculate_cola_increase or get_social_security_limits, and no explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_social_security_limitsGet Social Security limits for a yearARead-onlyIdempotentInspect
Social Security program amounts for 2023 to 2027 from the Federal Register notices: maximum taxable earnings (2027: $192,300), retirement earnings test limits (2027: $25,560 and $67,920), earnings per work credit, substantial gainful activity, trial work month, maximum federal SSI and PIA bend points.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year 2023 to 2027. Default 2027. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful behavior context: the data provenance (Federal Register notices) and the exact set of figures returned, which effectively substitutes for the missing output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence, front-loaded with the resource and year span before the field list. Every listed item tells the agent what data is available, so the enumeration earns its place; the inline 2027 figures are slightly wasteful but help ground the scale of the values.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-optional-parameter lookup with no output schema, the description supplies the field inventory that the schema cannot, plus provenance and year coverage. An agent knows exactly what it will get back and for which years; nothing material is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% — the single year parameter already documents the 2023-2027 range, the maximum, and the 2027 default. The description restates the range and anchors it with 2027 example values but adds no new semantics such as fallback behavior for out-of-range years. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (Social Security program amounts) and scope (2023-2027, sourced from Federal Register notices), and the enumerated data items make it clearly a reference-data lookup rather than a calculator, implicitly distinguishing it from the calculate_* siblings. It lacks an explicit verb (nothing says 'Returns'), but the resource is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is the tool for raw statutory figures while the calculate_* and get_*_cola siblings compute derived results, but no sentence states when to use this versus those alternatives or any prerequisite. No exclusions or routing hints are given.
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.
6 tool updates
- First observed
calculate_claiming_age_benefit - First observed
calculate_cola_increase - First observed
calculate_earnings_test - First observed
get_full_retirement_age - First observed
get_social_security_cola - First observed
get_social_security_limits
Related MCP Connectors
401(k), IRA, HSA limits, age 60-63 catch-up, Roth catch-up rule, Social Security COLA, 2025-2027.
US federal 2026 tax brackets, standard deductions, payroll and retirement limits, sourced.
No tax on overtime, tips and senior deductions for 2025-2028 (OBBBA), with IRS caps and phase-outs.
Read-only Social Security COLA data, calculations, history, and official source links.
Related MCP Servers
AlicenseAqualityCmaintenanceCited 2026 and 2027 U.S. financial-planning figures (IRS, SSA, CMS), synthetic household samples, and an AI financial-advice benchmark.8MIT- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to retrieve and calculate official 401(k), 403(b), 457(b), IRA, SIMPLE and HSA limits for 2025–2027, including age-based catch-up rules, Roth catch-up eligibility, and Social Security COLA and wage-base figures, while clearly flagging unpublished limits instead of guessing.MIT
- AlicenseAqualityBmaintenanceEnables calculation of the 2025-2028 federal overtime, tips, and senior deductions — applying IRS caps, MAGI phase-outs, and bracket tables — plus eligibility explanations and estimated federal tax savings.5340 npmMIT
- AlicenseNot gradedqualityCmaintenanceCurrent, source-cited US federal tax constants and freelancer calculators for tax year 2026, including the July 1 mid-year mileage change. Every response carries its IRS/SSA primary source and a last-verified date; refuses rather than guesses.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.