Skip to content
DubaiSetup Index

MCP server

Connect an AI assistant to Dubai Setup Index: 16 read-only tools over UAE free zones, the Dubai mainland route, business activities and setup cost estimates.

Connect

Give your client this URL. It discovers the authorization server from the endpoint's protected-resource metadata, registers itself, and sends you here to sign in and approve. Streamable HTTP; server version 1.0.0.

https://dubaisetupindex.com/api/mcp
  • Claude: Customize → Connectors → Add custom connector, and paste this URL.
  • Claude Code: claude mcp add --transport http dubai-setup-index https://dubaisetupindex.com/api/mcp
  • A stdio-only client: npx mcp-remote https://dubaisetupindex.com/api/mcp
  • A client that takes a JSON config:
{
  "mcpServers": {
    "dubai-setup-index": {
      "type": "http",
      "url": "https://dubaisetupindex.com/api/mcp"
    }
  }
}

Authorization

Every request is authenticated with OAuth 2.1, including initialize, so a client authorizes once when it connects and every tool works from the first call. Dynamic client registration is open: the client registers itself, and you sign in with an emailed link or code and approve one consent screen. No API key is issued.

  • Protected resource metadata: https://dubaisetupindex.com/.well-known/oauth-protected-resource
  • Authorization server metadata: https://dubaisetupindex.com/.well-known/oauth-authorization-server
  • Scope: mcp:read — read-only access to public data.
  • Rate limit: 120 requests per minute per account, reported in RateLimit-* headers.

Tools

Every tool is read-only. Unknown facts come back as unknown, never estimated; estimators refuse configurations they have no evidence for.

ToolWhat it doesArguments
searchFind a UAE free zone, a business activity, a route comparison or a country guide by name or plain words, and get the id to fetch and the typed tool that holds its facts. Start here when you do not know the slug. Every hit links to a page that exists.query: string, 2–80; limit?: integer, 1–20, default 8
fetchRetrieve a full page by a search hit's id or any URL on this site, as markdown: the same rendition the URL itself serves, so a quote from it and from the page cannot differ. Covers every page, including the how-it-works and methodology prose that no typed tool returns.id: string, 1–300
list_free_zonesEvery UAE free zone covered, one summary row each: emirate, regulator, the published no-visa starting price and the lowest published price. Filter by emirate or price to build a shortlist, then call get_free_zone for each. A starting price is the cheapest published package, not a full setup total; unpriced zones show an unknown, never a zero.emirate?: string, 0–40; priced_only?: boolean, default false; max_no_visa_price_aed?: number
get_free_zoneEverything published for one free zone: packages and starting prices by visa count and term, setup steps and timing, required documents, licence and facility types, visa options, renewal, nationality rules, sources and known gaps. Unknown facts are returned as unknown with what was checked — do not fill them in.zone: string, 1–120
get_mainlandThe Dubai mainland (DET) route: official Invest in Dubai licence estimate examples and activity scopes, the preparation process, dated third-party provider research by business type, documents, renewal and known gaps. The licence estimate covers licence fees only — rent, visas, approvals and renewal are separate and not totalled.none
search_activitiesMatch a business description to licensable activities, with which setup lanes list each one (IFZA, Ajman Free Zone, Dubai mainland), whether a third-party approval applies and whether a desk-only setup is possible. Call get_activity for the codes, documents and approvals before relying on one.query: string, 2–80; lane?: "ifza" | "afz" | "ded"; limit?: integer, 1–25, default 10
get_activityOne activity in full: the authority's own description, each lane that lists it with its activity code, licence type, facility and approval requirements and documents, where else it is catalogued, regulation level and the free zone versus mainland guidance. A lane marked not-verified is unverified, not unavailable.activity: string, 1–120
get_comparisonA side-by-side comparison of two or three routes (ifza-vs-ajman, free-zone-vs-mainland, ifza-vs-dubai-mainland, ajman-vs-dubai-mainland): starting prices by visa count, licence and visa timelines, renewal, licence and facility types, remote setup. Each cell comes from the same source as its guide. Mainland is priced by owners, not visas — compare like with like.comparison: string, 1–120
get_country_guideNotes for founders from one country: common motivations, documents to prepare and attest, travel and sequencing, and the activities founders from there often licence. Pair with get_immigration_rules for nationality-specific visa rules.country: string, 1–120
get_immigration_rulesFederal UAE residence-visa rules that name a nationality, plus those that apply to everyone, each with its status (official, zone guidance or reported) and sources. A reported rule is not yet published by ICP and must be confirmed before applying.nationality: string, 2–60
estimate_ifza_setupItemised IFZA formation cost lines for zero, one or two residence visas and a 1, 2, 3 or 5 year licence, from dated portal figures. Returns a priced subtotal, the lines still unresolved and what is excluded. It is a dated reference estimate, not a quote: selectedTotalAed is null whenever any line is unknown, and insurance, premises and activity-specific costs are never included.visas?: array, 0–2, default []; licence_years?: 1 | 2 | 3 | 5, default 1
estimate_ifza_five_yearYear-by-year known IFZA costs for five years from formation at confirmed rates: licence and card renewals, visa renewals at months 24 and 48, and every cost still unknown in each year. The five-year figure is a known-components subtotal, never a full total; a zero year is not a free year.visas?: array, 0–2, default []; licence_years?: 1 | 2 | 3 | 5, default 1
estimate_mainland_licenceThe official Invest in Dubai simulator's licence estimate for one of six activities with a one- or two-owner LLC and expat owners: base fee plus the rent assessment. Licence fees only — rent itself, visas, approvals, VAT treatment and renewal are listed as unresolved, never totalled. For any other activity or legal form, say it is not covered.activity_code: "4690018" | "6201001" | "6820004" | "6920003" | "7020003" | "7320002"; owners: 1 | 2; annual_rent_aed: number, 0–10000000; route?: "normal" | "instant"
get_setup_chooserThe three-question decision tree the site uses to narrow routes (UAE clients, Dubai address, visa count) with where each answer leads. A result is a starting point to investigate, not confirmed eligibility.none
get_methodologyHow every figure is classified, dated and gated, with current coverage counts and the official sources behind them. Read before explaining what a figure means or how current it is.none
whoamiThe authenticated account, the scopes this token carries and the rate limit. Account details only; no setup data.none

Resources

URITypeContents
dsi://skilltext/markdownSkill document. When to reach for this directory, how to call it, and the rules for quoting a figure.
dsi://methodologytext/markdownMethodology. How every figure is classified, dated and gated, as markdown.
dsi://coverageapplication/jsonCoverage. What the directory currently covers: zones, prices, activities and official sources, with dates.
dsi://free-zonesapplication/jsonFree zone index. Every free zone with its emirate and published starting price, as JSON.

Prompts

PromptArgumentsWhat it does
shortlist_free_zonesbusiness, visas?Shortlists free zones for a business: confirms the activity is listed, compares like-for-like starting prices at the same visa count and term, and names every unknown cost before recommending.
free_zone_vs_mainlandbusinessFrames the free zone versus Dubai mainland decision from where clients are, premises needs and visas, and refuses to compare a mainland licence-only estimate against an all-in package as if they were the same thing.
estimate_my_setuproute, visas?Builds a setup estimate from the evidenced estimators only, and lists every unresolved and excluded cost alongside the priced subtotal.
cite_figureurlEmits the citation format this directory publishes for a page.