logologo
Hunt UK Visa Sponsors
Jobs
logologoHunt UK Visa Sponsors

Find jobs from UK licensed visa sponsors — Companies House verified, updated daily.

About

How does it workContact Us

Find Work

JobsJobs by RoleLicensed SponsorsVisa TypesSponsor StatisticsInternational Student

Resources

BlogGlossaryOccupation EligibilityIncome Tax CalculatorILR TrackerDeveloper API & MCP

Content on this site is for general information only and does not constitute legal advice. Always consult a regulated UK immigration solicitor for advice specific to your situation.

Copyright © 2026. All rights reserved.

Developer

MCP Tool Reference

Hand visa-sponsor data to Claude, Cursor, or any MCP-compatible AI client and let it do the searching for you. 17 tools covering everything you can do over REST, plus your own bookmarks and saved alerts. The API key and credit budget are shared with REST, so you can mix the two however you want. Set up your client • View the REST API reference

On this page

  • Quick Start
  • Authentication & Credits
  • Search Tools
  • Reference Tools
  • Company Tools
  • Job Tools
  • User Tools
  • Errors

On this page

Quick StartAuthentication & CreditsSearch ToolsReference ToolsCompany ToolsJob ToolsUser ToolsErrors

Quick Start

1

Get your API key

Create an API key from the Developer Dashboard. API access is included in Pro and Agency plans. The same key works for both REST and MCP.

2

Connect your MCP client

The Developer Dashboard has copy-paste config for Claude Desktop, Claude Code, and Cursor. Most people are done in under a minute. Clients that speak Streamable-HTTP (Claude Code, Cursor) point straight at https://huntukvisasponsors.com/mcp. Claude Desktop only does stdio, so its config goes through mcp-remote as a bridge — that's why you'll see it in the snippet.

3

Call a tool

Once connected, your client picks up all 17 tools automatically. Try something like “find me UK companies sponsoring data engineer roles, then show me which ones have actually issued visas in the last year.” The AI will chain search_jobs, get_company, and get_company_visa_stats by itself. Every call costs credits from the same pool you use for REST.

Authentication & Credits

Same key, same budget. An MCP call to search_jobs costs the same as GET /public/v1/search/jobs over REST. Tier budgets, the 429 response, and the X-RateLimit-* headers all live in the REST rate-limiting section. Your current balance is on the Developer Dashboard whenever you need it.

Search Tools

TOOLsearch_jobs
5 credits

Search for UK visa sponsorship job listings. Returns jobs from licensed sponsor companies scraped from LinkedIn, ranked by relevance or recency.

NameTypeRequiredDescription
cursorstringnoPagination cursor from a previous response's endCursor
include_recruitment_agencybooleannoInclude jobs from recruitment agencies. Default false.
keywordstringnoFree-text search query (e.g. 'software engineer', 'data scientist London')
locationstring[]noFilter by location names (e.g. ['London', 'Manchester'])
min_sponsor_scorenumbernoMinimum sponsor score (0-100). Higher means stronger sponsorship signal.
occupation_codestring[]noFilter by SOC occupation codes (e.g. ['2137', '2134'])
page_sizenumbernoNumber of results per page (1-50, default 10)
posted_withinenumnoOnly return jobs posted within this time window
visa_typestringnoFilter by visa/licence type slug (e.g. 'skilled-worker')
json
{
  "name": "search_jobs",
  "arguments": {
    "cursor": "example",
    "include_recruitment_agency": false
  }
}
TOOLsearch_companies
5 credits

Search for UK companies that are licensed visa sponsors. Returns companies ranked by sponsor score.

NameTypeRequiredDescription
company_sizestring[]noFilter by company size buckets. Valid values: '1-50', '51-200', '201-1000', '1001+'
cursorstringnoPagination cursor from a previous response's endCursor
include_recruitment_agencybooleannoInclude recruitment agencies. Default false.
industriesstring[]noFilter by SIC section industry names
locationstring[]noFilter by company city/location names
min_recent_visa_countnumbernoMinimum number of recent visa issuances
page_sizenumbernoNumber of results per page (1-50, default 10)
querystringnoFree-text search query (company name, keyword, etc.)
visa_typestring[]noFilter by visa/licence type slugs
json
{
  "name": "search_companies",
  "arguments": {
    "company_size": [
      "example"
    ],
    "cursor": "example"
  }
}
TOOLsearch_locations
1 credit

Search for job locations by name. Returns locations with active job counts.

NameTypeRequiredDescription
limitnumbernoMaximum number of results (1-100, default 10)
querystringyesLocation name to search for (e.g. 'London', 'Manchester')
json
{
  "name": "search_locations",
  "arguments": {
    "query": "example"
  }
}

Reference Tools

