HOUSE 'N' STARS Real Estate Discovery
Server Details
AI-native real estate discovery with structured property search and market intelligence.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
5 toolsget_hns_dataset_overviewGet HOUSE N STARS dataset overviewARead-onlyInspect
Explain what the HOUSE N STARS ChatGPT connector provides as a read-only AI-native luxury real estate dataset. Use this when the user asks what HOUSE N STARS covers, what data the app can access, whether it is read-only, which markets are represented, or why the connector is useful inside ChatGPT. This tool summarizes dataset scope and limitations; it does not search individual listings and does not retrieve archival HNS research reports unless dedicated tools are added later.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| name | Yes | |
| tools | Yes | |
| status | Yes | |
| service | Yes | |
| version | Yes | |
| read_only | Yes | |
| data_source | Yes | |
| limitations | Yes | |
| positioning | Yes | |
| primary_markets | Yes | |
| public_data_only | Yes | |
| wordpress_status_api | Yes | |
| connector_capabilities | Yes | |
| exposed_dataset_fields | Yes | |
| hns_intelligence_context | Yes | |
| public_response_guidance | Yes | |
| wordpress_properties_api | Yes | |
| returned_property_sample_count | Yes | |
| approximate_active_property_records | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds value by specifying the tool's non-behaviors (does not search listings, does not retrieve reports) and its role as a summarizer of scope/limitations, which goes beyond the annotations. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is composed of three sentences that front-load the core purpose and then add usage guidance and limitations. It is somewhat longer than strictly necessary but every sentence provides distinct value; no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description doesn't need to describe return values. It covers the tool's scope, limitations, and usage context thoroughly. It clearly states what the tool does and doesn't do, making it complete for an overview tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and an empty schema, so there is nothing to document. The baseline for 0 params is 4, and the description appropriately avoids parameter details since none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to explain the dataset scope, coverage, read-only nature, and utility. It explicitly distinguishes itself from siblings by stating it does not search listings or retrieve archival reports, which differentiates it from search_hns_properties and other tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use conditions (e.g., 'when the user asks what HOUSE N STARS covers...') and when-not-to-use exclusions ('does not search individual listings', 'does not retrieve archival HNS research reports'). It also hints at future alternatives, giving clear routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_propertyGet a HOUSE N STARS propertyARead-onlyInspect
Retrieve one real public HOUSE N STARS property listing by exact numeric ID or exact slug. Returns structured listing details including location, property type, transaction type, price display, bedrooms, bathrooms, surface, features, description and public listing URL.
| Name | Required | Description | Default |
|---|---|---|---|
| id_or_slug | Yes | The property numeric ID or slug returned by search_hns_properties or search_properties. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | No | |
| source | No | |
| status | Yes | |
| searched | No | |
| public_response_guidance | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds the 'real public' qualifier and the exact-match requirement, but does not disclose rate limits, authentication, or other behavioral traits. Since annotations carry the main behavioral burden, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and lists the return fields efficiently. Every word contributes value; there is no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with full schema coverage, read-only annotations, and an output schema, the description fully equips an agent to call it correctly. No critical information about invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage for the single parameter is 100% with a clear description ('property numeric ID or slug returned by search_hns_properties or search_properties'). The description adds only the word 'exact,' which subtly reinforces the requirement but does not significantly extend the schema's meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Retrieve'), a specific resource ('one real public HOUSE N STARS property listing'), and the method ('by exact numeric ID or exact slug'). It also enumerates the returned details, distinguishing it clearly from sibling search tools like search_hns_properties.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage conditions by requiring an 'exact numeric ID or exact slug,' signaling that the tool is for fetching a known listing rather than discovering one. However, it does not explicitly name alternatives or state when not to use it, leaving room for inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hns_api_statusCheck HOUSE N STARS API statusARead-onlyInspect
Check whether the HOUSE N STARS WordPress property API is reachable through the Render MCP server.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| tools | Yes | |
| status | Yes | |
| service | Yes | |
| version | Yes | |
| wordpress_status_api | Yes | |
| wordpress_found_posts | Yes | |
| returned_property_count | Yes | |
| wordpress_properties_api | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds context that this is a connectivity/status check directed at a specific WordPress API through the Render MCP server, but it does not disclose details such as timeout behavior, error semantics, or what happens when the API is unreachable. Given the simple read-only nature, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It names the target resource, the operation, and the access context efficiently. Every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only status tool with an output schema and supporting annotations, the description is complete. There are no hidden inputs or complex behaviors that require further explanation. An agent can invoke this tool correctly based on the description alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The description does not need to explain parameters, and the schema confirms no inputs are required. This is appropriate for a lightweight status check.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Check whether') and a clear resource ('HOUSE N STARS WordPress property API'), and distinguishes this health-check tool from the data-retrieval siblings like get_property and search_hns_properties. The intent is immediately unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when you need to verify that the upstream API is reachable rather than fetching property data. It does not explicitly name alternatives or state when not to use it, but the context is strong enough for an agent to make the right routing decision.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_hns_propertiesSearch HOUSE N STARS propertiesARead-onlyInspect
Search real public luxury real estate listings from the HOUSE N STARS structured property dataset using server-side WordPress search. Supports free-text criteria and filters for location, property type, Sale/Rent status, price range, bedrooms and result limit. Returns structured listing data including title, location, property type, transaction type, price display, bedrooms, bathrooms, surface, features and public listing URL.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results to return. Maximum 20. | |
| query | No | Free text search, for example sea view, garden, penthouse, waterfront. Do not use this field for sale/rent intent alone; use transaction_type. | |
| bedrooms | No | Minimum number of bedrooms requested by the user. | |
| location | No | Location filter, for example Dubai, Abu Dhabi, Monaco, Nice, Èze. | |
| max_price | No | Maximum price as a number, without currency symbols. | |
| min_price | No | Minimum price as a number, without currency symbols. | |
| property_type | No | Property type, for example Villa, Apartment, Penthouse, Townhouse. | |
| transaction_type | No | Sale/Rent filter. Use exactly Sale for properties for sale and Rent for rental properties. Do not put rent/rental/for rent into query when this parameter is used. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| source | Yes | |
| status | Yes | |
| filters | Yes | |
| results | Yes | |
| found_posts | Yes | |
| max_num_pages | Yes | |
| returned_count | Yes | |
| requested_limit | Yes | |
| query_posts_count | Yes | |
| raw_returned_count | Yes | |
| public_response_guidance | Yes | |
| ready_to_use_public_table | Yes | |
| wordpress_requested_limit | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and destructiveHint annotations, the description adds concrete behavioral details: it mentions server-side WordPress search, the structured dataset, and the exact set of fields returned in the result. It also implies public listings via 'real public luxury real estate listings' and 'public listing URL', providing useful context not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no redundant phrases. It front-loads the core action and resource, then briefly lists supported filters and output fields. Every clause contributes useful information, achieving high clarity with minimal length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of a full output schema, the description need not explain return values but does so briefly, reinforcing key fields. Combined with annotations (readOnly, openWorld) and complete parameter documentation, the tool definition leaves no critical gap for an agent to invoke it correctly. It is comprehensive for a read-only search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description summarizes the filter types ('location, property type, Sale/Rent status, price range, bedrooms and result limit') but does not add new semantic constraints or clarify nuances beyond what the schema provides. This aligns with the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Search'), names the resource ('HOUSE N STARS structured property dataset'), and enumerates the filtering dimensions. It clearly distinguishes the tool from generic search by specifying the dataset source, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (for searching HOUSE N STARS listings) but does not explicitly state when to prefer this tool over the sibling 'search_properties' or any other alternative. There is no 'use this when...' or 'do not use this for...' guidance, so the agent must infer the appropriate choice from the dataset mention.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_propertiesLegacy search HOUSE N STARS propertiesARead-onlyInspect
Legacy compatibility tool for searching HOUSE N STARS properties. Prefer search_hns_properties for new property searches, especially when the user asks for properties for sale or for rent because search_hns_properties exposes transaction_type as the official Sale/Rent parameter. This legacy tool remains available for backward compatibility and uses the same server-side WordPress search, price_display formatting, POA handling, EUR/AED inference, location cleanup and result table output.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results to return. Maximum 20. | |
| query | No | Free text search, for example sea view, garden, penthouse, waterfront. Do not use this field for sale/rent intent alone; use transaction_type. | |
| bedrooms | No | Minimum number of bedrooms requested by the user. | |
| location | No | Location filter, for example Dubai, Abu Dhabi, Monaco, Nice, Èze. | |
| max_price | No | Maximum price as a number, without currency symbols. | |
| min_price | No | Minimum price as a number, without currency symbols. | |
| property_type | No | Property type, for example Villa, Apartment, Penthouse, Townhouse. | |
| transaction_type | No | Sale/Rent filter. Use exactly Sale for properties for sale and Rent for rental properties. Do not put rent/rental/for rent into query when this parameter is used. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| source | Yes | |
| status | Yes | |
| filters | Yes | |
| results | Yes | |
| found_posts | Yes | |
| max_num_pages | Yes | |
| returned_count | Yes | |
| requested_limit | Yes | |
| query_posts_count | Yes | |
| raw_returned_count | Yes | |
| public_response_guidance | Yes | |
| ready_to_use_public_table | Yes | |
| wordpress_requested_limit | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds behavioral context beyond these, including the same 'server-side WordPress search, price_display formatting, POA handling, EUR/AED inference, location cleanup and result table output', which informs the agent about price formatting and output expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is composed of three sentences, each earning its place: purpose, usage guidance, and legacy/behavioral context. It is front-loaded with the primary purpose and uses no filler or redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 8 parameters (all optional), an output schema, and sibling tools, the description is complete enough: it explains what the tool does, when to use it versus the preferred alternative, and what to expect from results (same backend as the preferred tool). It does not explain return structure, but the output schema covers that, and it does not list limitations beyond being legacy, but that is implied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter already has a detailed description, including the transaction_type guidance. The description does not add specific parameter semantics beyond mentioning backend processing like price_display formatting and EUR/AED inference, which is marginal value over the schema. Baseline 3 is appropriate when the schema covers all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States clearly it is a 'Legacy compatibility tool for searching HOUSE N STARS properties', identifying the specific resource and action. It also distinguishes itself from the sibling tool by explicitly naming search_hns_properties as the preferred alternative, so an agent can tell them apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit guidance: 'Prefer search_hns_properties for new property searches, especially when the user asks for properties for sale or for rent' and notes that search_hns_properties 'exposes transaction_type as the official Sale/Rent parameter'. It also states this tool 'remains available for backward compatibility', making the when-to-use versus alternatives clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
- Changed
get_hns_dataset_overview1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "approximate_active_property_records": { + "type": "number" + }, + "connector_capabilities": { + "items": { + "type": "string" + }, + "type": "array" + }, + "data_source": { + "type": "string" + }, + "exposed_dataset_fields": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hns_intelligence_context": { + "items": { + "type": "string" + }, + "type": "array" + }, + "limitations": { + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "type": "string" + }, + "positioning": { + "type": "string" + }, + "primary_markets": { + "items": { + "type": "string" + }, + "type": "array" + }, + "public_data_only": { + "type": "boolean" + }, + "public_response_guidance": { + "type": "string" + }, + "read_only": { + "type": "boolean" + }, + "returned_property_sample_count": { + "type": "number" + }, + "service": { + "type": "string" + }, + "status": { + "type": "string" + }, + "tools": { + "items": { + "type": "string" + }, + "type": "array" + }, + "version": { + "type": "string" + }, + "wordpress_properties_api": { + "type": "string" + }, + "wordpress_status_api": { + "type": "string" + } + }, + "required": [ + "status", + "service", + "version", + "name", + "positioning", + "read_only", + "public_data_only", + "data_source", + "wordpress_status_api", + "wordpress_properties_api", + "approximate_active_property_records", + "returned_property_sample_count", + "primary_markets", + "exposed_dataset_fields", + "connector_capabilities", + "hns_intelligence_context", + "limitations", + "tools", + "public_response_guidance" + ], + "type": "object" +}
- Changed
get_property1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "public_response_guidance": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "bathrooms": { + "$ref": "#/properties/result/properties/price" + }, + "bedrooms": { + "$ref": "#/properties/result/properties/price" + }, + "currency": { + "type": [ + "string", + "null" + ] + }, + "excerpt": { + "type": "string" + }, + "features": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "anyOf": [ + { + "type": [ + "string", + "number" + ] + }, + { + "type": "null" + } + ] + }, + "image": { + "type": "string" + }, + "location": { + "type": [ + "string", + "null" + ] + }, + "price": { + "anyOf": [ + { + "type": [ + "string", + "number" + ] + }, + { + "type": "null" + } + ] + }, + "price_display": { + "type": "string" + }, + "price_status": { + "type": "string" + }, + "property_type": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "surface": { + "$ref": "#/properties/result/properties/price" + }, + "title": { + "type": "string" + }, + "transaction_type": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "id", + "title", + "slug", + "url", + "location", + "property_type", + "price", + "price_status", + "transaction_type", + "bedrooms", + "bathrooms", + "surface", + "features", + "excerpt", + "currency", + "price_display" + ], + "type": "object" + }, + "searched": { + "type": "string" + }, + "source": { + "type": "string" + }, + "status": { + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" +}
- Changed
hns_api_status1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "returned_property_count": { + "type": "number" + }, + "service": { + "type": "string" + }, + "status": { + "type": "string" + }, + "tools": { + "items": { + "type": "string" + }, + "type": "array" + }, + "version": { + "type": "string" + }, + "wordpress_found_posts": { + "type": "number" + }, + "wordpress_properties_api": { + "type": "string" + }, + "wordpress_status_api": { + "type": "string" + } + }, + "required": [ + "status", + "service", + "version", + "wordpress_status_api", + "wordpress_properties_api", + "returned_property_count", + "wordpress_found_posts", + "tools" + ], + "type": "object" +}
- Changed
search_hns_properties1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "filters": { + "additionalProperties": true, + "properties": { + "bedrooms": { + "$ref": "#/properties/filters/properties/min_price" + }, + "location": { + "type": [ + "string", + "null" + ] + }, + "max_price": { + "$ref": "#/properties/filters/properties/min_price" + }, + "min_price": { + "anyOf": [ + { + "type": [ + "string", + "number" + ] + }, + { + "type": "null" + } + ] + }, + "property_type": { + "type": [ + "string", + "null" + ] + }, + "search": { + "type": [ + "string", + "null" + ] + }, + "transaction_type": { + "type": [ + "string", + "null" + ] + } + }, + "type": "object" + }, + "found_posts": { + "type": "number" + }, + "max_num_pages": { + "type": "number" + }, + "public_response_guidance": { + "type": "string" + }, + "query_posts_count": { + "type": "number" + }, + "raw_returned_count": { + "type": "number" + }, + "ready_to_use_public_table": { + "type": "string" + }, + "requested_limit": { + "type": "number" + }, + "results": { + "items": { + "additionalProperties": false, + "properties": { + "bathrooms": { + "$ref": "#/properties/filters/properties/min_price" + }, + "bedrooms": { + "$ref": "#/properties/filters/properties/min_price" + }, + "currency": { + "type": [ + "string", + "null" + ] + }, + "excerpt": { + "type": "string" + }, + "features": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "anyOf": [ + { + "type": [ + "string", + "number" + ] + }, + { + "type": "null" + } + ] + }, + "location": { + "type": [ + "string", + "null" + ] + }, + "price": { + "$ref": "#/properties/filters/properties/min_price" + }, + "price_display": { + "type": "string" + }, + "price_status": { + "type": "string" + }, + "property_type": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "surface": { + "$ref": "#/properties/filters/properties/min_price" + }, + "title": { + "type": "string" + }, + "transaction_type": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "id", + "title", + "slug", + "url", + "location", + "property_type", + "price", + "price_status", + "transaction_type", + "bedrooms", + "bathrooms", + "surface", + "features", + "excerpt", + "currency", + "price_display" + ], + "type": "object" + }, + "type": "array" + }, + "returned_count": { + "type": "number" + }, + "source": { + "type": "string" + }, + "status": { + "type": "string" + }, + "wordpress_requested_limit": { + "type": "number" + } + }, + "required": [ + "status", + "source", + "requested_limit", + "wordpress_requested_limit", + "query_posts_count", + "raw_returned_count", + "returned_count", + "found_posts", + "max_num_pages", + "count", + "filters", + "results", + "ready_to_use_public_table", + "public_response_guidance" + ], + "type": "object" +}
- Changed
search_properties1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "filters": { + "additionalProperties": true, + "properties": { + "bedrooms": { + "$ref": "#/properties/filters/properties/min_price" + }, + "location": { + "type": [ + "string", + "null" + ] + }, + "max_price": { + "$ref": "#/properties/filters/properties/min_price" + }, + "min_price": { + "anyOf": [ + { + "type": [ + "string", + "number" + ] + }, + { + "type": "null" + } + ] + }, + "property_type": { + "type": [ + "string", + "null" + ] + }, + "search": { + "type": [ + "string", + "null" + ] + }, + "transaction_type": { + "type": [ + "string", + "null" + ] + } + }, + "type": "object" + }, + "found_posts": { + "type": "number" + }, + "max_num_pages": { + "type": "number" + }, + "public_response_guidance": { + "type": "string" + }, + "query_posts_count": { + "type": "number" + }, + "raw_returned_count": { + "type": "number" + }, + "ready_to_use_public_table": { + "type": "string" + }, + "requested_limit": { + "type": "number" + }, + "results": { + "items": { + "additionalProperties": false, + "properties": { + "bathrooms": { + "$ref": "#/properties/filters/properties/min_price" + }, + "bedrooms": { + "$ref": "#/properties/filters/properties/min_price" + }, + "currency": { + "type": [ + "string", + "null" + ] + }, + "excerpt": { + "type": "string" + }, + "features": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "anyOf": [ + { + "type": [ + "string", + "number" + ] + }, + { + "type": "null" + } + ] + }, + "location": { + "type": [ + "string", + "null" + ] + }, + "price": { + "$ref": "#/properties/filters/properties/min_price" + }, + "price_display": { + "type": "string" + }, + "price_status": { + "type": "string" + }, + "property_type": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "surface": { + "$ref": "#/properties/filters/properties/min_price" + }, + "title": { + "type": "string" + }, + "transaction_type": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "id", + "title", + "slug", + "url", + "location", + "property_type", + "price", + "price_status", + "transaction_type", + "bedrooms", + "bathrooms", + "surface", + "features", + "excerpt", + "currency", + "price_display" + ], + "type": "object" + }, + "type": "array" + }, + "returned_count": { + "type": "number" + }, + "source": { + "type": "string" + }, + "status": { + "type": "string" + }, + "wordpress_requested_limit": { + "type": "number" + } + }, + "required": [ + "status", + "source", + "requested_limit", + "wordpress_requested_limit", + "query_posts_count", + "raw_returned_count", + "returned_count", + "found_posts", + "max_num_pages", + "count", + "filters", + "results", + "ready_to_use_public_table", + "public_response_guidance" + ], + "type": "object" +}
5 tool updates
- First observed
get_hns_dataset_overview - First observed
get_property - First observed
hns_api_status - First observed
search_hns_properties - First observed
search_properties
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
UK area & property intelligence for AI agents: reports, EPC, comparables, with source provenance.
Vacation rental discovery, direct booking, and property protection for AI agents.
- mcpOAuthai.parceled
Real estate data for AI agents: US parcel boundaries (tiles), owners, sale history, permits, hail.
GDPR-clean property listings, rents, price stats, yields and below-market deals. UK, EU.
Related MCP Servers
- AlicenseAqualityDmaintenanceAI-powered property intelligence for instant zoning analysis, buildability assessments, ADU eligibility, flood risk, and development feasibility reports for any US address.51MIT
- AlicenseNot gradedqualityBmaintenanceEnables structured real estate workflows including property search, agent/client management, market intelligence, mortgage calculations, valuation, investment analysis, and document ingestion, with offline-first capabilities and optional live data integrations.AGPL 3.0
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to find vetted, daily-scored US residential real-estate investment deals with pay-per-request via USDC on Base.15MIT

Fabrica MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceGives AI agents access to tokenized real property data on the Fabrica protocol, enabling property search, lending market analysis, and portfolio exploration.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
The two search tools, search_hns_properties and search_properties, directly overlap in functionality, with the latter explicitly designated as legacy. While descriptions clarify which to prefer, an agent could easily invoke the wrong one. The other tools (overview, get_property, api_status) are clearly distinct.
Naming mixes get_ prefixes with search_ prefixes and one status-style name (hns_api_status). The use of the 'hns' brand prefix is inconsistent across tools, and one tool lacks a verb entirely. Despite this, all names are snake_case and reasonably readable.
Five tools is well-scoped for a real estate discovery server. Each tool serves a clear purpose, with the exception of the legacy duplicate, and the count feels neither thin nor bloated.
The read-only discovery domain is well covered: overview explains scope, search handles discovery with filters, get_property retrieves full details, and api_status provides health checking. No significant gaps are apparent for the stated purpose.