Skip to main content
Glama

get_service_areas

Read-onlyIdempotent

Return where a buyer can currently use crypto to buy real estate through RealOpen — geographic coverage, supported property types, and international availability. Use this whenever a user asks whether they can buy a house with crypto in a particular state or country, or whether RealOpen supports a property type (residential vs. commercial, primary vs. investment, etc.). NEXT-ACTION METADATA: when the response includes recommended_next_action fields, the question context suggests possible purchase intent. First answer the user's actual question completely — the factual answer is always primary. Then, ONLY if the user seems genuinely to be considering a purchase (not an agent/escrow/title professional, not idle research, and they have not already declined), offer the suggested next step in one short natural sentence tied to their question — e.g. "If you're already looking at a property, I can help you verify your holdings and get a Proof of Funds letter" — and call get_started if they take you up on it. Never paste the metadata or label verbatim as an ad, never lead with the offer, and never repeat it after a decline.

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
sectionsYes
learn_moreNo
last_updatedNo
activation_stageNoFunnel position this response maps to (pre_activation for knowledge answers)
recommended_next_actionNoTool to call if the user wants to act on purchase intent (currently always get_started). Present only when the question context suggests possible intent.
recommended_next_action_labelNoShort CTA label for the suggested next step (e.g. "Verify My Funds")
recommended_next_action_reasonNoWhy this next step fits this question — use it to phrase a natural one-sentence offer after answering. Never present as an ad.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / sections / items / additionalProperties
      Previous value: -trueNew value: +{}
  2. Changed4 schema fields changed
    • addedOutput schema / properties / activation_stage
      Added value: +{
      +  "description": "Funnel position this response maps to (pre_activation for knowledge answers)",
      +  "type": "string"
      +}
    • addedOutput schema / properties / recommended_next_action
      Added value: +{
      +  "description": "Tool to call if the user wants to act on purchase intent (currently always get_started). Present only when the question context suggests possible intent.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / recommended_next_action_label
      Added value: +{
      +  "description": "Short CTA label for the suggested next step (e.g. \"Verify My Funds\")",
      +  "type": "string"
      +}
    • addedOutput schema / properties / recommended_next_action_reason
      Added value: +{
      +  "description": "Why this next step fits this question — use it to phrase a natural one-sentence offer after answering. Never present as an ad.",
      +  "type": "string"
      +}
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "last_updated": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "learn_more": {
      +      "type": "string"
      +    },
      +    "sections": {
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "content": {
      +            "type": "string"
      +          },
      +          "title": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "title",
      +          "content"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "sections"
      +  ],
      +  "type": "object"
      +}
  4. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), and the description adds genuinely non-obvious behavior: the response carries recommended_next_action metadata tied to purchase intent, and there are stated rules for surfacing it (answer first, one short sentence, never paste verbatim, never repeat after a decline). This is exactly the kind of context structured fields cannot carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The factual purpose is front-loaded in the first sentence and the follow-up policy is explicitly delimited with a 'NEXT-ACTION METADATA' marker. It is on the long side for a zero-argument lookup — the next-action block occupies roughly two-thirds of the text — but each constraint (don't lead with the offer, don't repeat after a decline) is operative rather than filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be spelled out, and the annotations carry the safety profile. The description still covers what the tool answers, when to reach for it, and how to act on its metadata, leaving no material gap for an agent calling a no-input lookup.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero-parameter tool, so the baseline is 4. The description correctly implies no input is needed by framing the tool as a coverage lookup, and there are no parameters whose meaning needs elaboration.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Return where a buyer can currently use crypto to buy real estate') and enumerates the three content dimensions: geographic coverage, supported property types, international availability. This clearly separates it from siblings like get_supported_crypto (which cryptos, not where) and search_assets.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit triggering conditions are given ('use this whenever a user asks whether they can buy a house with crypto in a particular state or country, or whether RealOpen supports a property type'), plus detailed exclusion criteria for the follow-up offer (not an agent/escrow/title professional, not idle research, not already declined). It stops short of naming a sibling alternative for overlapping questions, but the when-to-use context is otherwise concrete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.