GoThere Citizenship by Descent
Check Irish (FBR) and Canadian (Bill C-3) citizenship by descent with deterministic rules.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"citizenship": {
"url": "https://getgothere.app/mcp"
}
}
}Puntos de conexión remotos
https://getgothere.app/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (3)
🟢list_pathways
List the citizenship-by-descent pathways this server can evaluate. Call this before check_descent_eligibility if you are unsure whether a country is covered. Countries marked 'planned' have no rules implemented — do not guess an answer for them.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "list_pathwaysArguments"
}Esquema de salida
{
"type": "object",
"properties": {
"result": {
"items": {
"$ref": "#/$defs/PathwayInfo"
},
"title": "Result",
"type": "array"
}
},
"required": [
"result"
],
"$defs": {
"PathwayInfo": {
"properties": {
"country_code": {
"title": "Country Code",
"type": "string"
},
"country_name": {
"title": "Country Name",
"type": "string"
},
"pathway_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Pathway Id"
},
"status": {
"description": "'supported' or 'planned'",
"title": "Status",
"type": "string"
},
"summary": {
"title": "Summary",
"type": "string"
}
},
"required": [
"country_code",
"country_name",
"status",
"summary"
],
"title": "PathwayInfo",
"type": "object"
}
},
"title": "list_pathwaysOutput"
}🟢check_descent_eligibility(country, line, as_of)
Check whether a person qualifies for citizenship by descent. Give the user's direct ancestral line, one entry per generation, starting with relation='self'. Every generation between the user and the ancestor must be present even if little is known about them, because descent passes generation by generation and a gap changes the answer. Ask for exact dates where you can. Year-only input is accepted but the result will carry a caveat, and for Ireland a registration and a birth in the same year cannot be resolved at all. Args: country: ISO 3166-1 alpha-2, lowercase. Currently 'ie' or 'ca'. line: The direct line, from the user upward. as_of: Evaluation date. Defaults to today. Rules with commencement dates (Canada's Bill C-3) depend on it.
Esquema de entrada
{
"type": "object",
"properties": {
"country": {
"title": "Country",
"type": "string"
},
"line": {
"items": {
"$ref": "#/$defs/LineMember"
},
"title": "Line",
"type": "array"
},
"as_of": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "As Of"
}
},
"required": [
"country",
"line"
],
"$defs": {
"LineMember": {
"description": "One person on the user's direct ancestral line.",
"properties": {
"relation": {
"description": "Where this person sits on your direct line. Use exactly one 'self'.",
"enum": [
"self",
"parent",
"grandparent",
"great_grandparent"
],
"title": "Relation",
"type": "string"
},
"birth_country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "ISO 3166-1 alpha-2 country of birth, e.g. 'IE', 'CA', 'US'. For Northern Ireland use 'IE' — Irish nationality law counts all 32 counties.",
"title": "Birth Country"
},
"birth_place_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Free-text place of birth, e.g. 'Cork, Ireland'.",
"title": "Birth Place Label"
},
"birth_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Year of birth if the exact date is unknown.",
"title": "Birth Year"
},
"birth_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exact date of birth if known. Beats birth_year.",
"title": "Birth Date"
},
"naturalized_country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "ISO 3166-1 alpha-2 country where this person naturalized, if any.",
"title": "Naturalized Country"
},
"naturalized_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Naturalized Year"
},
"citizenship_registered_country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Country of a formal citizenship registration, e.g. 'IE' for an Irish Foreign Births Register entry. This is what carries a claim down a generation.",
"title": "Citizenship Registered Country"
},
"citizenship_registered_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Citizenship Registered Year"
},
"citizenship_registered_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Citizenship Registered Date"
},
"days_in_country": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Days of physical presence in the ancestral country. Canada's Bill C-3 substantial-connection test needs this; other pathways ignore it.",
"title": "Days In Country"
}
},
"required": [
"relation"
],
"title": "LineMember",
"type": "object"
}
},
"title": "check_descent_eligibilityArguments"
}Esquema de salida
{
"type": "object",
"properties": {
"country_code": {
"title": "Country Code",
"type": "string"
},
"pathway_id": {
"title": "Pathway Id",
"type": "string"
},
"confidence": {
"description": "green, yellow, or red",
"title": "Confidence",
"type": "string"
},
"verdict": {
"description": "One-line plain reading of the confidence band.",
"title": "Verdict",
"type": "string"
},
"rationale": {
"title": "Rationale",
"type": "string"
},
"supporting_facts": {
"items": {
"type": "string"
},
"title": "Supporting Facts",
"type": "array"
},
"missing": {
"items": {
"type": "string"
},
"title": "Missing",
"type": "array"
},
"blockers": {
"items": {
"type": "string"
},
"title": "Blockers",
"type": "array"
},
"next_action": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Next Action"
},
"caveats": {
"description": "Approximations and unresolvable ambiguities in the input. Relay these.",
"items": {
"type": "string"
},
"title": "Caveats",
"type": "array"
},
"rules_verified_as_of": {
"title": "Rules Verified As Of",
"type": "string"
},
"disclaimer": {
"title": "Disclaimer",
"type": "string"
},
"learn_more": {
"title": "Learn More",
"type": "string"
}
},
"required": [
"country_code",
"pathway_id",
"confidence",
"verdict",
"rationale",
"rules_verified_as_of",
"disclaimer",
"learn_more"
],
"description": "One pathway verdict, plus everything needed to say it honestly.",
"title": "DescentResult"
}🟢get_pathway_requirements(country)
Documents, cost, and processing time for a supported descent pathway. Use after check_descent_eligibility returns green or yellow, when the user asks what they actually have to gather.
Esquema de entrada
{
"type": "object",
"properties": {
"country": {
"title": "Country",
"type": "string"
}
},
"required": [
"country"
],
"title": "get_pathway_requirementsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "get_pathway_requirementsDictOutput"
}Comunidad
Evidencia