Skip to main content
Glama

EPK Properties Public Knowledge MCP

Server Details

Public EPK real estate listings and multilingual guides for Panama and the Dominican Republic.

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.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsA

Average 3.9/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation3/5

There is clear overlap between generic tools (search, fetch) and specialized ones (search_properties, search_guides, get_property, get_guide_section). Descriptions help but an agent might hesitate between using search vs. search_properties or fetch vs. get_property.

Naming Consistency3/5

Naming mixes bare verbs (fetch, search) with verb_noun compounds (get_guide_section, get_property, search_guides, search_properties). While readable, the pattern is not uniform across the set.

Tool Count4/5

With 6 tools, the count is within a reasonable range for the domain. The set feels slightly redundant given the overlap between generic and specific tools, but not overly bloated.

Completeness4/5

The tool surface covers the read-only public knowledge domain: searching and retrieving properties and guide sections. Minor gaps include no dedicated full-guide retrieval (though fetch covers this) and no explicit list-all tools, but agents can work around these.

Available Tools

6 tools
fetchFetch EPK public documentA
Read-onlyIdempotent
Inspect

Use this when the user wants the full public property or guide document identified by a prior search result.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID returned by search.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
urlYes
kindNo
textYes
titleYes
countryNo
sectionNo
sourcesNo
summaryNo
languageNo
metadataNo
countryNameNo
Behavior3/5

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

Annotations (readOnlyHint, idempotentHint, destructiveHint) already convey the safety profile. The description adds the scoping constraint of requiring a prior search result, which is useful, but it doesn't describe return format or any additional behavioral traits. This meets the bar set by 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.

Conciseness5/5

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

The description is one concise sentence, front-loaded with the primary use case and no wasted words. It is appropriately sized for the tool's simplicity.

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

Completeness4/5

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

Given the tool's low complexity (1 parameter), rich annotations, and presence of an output schema, the description is sufficient. It clearly identifies when to use it and what it returns, without needing to explain return values since the output schema exists.

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

Parameters3/5

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

The only parameter 'id' is fully described in the schema as 'Document ID returned by search.' The description reinforces this by mentioning 'prior search result,' but adds no new semantic detail beyond the schema. With 100% schema coverage, a baseline of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool fetches the full public property or guide document after a prior search. It uses a specific verb ('fetch') and resource ('full public property or guide document'), which somewhat distinguishes it from siblings like get_guide_section or get_property, though it doesn't explicitly name alternatives.

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?

The description explicitly says 'Use this when the user wants the full public property or guide document identified by a prior search result,' giving a clear condition for use. It implies that search should happen first, but it doesn't explicitly mention alternative tools.

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

get_guide_sectionGet public guide sectionA
Read-onlyIdempotent
Inspect

Use this when the user wants the complete public EPK guide section identified by search_guides.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesGuide section ID returned by search_guides.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
urlYes
kindYes
textYes
titleYes
countryYes
sectionYes
sourcesYes
summaryYes
languageYes
metadataNo
countryNameYes
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive. The description adds useful context beyond annotations: the section is 'public' and 'complete', and the ID must come from search_guides. This gives the agent expectations about dependencies and data scope without contradicting annotations.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. Every word contributes: 'complete', 'public', 'EPK guide section', and 'identified by search_guides' all earn their place.

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

Completeness4/5

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

For a one-parameter getter with a rich schema, output schema, and full annotations, the description is quite complete. It conveys the main use case, the dependency on search_guides, and the nature of the response ('complete'). It does not explain what EPK stands for, but that is not necessary for the agent to invoke the tool correctly.

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

Parameters3/5

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

Schema coverage is 100%; the id parameter already includes a pattern and description ('Guide section ID returned by search_guides'). The description reinforces this dependency but adds no new parameter-level meaning beyond the schema. Baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly states that the tool provides the complete public EPK guide section, and the phrase 'identified by search_guides' differentiates it from the search_guides sibling. However, it uses a usage directive ('Use this when...') rather than a direct verb like 'retrieves', so it stops short of a perfect 5.

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?

The description explicitly tells the agent when to use this tool ('when the user wants the complete public EPK guide section') and references search_guides as the identifier source. It does not explicitly name alternatives to avoid, but the context is clear enough for a simple getter with distinct siblings.

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

get_propertyGet public propertyA
Read-onlyIdempotent
Inspect

Use this when the user wants full public details for a property UUID returned by search_properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
languageNoes
property_idYesPublic property UUID returned by search_properties.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
urlYes
textYes
titleYes
metadataNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds context about returning 'full public details' and the UUID source, but does not disclose additional behavioral traits beyond that.

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

Conciseness5/5

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

The description is a single sentence that front-loads the usage condition and is free of any filler. Every word adds value.

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

Completeness4/5

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

The tool is simple (2 parameters, output schema present), and the description adequately covers purpose and usage. However, the lack of parameter semantics for 'language' is a minor gap, so it is not a 5.

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

Parameters2/5

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

Schema coverage is only 50% (property_id is described, language is not). The tool description does not compensate for the missing language parameter semantics—it only reinforces property_id via 'property UUID returned by search_properties'. This leaves the language parameter's purpose and default behavior unexplained.

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?

