Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Tools are perfectly partitioned by resource (activity vs property) and action (create/get/list/update/delete). No overlap exists between operations, and descriptions clearly distinguish time-entry logging from property management.

    Naming Consistency5/5

    Flawless adherence to verb_noun snake_case convention throughout. The same five verbs (create, get, list, update, delete) are applied consistently across both resource types, making the API surface instantly predictable.

    Tool Count5/5

    Ten tools represents an ideal scope for this domain: full CRUD (5 operations) for two core resources (properties and activities). No bloat, no missing essential operations, tightly focused on IRS REP tracking workflows.

    Completeness4/5

    Excellent lifecycle coverage with soft-delete recovery and filtering. Minor gap: no aggregation or reporting tools (e.g., annual hours summary by property) which would be essential for actual tax filing workflows, though the raw data management is complete.

  • Average 3.7/5 across 10 of 10 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are provided, so the description carries full disclosure burden. It mentions the property types (STR/LTR) but fails to describe mutation side effects, idempotency, error conditions (e.g., duplicate names), or what the tool returns upon success since no output schema exists.

    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?

    Two efficient sentences with zero waste. The first sentence front-loads the core action, while the second provides essential domain context about property types. Every word earns its place.

    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 100% input schema coverage, the description doesn't need to document parameters further. However, lacking an output schema, the description should ideally mention the return value (e.g., created property ID) or success behavior, which it omits. Adequate but not comprehensive.

    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?

    Schema coverage is 100%, establishing a baseline of 3. The description adds valuable domain context by explaining the STR/LTR distinction for the 'type' parameter. However, it doesn't elaborate on the nested address structure or date formats beyond what the schema already provides.

    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 states a clear verb ('Add') and resource ('rental property'), and specifies scope ('to the account'). It distinguishes from siblings like update_property and delete_property by specifying 'new' and mentioning the account context, though it doesn't explicitly contrast with 'update_property' for existing properties.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives (e.g., 'use update_property for existing properties'). No mention of prerequisites such as account requirements or uniqueness constraints on property names.

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

  • Behavior3/5

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

    The readOnlyHint annotation confirms this is a safe read operation, which the description does not contradict. However, the description adds no behavioral context beyond what the schema and annotations provide (e.g., what happens if the ID is invalid, what fields are returned, or caching behavior).

    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, efficient sentence with no filler words. It is front-loaded with the action ('Get') and immediately qualifies the scope ('single rental property by its ID'), making it easy to parse.

    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 (one simple string parameter, no nested objects) and the presence of readOnly annotations, the description is sufficient for invocation. However, the lack of an output schema means the description could have clarified the return structure (e.g., 'returns property details').

    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?

    With 100% schema description coverage ('The property ID'), the schema fully documents the parameter. The description mentions 'by its ID' but adds no additional semantic information (format constraints, where to find the ID, examples) beyond the schema baseline.

    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 retrieves a 'single rental property' using its ID, distinguishing it from the sibling list_properties tool (which handles multiple items). However, it does not explicitly name sibling alternatives like list_properties or differentiate from get_activity.

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

    Usage Guidelines2/5

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

    The description provides no explicit guidance on when to use this tool versus alternatives (e.g., 'use list_properties if you don't have an ID'), nor does it mention prerequisites or error conditions like 'property not found'.

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

  • Behavior3/5

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

    Annotations declare readOnlyHint=true, so safety is covered. Description adds valuable ordering behavior ('ordered by start time (newest first)') not found in annotations or schema. However, it omits details about return structure, default behavior when no filters applied, or pagination beyond the limit parameter.

    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?

    Three sentences, front-loaded with purpose. Every sentence earns its place: defines resource, specifies ordering behavior, and summarizes filtering capabilities. No redundant or wasted text.

    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?

    Input schema is fully covered (100%), but lacking output schema means description should compensate for return value structure. It minimally states 'Returns activities' without field details. Adequate for simple list operation but gaps remain regarding response format and explicit sibling differentiation.

    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?

    With 100% schema description coverage, baseline is met. Description lists filterable fields but doesn't add semantic depth beyond the schema (e.g., no explanation of parameter interplay or that all parameters are optional).

    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?

    States specific verb 'List' and resource 'real estate activities (hours entries)' clearly. Distinguishes from property-related siblings by specifying 'activities', though it doesn't explicitly contrast with 'get_activity' (single item retrieval vs. list).

    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?

    Implies usage through filter descriptions ('Filter by property, date range, or category'), but lacks explicit guidance on when to choose this over 'get_activity' or whether filters are optional. No mention of prerequisites or when not to use.

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

  • Behavior3/5

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

    Discloses critical partial-update behavior (fields omitted are not changed), which is essential given no annotations. However, missing other key behavioral details: error handling (what happens if ID not found?), side effects, validation rules for dates, or whether the operation is atomic.

    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?

    Extremely concise at two sentences with zero redundancy. Front-loaded with the core purpose ('Update an existing property'), followed immediately by critical usage instruction. Every word earns its place.

    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?

    Minimum viable for a 9-parameter update operation with nested objects. The partial-update disclosure covers the primary risk, but given the complexity (multiple date fields, address replacement semantics, active status), the description lacks business logic context that would help an agent understand side effects of specific field changes.

    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?

    Input schema has 100% coverage with clear field descriptions, establishing a baseline of 3. The description adds valuable partial-update semantics applicable to parameters, but does not explain parameter relationships (e.g., date precedence rules) or provide examples beyond what the schema already documents.

    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?

    States specific action ('Update') and resource ('property'), and distinguishes from create/delete/get siblings by specifying 'existing.' However, it does not differentiate from update_activity or explain what constitutes a 'property' in this domain.

    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?

    Provides implicit guidance through 'Only include fields you want to change,' indicating partial/PATCH-like update semantics. However, it lacks explicit when-to-use guidance, prerequisites (e.g., property must exist), or comparison to sibling update_activity.

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

  • Behavior3/5

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

    Annotations declare readOnlyHint=true, so the safety profile is covered. Description adds 'for the account' scoping and confirms optional filtering behavior. Does not disclose default behavior when no filters are applied (returns all?), pagination cursor logic, or response structure given the lack of output schema.

    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?

    Two sentences totaling 12 words. First states core purpose, second states optional capability. Zero redundancy, front-loaded with action, no wasted phrases.

    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?

    Adequate for a simple list operation with 2 optional parameters and read-only annotations. Missing explicit description of return values (list vs object), but the verb 'List' strongly implies a collection return. Sufficient without output schema, though mention of default unfiltered behavior would improve it.

    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 has 100% description coverage with complete enum documentation. Description reinforces the optional nature of filtering and repeats the enum values (SHORT_TERM/LONG_TERM), adding marginal semantic value beyond the structured schema. Baseline 3 appropriate given schema carries the load.

    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?

    Clear verb 'List' and resource 'rental properties' with account scoping. Distinguishes from sibling 'get_property' implicitly through pluralization (list vs get), but does not explicitly differentiate when to use one versus the other.

    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?

    Implies usage through 'Optionally filter by property type,' indicating when to use the type parameter. However, lacks explicit guidance on when to use list_properties versus get_property for single-property retrieval, and no mention of pagination strategy with the limit parameter.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden. It explains the partial update behavior well but fails to disclose safety characteristics (is it destructive? atomic?), return values, or constraints like the max 3 trips/files limit mentioned in the schema. The 'remove existing evidence' hint suggests destructive capability but doesn't classify it.

    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?

    Three sentences with zero waste: purpose statement first, update semantics second, specific capabilities third. Every word earns its place. Front-loaded structure makes it immediately scannable.

    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?

    For a complex 16-parameter mutation tool with file handling and relationships, the description covers the essential mechanics but is incomplete regarding return values (no output schema exists) and error conditions. The 100% schema coverage compensates somewhat, but behavioral gaps remain given the lack of 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?

    Despite 100% schema description coverage (baseline 3), the description adds significant value by explaining the partial update semantic ('Only include fields you want to change') that applies to all optional parameters. It also usefully aggregates related operations (evidence attachment/removal) that are spread across multiple 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 clearly states the verb (update) and resource (activity), specifying it works on 'existing' activities which distinguishes it from create_activity. It lists specific capabilities (trips, evidence files) that clarify the scope beyond a generic update.

    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 provides crucial guidance on partial updates ('Only include fields you want to change'), indicating PATCH-like semantics. However, it lacks explicit guidance on when to use this versus create_activity or delete_activity, and doesn't mention prerequisites like requiring a valid activity ID.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden. It discloses that trip association adds travel time to duration and that files come from the local filesystem, but omits mutation side effects, validation behavior, draft vs. final persistence details, and error handling.

    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?

    Three sentences with zero waste: sentence 1 states the core action, sentence 2 provides domain context, and sentence 3 highlights critical optional behaviors (trip duration handling, file attachment). Information is front-loaded and every clause earns its 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?

    Given 100% schema coverage and 15 parameters, the description appropriately focuses on high-level domain context and special behaviors rather than enumerating parameters. It adequately covers the tool's purpose for a complex IRS compliance tracking operation, though it could explicitly state this is a persistent write operation.

    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?

    While the schema has 100% description coverage (baseline 3), the description adds valuable domain context: 'IRS REP qualification tracking' explains the semantic purpose of isQualifying, isMaterialParticipation, and irsTest parameters collectively, and emphasizes the 'local filesystem' constraint for evidence files.

    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 with the specific action 'Log a new real estate activity (hours entry)' and clearly identifies the domain purpose (IRS REP qualification tracking). It distinguishes from siblings by emphasizing creation/logging versus update, delete, or list operations.

    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 through domain-specific terms (IRS REP tracking) and optional features, but lacks explicit guidance on when to use create_activity versus update_activity, or prerequisites like requiring an existing propertyId.

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

  • Behavior4/5

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

    Beyond the destructiveHint annotation, the description adds crucial behavioral context: the activity is hidden from queries (explaining the immediate effect) and recoverable within 72 hours via a specific web app (explaining the reversibility window). This clarifies the 'soft' nature of the deletion.

    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?

    Two sentences with zero waste. Front-loaded with the action ('Soft-delete an activity') followed by behavioral implications. Every word earns its 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 single-parameter destructive operation, the description adequately covers the soft-delete semantics and recovery mechanism. Minor gap: does not specify return value on success, though this is often implicit for delete operations.

    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?

    With 100% schema description coverage ('The activity ID to delete'), the schema fully documents the single parameter. The description does not add parameter-specific semantics, meeting the baseline expectation when schema coverage is high.

    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 specific verb 'Soft-delete' with resource 'activity', clearly distinguishing it from siblings like update_activity or get_activity. The soft-delete semantics differentiate it from potential hard-delete alternatives.

    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 constraints through the 72-hour recovery window and REP Helper web app mention, but lacks explicit 'when to use vs alternatives' guidance comparing it to update_activity or distinguishing from permanent deletion scenarios.

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

  • Behavior4/5

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

    Annotations declare readOnlyHint=true; description adds valuable domain context that 'activity' specifically refers to 'hours entry'. No contradictions with 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?

    Single sentence with zero waste. Front-loaded with verb 'Get'. Every word earns its place including the domain clarification in parentheses.

    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?

    Complete for a simple lookup tool with 100% schema coverage and annotations present. Mentions return type conceptually ('single activity') despite lack of output schema.

    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 activity ID'), establishing baseline 3. Description references 'by its ID' without adding format constraints, validation rules, or examples beyond the schema definition.

    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?

    Specific verb 'Get' with clear resource 'activity (hours entry)' and scope 'single...by its ID'. The parenthetical 'hours entry' clarifies domain terminology, and 'single' effectively distinguishes from sibling list_activities.

    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?

    Implies usage context through 'by its ID' (suggesting direct lookup vs. search), but lacks explicit when/when-not guidance contrasting with list_activities or prerequisites for obtaining the ID.

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

  • Behavior5/5

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

    The annotation only indicates destructiveHint=true, but the description adds essential behavioral nuance: the deletion is 'soft' (recoverable), the property becomes hidden from queries, the specific 72-hour recovery window, and the external recovery tool required. This significantly enhances safety and operational understanding.

    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?

    Two sentences with zero waste. First sentence states the action (soft-delete), second sentence covers consequences and recovery. Information is front-loaded and appropriately sized for a single-parameter destructive operation.

    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 deletion tool with one parameter and no output schema, the description is complete. It covers the deletion semantics, visibility impact, recovery timeframe, and recovery method—sufficient context for safe invocation.

    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 input schema has 100% description coverage ('The property ID to delete'), so the baseline score is 3. The description does not add additional parameter semantics, but none are needed given the complete schema 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 uses a specific verb phrase ('Soft-delete a property') that clearly identifies the operation and resource. It distinguishes from sibling delete_activity by specifying 'property,' and adds crucial scope clarification by defining what 'soft-delete' means.

    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?

    While it doesn't explicitly map alternatives (e.g., 'use update_property to modify instead'), it provides critical operational context: the 72-hour recovery window and the recovery mechanism (REP Helper web app). This gives clear guidance on the consequences of invocation.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

mcp-server MCP server

Copy to your README.md:

Score Badge

mcp-server MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rephelper-ai/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server