Skip to main content
Glama

get_town_living

The 'Living in ' profile for any of Puerto Rico's 78 municipios — housing (median rent, home value, household and per-capita income, ownership, vacancy, poverty, typical build year), work (mean commute, remote-work and transit shares, unemployment, broadband), people (population, density, median age, degrees), mapped services (schools, supermarkets, parks, restaurants, bus stops, beaches per 10,000 residents), the town's AAA water-rationing zones and plan state, and the reported violent-crime rate. Every figure carries the island median and the town's rank among municipios that report it, with sources and vintages (Census ACS 5-Year, OpenStreetMap, PRPD, AAA). Omit town for a compact index of all 78.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
townNoMunicipio name or slug (e.g. 'Cayey' or 'san-juan'); omit for a compact all-towns index

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Added

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral transparency burden, and it does well: it discloses the result contents, states that every figure includes the island median and town rank, names sources and vintages, and explains the no-town index mode. It does not discuss authentication, rate limits, or error cases, but for a read-only profile tool this is a minor gap.

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 description is long but densely informative; the em-dash-separated categories pack a large amount of concrete data-domain detail into one structured sentence. Every clause contributes value, though the first sentence could be split for easier scanning.

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?

Even without an output schema or annotations, the description fully compensates by listing the data categories, comparison metrics, sources, vintages, and optional modes. An agent has enough information to select this tool, invoke it correctly, and understand what the returned profile will contain.

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 100%, and the description mostly restates what the schema already documents, including the omit-town-for-index behavior. It adds a little context by mentioning Puerto Rico's 78 municipios and examples, but it does not materially extend the schema's parameter documentation.

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 opens by identifying the tool as the 'Living in <town>' profile for any of Puerto Rico's 78 municipios and then enumerates the exact domains covered: housing, work, people, mapped services, water-rationing, and crime. This is a specific resource with clear scope, and the detail distinguishes it from narrower siblings like get_safety_stats or get_cost_of_living.

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 clearly establishes when to use the tool: for a comprehensive living profile of any Puerto Rico municipio, and it explicitly instructs to omit town for a compact all-towns index. It does not name alternative tools or exclusions, but the invocation context is clear enough for an agent.

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.

TDQS

A4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes: ask synthesizes answers, search_news does semantic retrieval, keyword_search_news does keyword matching, and the get_/list_ tools target specific data types. However, search_pr_news is a redundant alias, and get_by_entity vs get_by_municipality overlap on place queries, creating minor ambiguity.

Naming Consistency3/5

Tool names use a mix of prefixes (get_, list_, search_) and include a bare verb (ask), which is not fully consistent. The legacy alias search_pr_news further deviates from the pattern, though the rest are readable and predictable.

Tool Count5/5

With 13 tools spanning news, Q&A, weather, cost-of-living, and safety, the count fits the server's broad purpose without being excessive. Each major domain has dedicated tools, and despite one redundant alias, the set remains well-scoped.

Completeness4/5

The tool set covers article discovery, synthesis, weather, demographics, and safety statistics, providing solid domain coverage. Minor gaps include no full-text article retrieval and no dedicated section browsing, but summaries and links make these workable.

Resources