TOOLget_job_facets
1 credit

Get available filter facets for job search, including location counts, company sizes, industries, and posted-within options.

json
{
  "name": "get_job_facets",
  "arguments": {}
}
TOOLget_company_facets
1 credit

Get available filter facets for company search, including location counts, company sizes, industries, and visa types.

json
{
  "name": "get_company_facets",
  "arguments": {}
}
TOOLget_visa_types
1 credit

List all UK visa/licence types with the number of sponsor companies for each type.

json
{
  "name": "get_visa_types",
  "arguments": {}
}
TOOLget_sic_sections
1 credit

List all SIC (Standard Industrial Classification) sections. Useful for filtering companies by industry.

json
{
  "name": "get_sic_sections",
  "arguments": {}
}
TOOLget_platform_stats
1 credit

Get aggregate platform statistics: total company count, job counts, and last company sync time.

json
{
  "name": "get_platform_stats",
  "arguments": {}
}

Company Tools

TOOLget_company
2 credits

Get detailed information about a specific company including address, visa types, SIC codes, job count, and sponsor score.

NameTypeRequiredDescription
id_or_slugstringyesCompany ID (CUID) or URL slug
json
{
  "name": "get_company",
  "arguments": {
    "id_or_slug": "example"
  }
}
TOOLget_company_jobs
5 credits

List job postings from a specific company and its related entities (canonical group).

NameTypeRequiredDescription
cursorstringnoPagination cursor from a previous response's endCursor
id_or_slugstringyesCompany ID (CUID) or URL slug
page_sizenumbernoNumber of results per page (1-100, default 20)
json
{
  "name": "get_company_jobs",
  "arguments": {
    "id_or_slug": "example"
  }
}
TOOLget_company_visa_stats
3 credits

Get visa issuance statistics (trends) for a specific company. Shows historical visa sponsorship counts by period.

NameTypeRequiredDescription
id_or_slugstringyesCompany ID (CUID) or URL slug
json
{
  "name": "get_company_visa_stats",
  "arguments": {
    "id_or_slug": "example"
  }
}
TOOLget_related_companies
3 credits

Get companies related to a given company (alternate sponsor licence listings under the same canonical entity).

NameTypeRequiredDescription
id_or_slugstringyesCompany ID (CUID) or URL slug
json
{
  "name": "get_related_companies",
  "arguments": {
    "id_or_slug": "example"
  }
}

Job Tools

TOOLget_job
2 credits

Get detailed information about a specific job posting including full description, company info, and sponsor score.

NameTypeRequiredDescription
id_or_slugstringyesJob ID (CUID) or URL slug
json
{
  "name": "get_job",
  "arguments": {
    "id_or_slug": "example"
  }
}

User Tools

TOOLlist_bookmarked_jobs
1 credit

List the authenticated user's bookmarked jobs. Returns full job details for each bookmark.

NameTypeRequiredDescription
limitnumbernoMaximum number of results (1-100, default 20)
offsetnumbernoNumber of results to skip for pagination (default 0)
json
{
  "name": "list_bookmarked_jobs",
  "arguments": {
    "limit": 10,
    "offset": 10
  }
}
TOOLlist_bookmarked_companies
1 credit

List the authenticated user's bookmarked companies. Returns company details for each bookmark.

NameTypeRequiredDescription
limitnumbernoMaximum number of results (1-100, default 20)
offsetnumbernoNumber of results to skip for pagination (default 0)
json
{
  "name": "list_bookmarked_companies",
  "arguments": {
    "limit": 10,
    "offset": 10
  }
}
TOOLlist_job_alerts
1 credit

List the authenticated user's saved job alerts with their filter criteria and delivery frequency.

NameTypeRequiredDescription
limitnumbernoMaximum number of results (1-100, default 20)
offsetnumbernoNumber of results to skip for pagination (default 0)
json
{
  "name": "list_job_alerts",
  "arguments": {
    "limit": 10,
    "offset": 10
  }
}
TOOLlist_applied_jobs
1 credit

List the jobs the authenticated user has marked as applied, ordered by most recent first.

NameTypeRequiredDescription
limitnumbernoMaximum number of results (1-100, default 20)
offsetnumbernoNumber of results to skip for pagination (default 0)
json
{
  "name": "list_applied_jobs",
  "arguments": {
    "limit": 10,
    "offset": 10
  }
}

Errors

When a tool call fails, the MCP server returns a result with isError: true and a plain-English message. Your client passes that straight to the model, which usually means the AI fixes the bad argument and tries again without you noticing.

Running out of credits is the same event you'd hit on REST. Same monthly budget, same reset on the 1st. The error reads rate limit exceeded. If you keep hitting it, you probably want a bigger plan; upgrade on the Developer Dashboard.