The description clearly states the tool's function: 'get full public details for a property UUID'. It uses a specific verb ('get') and resource ('property UUID'), and distinguishes it from siblings by noting the UUID comes from search_properties.

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?

The description explicitly tells when to use the tool: when the user wants full public details for a property UUID returned by search_properties. It provides clear context but does not explicitly mention when not to use it or alternatives.

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

search_guidesSearch public real estate guidesA
Read-onlyIdempotent
Inspect

Use this when the user asks about EPK public guidance for buying, taxation, regulations, residency, locations, rental management, relocation, or due diligence in Panama or the Dominican Republic.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYesTopic, regulation, tax, residency, location, or buying-process query.
offsetNo
countryNo
languageNoOmit to infer the language from the query.

Output Schema

ParametersJSON Schema
NameRequiredDescription
limitYes
totalYes
offsetYes
resultsYes
has_moreYes
Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which inform the agent this is a safe read-only operation. The description adds no additional behavioral context such as search execution details, result format, pagination, or language inference behavior, so its contribution beyond annotations is minimal.

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

Conciseness5/5

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

The description is a single sentence that immediately states when to use the tool and enumerates the relevant topics and countries. There is no redundant information or filler, making it highly efficient.

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

Completeness4/5

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

Given the tool's moderate complexity (5 parameters, output schema present, annotations available), the description covers the essential use case and domain. The output schema handles return structure details, and annotations cover safety. It lacks any mention of search behavior or limitations, but these are secondary given the schema and simple nature of the tool.

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

Parameters3/5

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

The schema description coverage is 40%, with query and language having descriptions but limit, offset, and country lacking them. The description mentions the topic list and the two countries, which helps interpret the query and country parameters, but it does not address pagination or other parameter details. It partially compensates for the coverage gap but does not fully map all parameters.

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

Purpose4/5

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

The description is phrased as a usage trigger ('Use this when...') but it clearly identifies the resource (EPK public guidance) and the topical scope (buying, taxation, regulations, etc.) in two specific countries. It distinguishes from property search siblings by focusing on guides rather than property records, though it never explicitly states the verb 'search'.

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?

The description explicitly states when to use the tool: when the user asks about EPK public guidance on a specific list of topics in Panama or the Dominican Republic. It does not mention when not to use it or name alternative tools, but the criteria are clear and actionable.

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

search_propertiesSearch public propertiesA
Read-onlyIdempotent
Inspect

Use this when the user wants to find public EPK Properties listings with explicit country, sale/rent, property type, price, bedroom, bathroom, or area filters.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNoLocation, property name, address, or descriptive keywords.
offsetNo
countryNoPTY for Panama or DOM for the Dominican Republic.
languageNoLanguage for descriptions and canonical listing URLs.es
max_areaNoMaximum area in square metres.
min_areaNoMinimum area in square metres.
max_priceNo
min_priceNo
min_bedroomsNo
min_bathroomsNo
property_typeNo
operation_typeNoSearch properties for sale or rent.

Output Schema

ParametersJSON Schema
NameRequiredDescription
limitYes
totalYes
offsetYes
resultsYes
has_moreYes
Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the scope 'public' but does not disclose additional behavioral details like pagination, sorting, or default ordering. This is adequate but not rich, so a mid-range score 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.

Conciseness5/5

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

The description is a single sentence, front-loaded with 'Use this when', and contains no redundant information. It is concise and structured effectively.

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

Completeness4/5

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

Given the tool's complexity (13 parameters, output schema present), the description is sufficient for guiding the agent on the core use case. The output schema covers return values, and the description captures the essential filter dimensions. It does not mention pagination or language details, but those are documented in the schema, so the description adds adequate contextual value.

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

Parameters3/5

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

Schema description coverage is 46%, requiring some compensation from the description. The description lists the filter categories (country, sale/rent, property type, price, bedrooms, bathrooms, area), which helps map to parameters. However, it does not explain min/max semantics or the available enums, leaving some ambiguity for parameters without schema descriptions.

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?

The description clearly states the tool's verb ('find'), resource ('public EPK Properties listings'), and scope ('with explicit ... filters'). It distinguishes itself from the generic 'search' sibling by specifying that this is for public property listings with structured filters.

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?

It provides a clear 'when to use' condition: when the user wants to find public properties using specific filters. However, it does not explicitly mention when not to use it or suggest alternatives like 'get_property' for single-listing lookups, so it falls short of the top score.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Philippine real estate data for AI agents — search verified listings, calculate transfer costs, and get accurate legal information via lupaph.com.
    Last updated
    6
    27
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    AI-native property MCP for Northern Cyprus (KKTC). Search live listings, get the price index, compare cities and districts, estimate rental yield, and look up KKTC title-deed (koçan) procedures — all sourced live from evlek.app.
    Last updated
    18
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Search vacation rental properties, check real-time availability, get canonical pricing quotes, and create direct bookings. Each property is its own node with live data. Supports staircase pricing, seasonal rates, and 11 languages.
    Last updated
    1
    13
    254
    1
    Apache 2.0
  • A
    license
    -
    quality
    A
    maintenance
    A comprehensive Model Context Protocol server for real estate data management that provides tools and resources for property listings, agent management, market analysis, client relationships, and area intelligence.
    Last updated
    50
    AGPL 3.0

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources