Search / ai.pensionhunter/pensionhunter
PensionHunter
R0· no sign-inCross-border pension facts: country coverage, sourced rules, dated deadlines and employer lookups.
v1.12.0 · active · repository · website · descriptor JSON · versions
Search / ai.pensionhunter/pensionhunter
R0· no sign-inCross-border pension facts: country coverage, sourced rules, dated deadlines and employer lookups.
v1.12.0 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"pensionhunter": {
"type": "http",
"url": "https://mcp.pensionhunter.ai"
}
}
}claude mcp add --transport http pensionhunter https://mcp.pensionhunter.ai[mcp_servers.pensionhunter]
url = "https://mcp.pensionhunter.ai"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"pensionhunter": {
"type": "remote",
"url": "https://mcp.pensionhunter.ai",
"enabled": true
}
}
}{
"mcpServers": {
"pensionhunter": {
"type": "http",
"url": "https://mcp.pensionhunter.ai"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=pensionhunter&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLnBlbnNpb25odW50ZXIuYWkifQ%3D%3D"
}{
"servers": {
"pensionhunter": {
"type": "http",
"url": "https://mcp.pensionhunter.ai"
}
}
}{
"mcpServers": {
"pensionhunter": {
"httpUrl": "https://mcp.pensionhunter.ai"
}
}
}extensions:
"pensionhunter":
enabled: true
name: "pensionhunter"
type: streamable_http
uri: "https://mcp.pensionhunter.ai"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations11 of 11 tools declare readOnlyHint or destructiveHinttools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHinttools.token_costabout 3,951 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes63 tool changes in 30 daysstability.rug_pull12 tools kept their name but changed most of their description in 30 days; review before trusting themdeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageauthority_answerchangedinput schemaresolve_employerchangedinput schemacheck_work_historychangedinput schemacountry_pension_factschangedinput schemagpfr_fund_countchangeddescription, input schema, output schema, annotationsFor fund-side agents: how many confirmed, plausible people are registered for a pension fund, shown from 10 upwards, otherwise "fewer than 10". An aggregate only: no registrant is ever listed or identifiable.
For fund-side agents: how many confirmed people are registered for a pension fund, shown from 10 upwards, otherwise fewer than 10. An aggregate only.
gpfr_statuschangeddescription, input schema, output schema, annotationsmeaning changedThe status of a GPFR registration. Call it with the reference from gpfr_register: we email a one-time code to the registered address, and the answer is the same whether the reference exists or not. Call again with the reference and the code the person reads out: the answer is one of pending_email_confirmation, registered, possible_match_awaiting_your_yes or confirmed_by_fund. Nothing else is returned. The yes to a fund is never given here.
The status of a GPFR registration. Without a code it emails a one-time code to the registered address, with the code it returns one status word. At most 3 emails a day per address.
gpfr_registerchangeddescription, input schema, output schema, annotationsmeaning changedRegisters a person in GPFR. First show the person the consent sentence from gpfr_info (consent.text), word for word, in their language, and ask whether they agree. Call this only after they say yes, with consent.consent_text_version equal to the consent.version you showed and person_said_yes: true. Send their email, full name, date of birth, work periods (country, years, optional employer and fund), optional earlier names and national number, and the consent object {consent_text_version, person_said_yes: true, timestamp, client: {name, version}}. Without the consent object, without the yes, or with a version we did not issue, the call is refused and nothing is stored. Name, earlier names, date of birth, national number and employer names reach our server as text; we turn them into codes on receipt and keep only the codes, never the text; nothing is logged or returned. The registration stays pending until the person clicks the link in the one confirmation email we send. You never give the second yes: sharing with a fund is agreed only through the link in our match email. The result is a status and a reference, never a personal detail.
Registers a person in GPFR after they said yes to the consent sentence from gpfr_info, shown word for word. It sends one confirmation email and the registration stays pending until they click its link. At most 3 emails a day per address.
gpfr_infochangeddescription, input schema, output schema, annotationsmeaning changedWhat GPFR, the Global Pension Finding Register is, in the caller's language: a free register where people who worked abroad add themselves once and, as pension funds join, they check it for former members they cannot reach. Free for people; funds and trustees pay per confirmed match. Nothing is shared unless the person and the fund both say yes. Returns the register page in that language, the consent text and its version (show it to the person before gpfr_register), and, with a country, the pension fund pages we publish for it. Read only.
What GPFR, the Global Pension Finding Register, is, in the caller's language, with the register page, the consent text and its version and, with a country, our fund pages. Show the consent text to the person before gpfr_register. Read only.
create_order_linkchangeddescription, input schema, output schema, annotationsmeaning changedReturns a link to our order page, with the report and the countries the person chose filled in, and the fee from our price config. The order page leads to payment: a Stripe checkout is opened there only when the person chooses to pay, never by this call. Call it when the person asks to order or asks what an order costs. Send only the countries and the tier, never a name, email address or any other personal detail. Prices: Country Pension Identification Report $99 per country, one report covering every country you tick; Enhanced Pension Identification Report $199 for one country; Global Pension Identification Report $299 in one report, best from 3 countries. The Country report: Identification only: we name who holds each pension in every country you tick, with the sourced contact route. The Enhanced report: For one country: every fund identified, a complete, ready-to-send information request for each one, and our team of experts with you until the end, through every reply. The Global report: For every country you worked in, in one report: every fund identified, a complete, ready-to-send information request for each one, and our team of experts with you until the end, through every reply. You send each request to the pension body yourself; we never contact a fund for you. Only countries we cover can be ordered.
Returns our order page with the report and countries filled in. Fees: Country $99 per country, Enhanced $199 for one country, Global $299. Payment opens only when the person chooses to pay there, so send only countries and the tier, never personal details.
deadline_checkchangeddescription, input schema, output schema, annotationsmeaning changedFor a country the person left, and the date they left or, where the clock runs from a death, the date of death: the date our deadline register's rule gives, by adding the period stated in the register row to that date. The free official route comes first, with the official source page, the verbatim quote and the date we read it. Rows whose start event is not stated, or is not the date given, are returned as rules without a date. Send only the country and the date; nothing is stored. Identification only: we do not advise, and the official body decides.
The date a departure deadline runs out, from our deadline register and the date the person left or died, with the official source and read date. Where the start event depends on the person's circumstances, the date is an estimate and says what to confirm. Nothing is stored.
Showing the latest 10. Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +dns-namespace +website +reachable +uptime-100% +updated-3d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://mcp.pensionhunter.ai streamable-http | none | yes | 100% | 944 ms | 2025-11-25 | 2026-10-20 |
authority_answerread-only | What a national pension institution told us in writing, as published on our answers page, with the institution, the date of the reply and the link. The question is free text, matched to the questions we hold answers to. |
check_work_historyread-only | For each country in a work history: whether a pension is likely to exist and why, the official free routes first, what is hard from abroad and any dated obligation that applies. Years may be exact, rough or unknown. |
country_pension_factsread-only | One country's facts, the official free routes first, then what is hard from abroad by scheme and process, what the money is worth and dated obligations. Every fact carries its source and read date. Pass question or pensionType to get one kind of pension. |
create_order_link | Returns our order page with the report and countries filled in. Fees: Country $99 per country, Enhanced $199 for one country, Global $299. Payment opens only when the person chooses to pay there, so send only countries and the tier, never personal details. |
deadline_checkread-only | The date a departure deadline runs out, from our deadline register and the date the person left or died, with the official source and read date. Where the start event depends on the person's circumstances, the date is an estimate and says what to confirm. Nothing is stored. |
gpfr_fund_countread-only | For fund-side agents: how many confirmed people are registered for a pension fund, shown from 10 upwards, otherwise fewer than 10. An aggregate only. |
gpfr_inforead-only | What GPFR, the Global Pension Finding Register, is, in the caller's language, with the register page, the consent text and its version and, with a country, our fund pages. Show the consent text to the person before gpfr_register. Read only. |
gpfr_register | Registers a person in GPFR after they said yes to the consent sentence from gpfr_info, shown word for word. It sends one confirmation email and the registration stays pending until they click its link. At most 3 emails a day per address. |
gpfr_status | The status of a GPFR registration. Without a code it emails a one-time code to the registered address, with the code it returns one status word. At most 3 emails a day per address. |
list_covered_countriesread-only | The countries we research, each with its ISO code and one sourced line, and the mapped countries with the institution that pays their old age pension. |
resolve_employerread-only | Places an employer name in a country and lists the employers we hold that it may mean, each with a confidence from 0 to 1. For employers we researched it adds what the employer became and its workplace pension plan, each fact with source and read date. Legal entities only. |
Schemas: list_tools.
{
"name": "ai.pensionhunter/pensionhunter",
"title": "PensionHunter",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://mcp.pensionhunter.ai",
"type": "streamable-http"
}
],
"version": "1.12.0",
"repository": {
"url": "https://github.com/PensionHunter/pensionhunter-claude-plugin",
"source": "github"
},
"websiteUrl": "https://pensionhunter.ai/mcp",
"description": "Cross-border pension facts: country coverage, sourced rules, dated deadlines and employer lookups."
}