transita-mcp-server
Server Details
Visa eligibility matcher and immigration intelligence for MCP-compatible AI assistants.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- snenenenenenene/transita-mcp-server
- GitHub Stars
- 0
- Server Listing
- @transita/mcp-server
Available Tools
6 toolstransita_compare_visasCompare visasAInspect
Compare 2-3 visa pathways side-by-side. Returns processing time, cost, validity, PR-pathway, and a delta summary highlighting the fastest, cheapest, and most permanent option.
| Name | Required | Description | Default |
|---|---|---|---|
| visa_ids | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the tool's behavior by listing the return fields and the delta summary. It does not contradict any annotations (none provided) and gives insight into the comparison output, though it doesn't mention edge cases or more detailed behavior. The description provides sufficient transparency for a simple comparison tool.
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 a single, focused sentence that front-loads the core purpose and then specifies the return details. Every phrase earns its place, and there is no redundant or extraneous information.
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 tool with a simple schema and no output schema, the description covers the return value, comparison criteria, and the delta summary. It is largely complete, though it could explicitly mention that single-visa details are handled by a sibling tool for better contextual guidance. Overall, it provides enough information for an agent to use the tool correctly.
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 only parameter, visa_ids, is not explicitly described in the description, leaving it to the agent to infer from the name and context of comparing visa pathways. While the schema provides structural constraints (array of 2-3 strings), the description does not detail how IDs are sourced or formatted. The description partially compensates by implying that the IDs correspond to the visa pathways under comparison.
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 clearly states the tool compares 2-3 visa pathways side-by-side, with a specific verb ('compare') and resource ('visa pathways'). It also details the comparison dimensions (processing time, cost, validity, PR-pathway, delta summary), which distinguishes it from siblings that likely focus on individual visas or country overviews.
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 description implies the intended use case: comparing multiple visa options. It clearly conveys when to use the tool (when comparing 2-3 visas) but does not explicitly mention alternatives or exclusion criteria. The context is clear enough for an agent to select it over single-visa tools like transita_visa_details.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transita_country_overviewCountry overviewAInspect
Get summary data for a destination country: number of visa pathways, EU member status, score dimensions, drawbacks, top cities with rent ranges, and PR/citizenship timelines.
| Name | Required | Description | Default |
|---|---|---|---|
| country_code | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It indicates a read operation through 'Get' and specifies the returned data categories, but it does not disclose any side effects, access requirements, data recency, or behavior on invalid country codes. The transparency is adequate for a simple read tool but lacks depth.
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 a single concise sentence that lists the tool's outputs. Every word contributes meaning, and it avoids redundancy or filler, making it easy to quickly parse.
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 simple single-parameter tool, the description covers the purpose, the input context, and the expected outputs. It does not explain return structures or error handling, but given the absence of an output schema, the listed data items give sufficient expectation. It could be more complete with usage examples, but it is not critically incomplete.
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 only parameter, country_code, has 0% schema description coverage, and the description does not explain its format or accepted values. It only mentions 'destination country', providing a weak link between the parameter and the tool's purpose. The agent is left to infer the correct code format, so the description fails to compensate for the schema's lack of detail.
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 uses the specific verb 'Get' and clearly identifies the resource as 'summary data for a destination country', enumerating concrete data points such as visa pathways, EU status, and PR timelines. This distinguishes it from sibling tools like transita_visa_details or transita_compare_visas, making the tool's purpose unambiguous.
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 description implies usage when a country-level overview is needed, but it does not explicitly state when to prefer this over sibling tools like transita_visa_details or transita_compare_visas. It lacks exclusion criteria or alternative references, leaving the decision to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transita_match_visasMatch visasAInspect
Score a user's profile against every visa pathway Transita supports. Returns the top matches ranked by eligibility, with timeline, cost, and links to official sources. EU citizens automatically surface freedom-of-movement options first.
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | ||
| goal | No | ||
| timeline | No | ||
| education | No | ||
| income_usd | No | ||
| work_field | No | ||
| work_years | No | ||
| citizenship | Yes | ||
| current_country | No | ||
| target_countries | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavior independently. It discloses that results are ranked by eligibility, includes timeline, cost, and official links, and applies a special rule for EU citizens. This goes beyond the schema and gives the agent clear expectations of output and edge-case handling, though it omits details like required fields beyond citizenship (left to the 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?
Two sentences, front-loaded with the core action, and every sentence earns its place: the first defines the operation, the second details output and a notable behavioral nuance. No redundancy.
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 covers the essential return contract (ranked matches with timeline, cost, links) and an EU-specific behavior. However, with 10 parameters and no output schema, it could clarify how optional parameters are used or whether target_countries narrows the search. The absence of any discussion of edge cases (e.g., no matches) leaves minor gaps.
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 0%, so the description should compensate by explaining how profile parameters influence scoring. It only refers to 'user's profile' generically and does not describe any of the 10 parameters, nor how fields like age, income_usd, or target_countries affect matching. The schema itself provides enums but no narrative, leaving the agent undersupplied on parameter usage.
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 clearly states the tool's function: 'Score a user's profile against every visa pathway Transita supports.' This is a specific verb-resource pair with scope, and it distinguishes from siblings like compare_visas or search_by_nationality by emphasizing ranked top matches across all pathways.
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 description implies usage when a user profile needs to be evaluated against all visa options, and notes EU citizens get free-movement options first. However, it does not explicitly state when to prefer this over sibling tools such as compare_visas or provide exclusions, so guidance is implied but not fully articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transita_programme_statusProgramme status (is this visa open now?)AInspect
Check the live intake status of a single visa pathway: whether it is currently open, the last selection round and cutoff score (for round-based programmes like Express Entry, AU SkillSelect, or the US H-1B lottery), what is expected next, and the official source. Call this before recommending a pathway so you never send a user toward a closed or paused programme. Continuous-intake visas return an 'open' status.
| Name | Required | Description | Default |
|---|---|---|---|
| visa_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses key behavioral details: it returns different information for round-based vs continuous-intake programmes, and includes 'official source'. It adds context beyond a simple 'check status' statement, though it does not cover edge cases like invalid IDs.
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 two sentences, front-loaded with the core function, and includes usage advice without redundancy. Every sentence adds value.
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 simple one-parameter tool with no annotations or output schema, the description adequately covers what the tool returns, how it behaves for different programme types, and when to invoke it. It is complete enough for an agent to select and call correctly.
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 schema has only visa_id (string, no description), and schema coverage is 0%. The description references 'a single visa pathway' but does not explain what visa_id contains or where to obtain it. The parameter name is self-explanatory, but the description does not compensate for the lack of schema detail.
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 clearly states the tool's function: 'Check the live intake status of a single visa pathway' and specifies what it returns (open status, last selection round/cutoff, expected next, official source). It distinguishes from siblings like compare or details by focusing on live status for a single pathway.
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?
Explicitly instructs to call it 'before recommending a pathway' to avoid sending users toward closed programmes, and explains behavior for continuous-intake visas. It provides clear usage context but does not name alternative tools or explicitly say when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transita_search_by_nationalitySearch visas by nationalityAInspect
Show top destinations and recommended visa pathways for citizens of a given country. Ideal first stop for the question 'Where should I move?'. Returns 4-6 destinations with the best-fit visa for each, key stats, and FAQ. Falls back gracefully if a slug isn't yet curated.
| Name | Required | Description | Default |
|---|---|---|---|
| nationality | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It provides specifics: 'Returns 4-6 destinations with the best-fit visa for each, key stats, and FAQ' and mentions graceful fallback for uncurated slugs. This gives the agent a clear expectation of the output and behavior in an edge case, which is more than minimally adequate.
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 sentences, each with a distinct purpose: purpose, usage context, and output/edge-case behavior. It is front-loaded with the core action, no filler, and every sentence contributes information.
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 simple one-parameter search tool without an output schema, the description covers the main aspects: what it returns, how it behaves on uncurated data, and when to use it. It could optionally state sorting order or define 'key stats', but these are minor omissions given the tool's simplicity.
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 schema only defines 'nationality' as a string with no description. The tool description compensates by clarifying it means 'citizens of a given country' and references 'slug' input. This adds meaningful semantic context beyond the bare schema, especially given the 0% schema description coverage.
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 clearly states the tool's function: 'Show top destinations and recommended visa pathways for citizens of a given country.' This is a specific verb+resource combination. It also distinguishes itself from sibling tools by positioning this as the 'ideal first stop' for relocation queries, focusing on discovery rather than comparison or details.
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 description gives clear context for when to use this tool: 'Ideal first stop for the question "Where should I move?"' This implies it is for initial exploration. It does not explicitly name alternative tools or cases where another sibling would be preferred, which is why it doesn't reach a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transita_visa_detailsVisa detailsAInspect
Fetch full details for a single visa pathway: eligibility category, processing time, fees, validity, PR timeline, and a free preview of the document checklist (lead time, ancillary cost, first section). The full multi-section checklist is part of Transita's $9 paid action plan.
| Name | Required | Description | Default |
|---|---|---|---|
| visa_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It adds meaningful behavioral context by disclosing that only a 'free preview' of the checklist is returned, while the full multi-section checklist is behind a $9 paid action plan. This prevents incorrect expectations about output completeness.
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?
Two tight sentences front-load the core purpose and then add the key paid-tier caveat. There is no fluff, repetition, or filler. Every sentence earns its place.
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 adequately covers returned data categories and the paid limitation. However, it omits guidance on where visa_id comes from (e.g., a sibling search/match tool) and does not describe any output format or error behavior. For a single-parameter fetch this is acceptable but not fully complete.
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 schema provides only a bare visa_id string with 0% description coverage. The tool description does not explain what visa_id is, what format it takes, or how to obtain it. The phrase 'single visa pathway' weakly implies visa_id identifies a pathway, but no real semantic guidance is provided.
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 opens with a specific verb and resource: 'Fetch full details for a single visa pathway.' It enumerates concrete content (eligibility category, processing time, fees, validity, PR timeline, checklist preview), which clearly distinguishes it from sibling tools like comparison, overview, and search tools.
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 through 'single visa pathway'—an agent can infer this is for a focused lookup on one visa. However, the description does not explicitly say when to prefer it over alternatives such as transita_compare_visas or how to combine it with search/match tools to obtain the visa_id.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user or an account that owns the GitHub organization, then choose Claim with GitHub.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Visa Requirements MCP — passport visa rules for any nationality → destination pair
Aggregated travel MCP — flights, tours, activities, price checks, visas, and more.
Your personal AI travel concierge — flights, hotels, 116M+ POIs, visas, weather & more
US visa bulletin data and CBP border wait times. 3 MCP tools for immigration and travel planning.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that lets AI assistants search the UK Register of Licensed Visa Sponsors (125,000+ companies), enabling queries about company sponsorship, location, visa routes, and ratings.1MIT
- AlicenseNot gradedqualityDmaintenanceMCP Server that gives AI assistants access to comprehensive country data from 250+ countries.1MIT
- AlicenseAqualityCmaintenanceMCP server for US immigration guidance — live Visa Bulletin, priority date checker, and immigration term explanations powered by official government data32MIT
- AlicenseAqualityCmaintenanceEnables AI assistants to evaluate job postings under a UK visa constraint, including sponsor-licence checks with confidence grades, screening for seniority and hard requirements, and role searches that exclude recruitment agencies. It also tracks application history to help avoid duplicate applications.4102MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool targets a distinct query type: comparison, country-level overview, profile matching, live status, nationality-based search, and detailed visa info. Even though visa_details and programme_status both concern a single pathway, their purposes are clearly separated as static details versus live intake status.
All tools share a consistent transita_ prefix and use snake_case, but the post-prefix patterns are mixed: compare_visas and match_visas are verb_noun, while country_overview, programme_status, and visa_details are noun-based. This is a minor inconsistency that does little to impede selection.
Six tools is an appropriate scope for a visa advisory server, covering search, comparison, detail, and status-checking without redundancy. Each tool has a clear role in the user journey from initial exploration to specific pathway evaluation.
The server covers the core advisory workflow: find destinations by nationality, get country overviews, match profiles, compare pathways, fetch details, and check current intake status. A notable minor gap is the absence of a direct 'list all visas for a country' tool, but search_by_nationality and country_overview mitigate this.