Skip to main content
Glama

UniAffitti Room Finder

Server Details

Find, rank, and compare student rooms from UniAffitti public listings.

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 4/5 across 5 of 5 tools scored. Lowest: 3.4/5.

Server CoherenceA
Disambiguation4/5

Tools are mostly distinct, but search_rooms and rank_room_matches both find rooms, which could cause confusion. However, search_rooms is a general search while rank_room_matches specifically scores against preferences, so the descriptions help differentiate them.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (compare_rooms, get_room_details, list_search_metadata, rank_room_matches, search_rooms), with clear and predictable action-first naming.

Tool Count5/5

Five tools is well-scoped for a room-finding server, covering search, ranking, details, comparison, and metadata without unnecessary bloat or missing essentials.

Completeness5/5

The tool surface covers the full user lifecycle: discovering search options, finding rooms, ranking matches, viewing details, and comparing options. No obvious gaps for the stated purpose of a student room finder.

Available Tools

5 tools
compare_roomsCompare roomsA
Read-only
Inspect

Compare selected rooms side by side for price, distance, type, availability, features, and trust signals.

ParametersJSON Schema
NameRequiredDescriptionDefault
room_idsYes
campus_idNo
Behavior3/5

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

The annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds that comparison includes specific attributes, but does not disclose return format, error behavior for invalid room_ids, or any additional constraints. With annotations covering the read-only nature, this adds moderate value but not rich behavioral detail.

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 leads with the action verb and immediately specifies the subject and comparison dimensions. Every word adds value, with no filler or repetition of schema information, making it highly concise and well-structured.

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

Completeness3/5

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

With only 2 parameters, no output schema, and no nested objects, this is a relatively simple tool. The description covers the basic purpose and comparison scope, but omits details about the return format and the role of campus_id. While it is adequate for a simple comparison tool, it leaves some contextual gaps that would be useful for the agent.

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 0%, and the input schema only provides types and constraints, not meanings. The description clarifies that 'room_ids' refers to 'selected rooms' and implies the comparison fields, but does not mention the optional 'campus_id' parameter at all. It partially compensates for the lack of schema descriptions but leaves a key parameter semantically undocumented.

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 uses a specific verb ('Compare') with a clear resource ('selected rooms') and lists the comparative dimensions (price, distance, type, availability, features, trust signals). This clearly distinguishes it from siblings like get_room_details (single room) and rank_room_matches (ranking), so the purpose is unambiguous.

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 implies when to use this tool: when multiple rooms are already selected and need side-by-side comparison. It does not explicitly name alternatives or exclusions, but the context of 'selected rooms' and the comparison focus makes the usage context clear relative to siblings like search_rooms.

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

get_room_detailsGet room detailsA
Read-only
Inspect

Return public details for one approved room, including media, features, and limited landlord trust information.

ParametersJSON Schema
NameRequiredDescriptionDefault
room_idYes
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds context about the response scope ('public details', 'limited landlord trust information') and the constraint 'approved room,' which goes beyond the bare annotations. It does not contradict any annotation.

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 action and resource, then lists the key content categories. No extraneous words or redundancy.

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?

For a simple one-parameter read-only tool, the description covers purpose, constraints, and return content. Combined with strong annotations and clear sibling context, it is sufficiently complete without needing additional details like error handling.

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?

There is one parameter (room_id) with 0% schema description coverage. The description implies that the ID should correspond to an approved room, but provides no further detail about the parameter itself. This gives marginal compensation but relies heavily on the parameter name and tool name for meaning.

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 uses a specific verb ('Return') and identifies the resource ('public details for one approved room'), clearly distinguishing it from sibling tools like search_rooms or compare_rooms. It also lists the content categories (media, features, trust info), making the purpose unmistakable.

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 implies usage when a specific room's details are needed, with the constraint 'approved room.' However, it does not explicitly state when not to use it or name alternatives. The context is clear but lacks explicit exclusions.

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

list_search_metadataList search metadataA
Read-only
Inspect

List zones, campuses, and available feature filters for room search.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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 the specific metadata categories returned (zones, campuses, filters), which is useful context beyond the annotations. It does not describe return shape or edge cases, but this is acceptable for a simple read-only tool.

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 is extremely concise and front-loaded with the verb 'List'. Every word adds value, with no redundancy or irrelevant content.

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?

For a zero-parameter, read-only metadata listing with no output schema, the description sufficiently conveys what the tool returns and its purpose. It is complete for its simplicity and matches the annotations.

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?

