NDIS Provider Review Directory
Find Australian NDIS providers by service and location, with public profiles and links.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"find-an-ndis-provider": {
"url": "https://ndisprovider.review/mcp"
}
}
}Remote endpoints
https://ndisprovider.review/mcpstreamable-httpWhat it can do
Tool inventory
Tools (3)
🟢list_ndis_services
Use this when mapping a requested NDIS support to directory service categories before searching. Returns category IDs, names, synonyms and source links. Therapy services is a broad category, not proof that a provider offers a specific therapy. Do not use for NDIS billing item codes or funding advice.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"services": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"synonyms": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"type": "string",
"format": "uri"
}
},
"required": [
"id",
"name",
"slug",
"synonyms",
"url"
],
"additionalProperties": false
}
},
"source_url": {
"type": "string",
"format": "uri"
}
},
"required": [
"services",
"source_url"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢search_ndis_providers(query, service_ids, state, city, suburb, ...)
Use this when someone wants to find or compare Australian NDIS providers by support category, state, city, suburb, postcode or name. Returns up to 20 public listings per page, registration status, available review data and citation URLs, ordered by name. Ask for service or location if missing. Do not use for diagnosis, funding eligibility, emergency help, booking or sending enquiries.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Provider name, ABN, or postcode, e.g. 3000. Use service_ids for service categories.",
"type": "string",
"minLength": 1,
"maxLength": 160
},
"service_ids": {
"description": "Directory category IDs returned by list_ndis_services. Multiple IDs require all categories; these are not NDIS billing item codes.",
"maxItems": 8,
"type": "array",
"items": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"state": {
"description": "Australian state or territory abbreviation.",
"type": "string",
"enum": [
"NSW",
"VIC",
"QLD",
"WA",
"SA",
"TAS",
"ACT",
"NT"
]
},
"city": {
"description": "City name, e.g. Melbourne. Matches directory outlet locations, not a distance radius.",
"type": "string",
"minLength": 1,
"maxLength": 80
},
"suburb": {
"description": "Suburb name, e.g. Richmond; specify state to disambiguate.",
"type": "string",
"minLength": 1,
"maxLength": 80
},
"registered_only": {
"default": true,
"description": "Defaults to NDIS registered listings. False includes other directory registration statuses.",
"type": "boolean"
},
"accepting_only": {
"default": false,
"description": "Only claimed listings reporting they accept participants; not a live vacancy guarantee.",
"type": "boolean"
},
"language": {
"description": "Exact language label, e.g. Arabic. Missing language data does not imply the service is unavailable.",
"type": "string",
"minLength": 1,
"maxLength": 80
},
"page": {
"default": 1,
"description": "Page of up to 20 matches. Use next_page from the last response.",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"providers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"registration_status": {
"type": "string"
},
"registration_group_ids": {
"type": "array",
"items": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"claimed_listing": {
"type": "boolean"
},
"featured_placement": {
"type": "boolean"
},
"accepting_new_participants": {
"type": "string",
"enum": [
"yes",
"no",
"unknown"
]
},
"rating": {
"type": [
"number",
"null"
]
},
"review_count": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"locations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"outlet_name": {
"type": "string"
},
"suburb": {
"type": [
"string",
"null"
]
},
"city": {
"type": [
"string",
"null"
]
},
"state": {
"type": [
"string",
"null"
]
},
"postcode": {
"type": [
"string",
"null"
]
},
"address": {
"type": [
"string",
"null"
]
},
"phone": {
"type": [
"string",
"null"
]
}
},
"required": [
"outlet_name"
],
"additionalProperties": false
}
},
"description": {
"type": [
"string",
"null"
]
},
"abn": {
"type": [
"string",
"null"
]
},
"website": {
"anyOf": [
{
"type": "string",
"format": "uri"
},
{
"type": "null"
}
]
},
"phone": {
"type": [
"string",
"null"
]
},
"languages": {
"type": "array",
"items": {
"type": "string"
}
},
"service_areas": {
"type": "array",
"items": {
"type": "string"
}
},
"record_updated_at": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"title",
"url",
"registration_status",
"registration_group_ids",
"claimed_listing",
"featured_placement",
"accepting_new_participants",
"rating",
"review_count",
"locations",
"description",
"abn",
"website",
"phone",
"languages",
"service_areas",
"record_updated_at"
],
"additionalProperties": false
}
},
"total": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"total_pages": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"next_page": {
"anyOf": [
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"source_url": {
"type": "string",
"format": "uri"
},
"retrieved_at": {
"type": "string"
},
"limitations": {
"type": "string"
}
},
"required": [
"providers",
"total",
"page",
"total_pages",
"next_page",
"source_url",
"retrieved_at",
"limitations"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_ndis_provider(id)
Use this to read a public provider profile after search, using its returned slug ID. Returns available contact details, broad service category IDs, locations, update timestamps and a citation URL. Missing data is unknown. Do not treat registration status as a live official verification or a claimed profile as accreditation. Cannot book or contact providers.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
"description": "Exact provider slug ID returned by search_ndis_providers, e.g. 101-physio. Never supply a URL."
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"provider": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"registration_status": {
"type": "string"
},
"registration_group_ids": {
"type": "array",
"items": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"claimed_listing": {
"type": "boolean"
},
"featured_placement": {
"type": "boolean"
},
"accepting_new_participants": {
"type": "string",
"enum": [
"yes",
"no",
"unknown"
]
},
"rating": {
"type": [
"number",
"null"
]
},
"review_count": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"locations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"outlet_name": {
"type": "string"
},
"suburb": {
"type": [
"string",
"null"
]
},
"city": {
"type": [
"string",
"null"
]
},
"state": {
"type": [
"string",
"null"
]
},
"postcode": {
"type": [
"string",
"null"
]
},
"address": {
"type": [
"string",
"null"
]
},
"phone": {
"type": [
"string",
"null"
]
}
},
"required": [
"outlet_name"
],
"additionalProperties": false
}
},
"description": {
"type": [
"string",
"null"
]
},
"abn": {
"type": [
"string",
"null"
]
},
"website": {
"anyOf": [
{
"type": "string",
"format": "uri"
},
{
"type": "null"
}
]
},
"phone": {
"type": [
"string",
"null"
]
},
"languages": {
"type": "array",
"items": {
"type": "string"
}
},
"service_areas": {
"type": "array",
"items": {
"type": "string"
}
},
"record_updated_at": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"title",
"url",
"registration_status",
"registration_group_ids",
"claimed_listing",
"featured_placement",
"accepting_new_participants",
"rating",
"review_count",
"locations",
"description",
"abn",
"website",
"phone",
"languages",
"service_areas",
"record_updated_at"
],
"additionalProperties": false
},
"source_url": {
"type": "string",
"format": "uri"
},
"retrieved_at": {
"type": "string"
},
"limitations": {
"type": "string"
}
},
"required": [
"provider",
"source_url",
"retrieved_at",
"limitations"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Community
Evidence