Skip to content

DEMO SITE. This is a mock government entity for demonstrations. It is not a real authority, and no application here is real.

Developers

The whole catalogue is available as a JSON API, ready for an MCP server or any other client. Add ?lang=ar for Arabic.

MethodPathWhat it does
GET/api/entityThe entity: name, contact, news
GET/api/categoriesService categories
GET/api/services?q=&category=&audience=&lang=List or search services
GET/api/services/{id}One service, with its application form
POST/api/applicationsSubmit a mock application as the signed-in person (bearer token)
GET/api/applications/{reference}Track one of your applications (bearer token)
GET/api/applicationsYour applications (bearer token)
POST/api/applications/{reference}/advanceMove one of your applications to its next status (demo, bearer token)
GET/api/openapi.jsonOpenAPI 3.1 description of all of the above

POST /api/applications

{
  "serviceId": "event-permit",
  "answers": {
    "eventName": "Neighbourhood market",
    "startDate": "2026-12-05",
    "days": 2,
    "attendance": 300,
    "venue": "Community park"
  }
}

/api/openapi.json

MCP server

The same services and applications are available to AI assistants as an MCP server (Streamable HTTP). Add this address as a custom connector in Claude; it asks you to sign in:

https://test.autowork.ae/mcp
ToolWhat it does
search_servicesFind Demo Services Authority services by words in English or Arabic, optionally by category or audience. An empty query lists every service.
get_serviceOne service in full: description, who can apply, documents, steps, fee, time, channels, FAQs, and the form fields submit_application needs.
list_categoriesThe service categories, for filtering search_services.
get_entity_infoThe Demo Services Authority itself: name, contact details, working hours and news.
get_my_profileThe person signed in to the portal: name, email, mobile and how they signed in (UAE PASS or the demo sign-in). Applications are made in their name.
submit_applicationSubmit a mock application for a service, in the signed-in person's name. answers needs one value per field in the service's form (see get_service). mobile is only needed when the profile has none. Returns the reference number, or the fields to correct.
track_applicationThe status and history of one of the signed-in person's applications, by its reference number. In this demo an application moves to review after a minute and is decided a few minutes later.
list_my_applicationsEvery application the signed-in person has made, newest first.
advance_applicationMove one of the signed-in person's applications to its next status now, standing in for a staff decision so a demo need not wait.

In Claude Code, add it with this command. Either way the assistant asks you to sign in to the portal first.

claude mcp add --transport http demo-services-authority https://test.autowork.ae/mcp