The input schema has zero parameters and 100% schema description coverage, so there is nothing for the description to add regarding parameters. Baseline of 4 is appropriate.

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 uses the specific verb 'List' and clearly identifies the resource: zones, campuses, and available feature filters for room search. This distinguishes it from sibling tools that operate on room results (e.g., search_rooms, compare_rooms).

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 implies usage as a prerequisite for room search by providing metadata options, but it does not explicitly state when to use this tool over alternatives or include exclusions. The context is clear, but no direct guidance on alternative selection is given.

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

rank_room_matchesRank room matchesB
Read-only
Inspect

Find rooms and score them against student preferences such as budget, campus distance, room type, and trust signals.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNo
featuresNo
campus_idNo
max_budgetNo
available_fromNoYYYY-MM-DD.
max_distance_kmNo
preferred_room_typeNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering safety. The description adds that the tool scores rooms, but it does not disclose behavioral traits like result ordering, pagination, or how trust signals are computed. With annotations present, the description doesn't need to restate safety, but it also doesn't enrich behavioral context meaningfully.

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. It immediately states the action and key criteria, making it highly concise and well-structured for the information it conveys.

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

Completeness2/5

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

With 8 parameters, low schema coverage, no output schema, and only high-level annotations, this one-sentence description is insufficient. It does not explain ranking logic, return format, or how parameters like features or trust signals are used, leaving the tool under-specified for a task of this complexity.

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 very low (13%), so the description carries the burden of explaining parameters. It mentions budget, campus distance, and room type, which map to max_budget, max_distance_km, and preferred_room_type. However, it omits many parameters (features, campus_id, query, limit) and does not explain the 'trust signals' factor, leaving significant gaps.

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 finds rooms and scores them against preferences, which is specific and distinguishes it from a plain search. It names the scoring criteria (budget, distance, room type, trust signals) but does not explicitly reference sibling tools, so it stops short of full sibling differentiation.

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

Usage Guidelines3/5

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

The description implies this tool is for preference-based ranking but gives no explicit guidance on when to use it over search_rooms or compare_rooms. It lacks when-not-to-use conditions or alternative mentions, so it is only minimally adequate.

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

search_roomsSearch roomsA
Read-only
Inspect

Search approved and available student rooms by budget, type, zone, campus, distance, and features.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNoFree text search over title, description, zone, and campus.
offsetNo
zone_idNo
featuresNo
order_byNonewest
campus_idNo
max_priceNo
min_priceNo
room_typeNo
available_fromNoYYYY-MM-DD.
max_distance_kmNo
Behavior3/5

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 the 'approved and available' filter and the list of filter dimensions, which is useful behavioral context. However, it does not disclose return format, pagination behavior, or sorting defaults beyond what the schema implies, so it adds moderate value beyond 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 verb and resource, and wastes no words. It lists the key filter dimensions without redundancy, achieving high information density in minimal space.

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

Completeness3/5

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

With 12 parameters, a nested features object, no output schema, and low schema description coverage, the description provides the core purpose but omits important operational details like pagination, sorting, return shape, and how features filtering behaves. While sufficient for a basic search tool, it could be more complete given the complexity.

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 low (17%), so the description must compensate. It maps several schema parameters to filter concepts (budget to min/max_price, type to room_type, zone to zone_id, etc.), adding meaning beyond raw names. However, it omits parameters like query, order_by, limit/offset, available_from, which are left to the schema or inference. Partial compensation but not complete.

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: searching approved and available student rooms with specific filter criteria (budget, type, zone, campus, distance, features). It uses a specific verb ('Search') and resource ('student rooms'), and distinguishes it from siblings like compare_rooms or get_room_details by focusing on the search/filter aspect.

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

Usage Guidelines3/5

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

The description implies usage context (searching rooms) but does not explicitly state when to use this tool versus alternatives like rank_room_matches or list_search_metadata. It provides no exclusions or alternative guidance, so it falls into 'implied usage' rather than clear context with exclusions.

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
    B
    maintenance
    Enables AI agents to search Dutch housing listings on Kamernet.nl, retrieve full listing details, and optionally reply to landlords; designed for personal use in finding rooms, studios, and apartments.
    Last updated
    3
    1
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Submarket-level US residential rental intelligence for AI agents. Search, compare, rank, and analyze rent data, trends, vacancy, affordability, and days on market across 1,000+ named submarkets in the 20+ largest US metros. ZIP-level and metro-level queries included. Always current, always expanding. Free tier available.
    Last updated
    1
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources