Are you the author? Sign in to claim
Visa eligibility matcher + immigration intelligence MCP server for Claude, Cursor, Cline, and any MCP-compatible AI assi
Immigration eligibility intelligence for Claude Desktop, Cursor, Cline, Continue, Zed, and any MCP-compatible AI assistant.
Transita figures out which country you should move to — and runs the whole relocation. This MCP server exposes the same matcher, country comparisons, visa checklists, and nationality guides that power transita.app, so you can ask any AI assistant "where should I move?" and get a real, sourced answer.
The server is a stateless shim. It calls the public Transita JSON API, so visa data updates the moment transita.app redeploys. No data lives in this package.
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"transita": {
"command": "npx",
"args": ["-y", "@transita/mcp-server"]
}
}
}
Restart Claude Desktop. The Transita tools should appear in the input box.
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"transita": {
"command": "npx",
"args": ["-y", "@transita/mcp-server"]
}
}
}
Open the Cline MCP settings panel and add:
{
"transita": {
"command": "npx",
"args": ["-y", "@transita/mcp-server"]
}
}
Use the same pattern — command: npx, args: ["-y", "@transita/mcp-server"].
| Tool | What it does |
|---|---|
transita_match_visas | Score a profile (citizenship, education, work years, income, goal, timeline) against every visa Transita supports. Returns top matches ranked by eligibility. |
transita_visa_details | Full details for a single visa: eligibility, processing time, fees, validity, PR path, and a free preview of the document checklist. |
transita_compare_visas | Side-by-side comparison of 2-3 visa pathways with deltas (fastest processing, lowest cost, longest validity, PR path). |
transita_country_overview | Country-level summary: number of visa pathways, EU membership, score dimensions, drawbacks, top cities with rent ranges, PR/citizenship timelines. |
transita_search_by_nationality | Curated top destinations and recommended visas for citizens of a given country. Best first stop for "where should I move?" |
transita_programme_status | Live intake status for round-based programmes: whether the programme is open, the date of the last round, and its cutoff score. |
transita://visas — full active visa cataloguetransita://countries — destination countries + visa countstransita://nationalities — index of curated nationality landing pagestransita://nationality/<slug> — single nationality page (e.g. transita://nationality/indian)find-my-visa — guided eligibility quiz then transita_match_visascompare-options — drives transita_compare_visas with a chosen set of idswhere-should-i-move — open exploration starting from nationalityOnce installed, ask your AI assistant questions like:
The model will pick the right Transita tool, call it, and synthesise the answer. Visa data is verified by the Transita team monthly; every match links back to the official government source.
| Env var | Default | Purpose |
|---|---|---|
TRANSITA_API_URL | https://transita.app | Override the API base URL (useful for local dev against http://localhost:3000). |
TRANSITA_MCP_USER_AGENT | transita-mcp-server/0.1.0 | Custom UA string for analytics. |
Everything this MCP server exposes is free. The full document checklist + 30-day action plan is part of Transita's $9 paid plan and lives at https://transita.app/visa/<id>. The MCP server's tools include a checklist preview (lead time, ancillary cost, first section) and link to the full plan.
git clone https://github.com/snenenenenenene/transita.git
cd transita/packages/mcp-server
bun install
bun run build
# Point at a local Transita dev server
TRANSITA_API_URL=http://localhost:3000 node dist/cli.js
To smoke-test from the command line:
{
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"smoke","version":"0.0"}}}'
echo '{"jsonrpc":"2.0","method":"notifications/initialized"}'
echo '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
} | node dist/cli.js
Two-step flow. The MCP Registry stores metadata; npm hosts the artifact.
# 1. Publish to npm (must be on a fresh version; bump in package.json first)
cd packages/mcp-server
bun run build
npm publish --access public
# 2. Publish metadata to the MCP Registry
# Install mcp-publisher once: brew install mcp-publisher
# server.json is committed alongside this README.
mcp-publisher login github
mcp-publisher publish
After publishing, the server is listed at https://registry.modelcontextprotocol.io and discoverable inside MCP-compatible clients.
MIT — see LICENSE.
Run analytics queries on ClickHouse — explore schemas, execute SQL, fetch results
Run Claude Code as an MCP server so any agent can delegate coding tasks to it
Browser automation using accessibility snapshots instead of screenshots
Google's universal MCP server supporting PostgreSQL, MySQL, MongoDB, Redis, and 10+ databases