SG Property Data
Server Details
Price trends, CAGR, rental yield for Singapore private and HDB property, from URA/HDB records.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.6/5 across 5 of 5 tools scored.
Each tool targets a distinct aspect: data freshness, sample data, and lists for condos, HDB towns, and landed projects. There is no functional overlap.
All tool names follow a consistent verb_noun pattern using lowercase and underscores: 'get_data_freshness', 'get_sample_data', 'list_condo_projects', 'list_hdb_towns', 'list_landed_projects'.
With 5 tools, the set is well-scoped for a property data server focused on discovery and metadata. The count feels complete for the free tier.
The tools are limited to free listing and metadata tools. Descriptions reference paid stats tools (e.g., get_hdb_town_stats) that are not provided, leaving core analytical functionality missing.
Available Tools
5 toolsget_data_freshnessAInspect
Get metadata about when this dataset was last calculated and what period of sale/rental data it covers. Call this before presenting any number as 'current' - the underlying data is refreshed monthly, not in real time.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions the refresh frequency (monthly) and staleness, but does not disclose other behaviors like permissions, side effects, or potential delays. 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?
Two sentences: first states purpose, second gives usage guidance. No wasted words, front-loaded with core function.
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?
Has output schema to document return values. Description provides sufficient context for an agent to understand when to call (before presenting data as current) and refresh frequency. Siblings are about different data, so no confusion.
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?
No parameters in input schema, so schema description coverage is trivially 100%. Per rubric, 0 parameters yields baseline of 4. Description adds no param info but none needed.
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?
Description clearly states the tool retrieves metadata about dataset freshness (last calculated, period covered). It uses specific verb 'Get metadata' and resource 'dataset freshness'. Distinguishes from sibling tools which are about listing projects or sample data.
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?
Explicitly advises to call before presenting any number as 'current' and notes data is refreshed monthly, not real-time. Provides clear context for when to use, though no explicit alternatives or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sample_dataAInspect
Get free sample data - real (not synthetic) district and project stats for a small fixed set of examples, in the exact same shape as the paid tools. Use this to verify the data fits your use case before calling the paid tools, which cover the full catalogue of districts and projects.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses that data is real (not synthetic), for a small set, same shape as paid tools. Implies read-only and non-destructive, but doesn't mention auth or rate limits. Adequate for a sample tool.
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?
Three sentences, front-loaded with main action, then clarifies purpose and usage. Every sentence adds value with no redundancy.
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 zero parameters, output schema exists, and low complexity, the description fully covers what the tool does, when to use it, and what the data looks like. No missing information.
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?
Tool has zero parameters, and schema coverage is 100%. No parameter documentation needed. Description does not add parameter info but none required. Baseline 4 for zero params.
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 it 'Get free sample data - real (not synthetic) district and project stats for a small fixed set of examples, in the exact same shape as the paid tools.' It distinguishes from sibling tools which are paid or have specific scopes like list_condo_projects.
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?
Explicitly says 'Use this to verify the data fits your use case before calling the paid tools', providing clear when-to-use and when-not-to-use guidance. Sibling tools are implied as alternatives for full catalogue.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_condo_projectsAInspect
List condo/apartment projects we track, optionally filtered by district. Free - use this to discover valid project names before calling the paid stats/yield tools, rather than guessing at spelling.
| Name | Required | Description | Default |
|---|---|---|---|
| district | No | Optional two-digit postal district code to filter by, e.g. "09". Omit to list every condo project tracked. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It states the tool is free and lists projects we track. As a read-only list operation, no further behavioral traits are critical. Could mention no side effects, but not required.
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?
Two short sentences, front-loaded with purpose, then usage advice. No wasted words.
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 list tool with output schema, description covers what, when to use, and parameter meaning. Complete without excess.
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 is 100%, and description adds meaning by explaining parameter 'district' is optional and allows listing everything. Description also mentions 'optionally filtered by district', reinforcing schema info.
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?
Description uses specific verb 'list' and resource 'condo/apartment projects', with optional filtering. It distinguishes from sibling tools by noting it's free and used as a discovery step before paid 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?
Explicitly advises using this to discover valid project names before calling paid stats/yield tools, and warns against guessing spelling. No sibling alternative for discovery is mentioned, but the guidance is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_hdb_townsAInspect
List every HDB town we track, with the specific flat types available for each. Free - use this to discover valid town names and flat types before calling the paid get_hdb_town_stats tool.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It accurately implies a read-only list operation and notes the tool is free. It could mention rate limits or pagination, but the simplicity of the operation makes it reasonably transparent.
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?
Two sentences with zero waste. First states core purpose, second provides usage context and distinguishes free vs paid. Efficiently front-loaded with essential information.
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 no parameters and an output schema (which covers return values), the description is fully complete. It tells what is returned (towns and flat types) and how to use the output.
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?
No parameters exist, so schema coverage is 100%. The description does not need to add param details beyond the schema. Baseline 4 is appropriate.
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?
Description clearly states 'List every HDB town we track, with the specific flat types available for each,' which is a specific verb+resource action. It also distinguishes from sibling tools that list condo or landed projects, and from data freshness 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?
Explicitly says 'use this to discover valid town names and flat types before calling the paid get_hdb_town_stats tool,' providing clear when-to-use guidance and linking to a related tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_landed_projectsAInspect
List landed house projects/estates we track, optionally filtered by district. Free - use this to discover valid names before calling the paid stats/yield tools.
| Name | Required | Description | Default |
|---|---|---|---|
| district | No | Optional two-digit postal district code to filter by. Omit to list every landed project tracked. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description notes the optional filter and that omitting it lists all projects. It also says it's 'free,' giving a safety cue. However, it lacks details on rate limits or result size limits, which would be beneficial for a production environment.
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?
Two sentences with no redundancy. The first sentence states the core action, and the second provides guidance. Every word earns its place.
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 simple single-parameter input and the presence of an output schema, the description covers the necessary details: what it lists, filtering, and its free nature for discovery. No gaps.
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 is 100% with the district parameter already described in the schema. The description adds minimal extra meaning beyond reinforcing the optional filtering and the discoverability purpose, so a baseline 3 is appropriate.
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 'List landed house projects/estates we track, optionally filtered by district' with a clear verb (List) and resource (projects/estates). It distinguishes from siblings like list_condo_projects and list_hdb_towns by specifying 'landed' property type.
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?
Explicitly advises 'use this to discover valid names before calling the paid stats/yield tools,' providing clear when-to-use context and a direct alternative (paid tools). Also marks it as free, which guides selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
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
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!