Skip to main content
Glama

Tenantback CAM Audit

Server Details

Audit a landlord's CAM reconciliation against the lease. Finds overcharges with clause citations.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.9/5.0

Scored across 2 tools

Disambiguation5/5

The two tools are split cleanly along the async job lifecycle: one submits an audit and returns a request id, the other retrieves status/findings for that id. Their descriptions explicitly reference each other ('call get_audit_result after about 3 minutes'), so an agent cannot reasonably mistake one for the other.

Naming Consistency5/5

Both names use snake_case with an action-oriented verb ('audit_...' for the action, 'get_...' for retrieval) and share the 'audit' noun stem. The pattern is predictable and readable across the whole set.

Tool Count4/5

Two tools is thin in the abstract, but the submit-then-poll asynchronous pattern inherently requires exactly one start tool and one result tool. Nothing here feels redundant or missing for the stated single-purpose audit scope.

Completeness4/5

The core lifecycle (submit audit -> poll findings) is fully covered, including an explicit fallback path for unreadable files and instructions for acting on results. Minor gaps exist: no listing of prior audits, no cancel/retry, and the user must retain the request id to get results.

Available Tools

2 tools
audit_cam_reconciliationAudit a CAM reconciliation against the leaseAInspect

Checks a landlord's CAM / operating expense reconciliation (true-up) line by line against the commercial lease: pro-rata share, CAM caps, admin and management fees, excluded costs (capital repairs, landlord overhead and more), gross-up, totals and late delivery. Pass the full text of the lease (with amendments) and of the reconciliation, as you read them from the user's files; mark page breaks as '--- page N ---' so citations point to the right page. HTTPS links to the PDFs also work. Returns a request id: call get_audit_result after about 3 minutes. If you cannot read the files, tell the user to forward them to audit@tenantback.com instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
lease_urlNo
lease_textNoFull text of the lease and any amendments
contact_nameNo
contact_emailYesWork email of the tenant the documents belong to. Their free workspace and report are tied to it.
property_nameNoStore, center or property name, for the user's reference
statement_urlNo
statement_textNoFull text of the landlord's reconciliation statement

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations present, the description carries the full burden, and it does disclose the asynchronous contract (returns a request id, poll a sibling after about 3 minutes) plus a graceful-degradation path when documents are unreadable. It does not mention authentication, quota, or cost, so it falls short of a 5.

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?

Purpose is front-loaded in the first clause, and every sentence carries actionable content (inputs, formatting, polling, fallback). The middle sentences are dense and slightly run-on, but nothing is pure 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?

For a 7-parameter, no-output-schema tool this covers the essentials: what is compared, how to supply documents, how results are retrieved asynchronously, and what to do when inputs cannot be read. The polling return value is explained in place of a missing output schema.

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 only 57%, and the description compensates meaningfully: it tells the agent lease_text must include amendments, that page-break markers preserve citation accuracy, and that lease_url/statement_url accept HTTPS PDF links. It leaves contact_email and property_name to the schema, which documents them.

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 names a specific verb (checks/audits) and resource (CAM/operating expense reconciliation against the lease) and enumerates exactly what is compared: pro-rata share, caps, admin fees, excluded costs, gross-up, totals, late delivery. An agent can distinguish this from the sibling get_audit_result, which it also references by name.

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

Usage Guidelines5/5

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

It gives explicit input instructions (pass the full lease with amendments and the full reconciliation, mark page breaks as '--- page N ---', URLs also work), a sequencing rule (call get_audit_result after ~3 minutes), and a fallback path (tell the user to forward files to audit@tenantback.com if they cannot be read). This is close to a complete invocation playbook.

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

get_audit_resultGet audit resultBInspect

Status and findings of an audit started with audit_cam_reconciliation. Present the total, then each finding with its lease clause and math. When money is recoverable, mention that the user can open the workspace link to approve an objection letter; Tenantback handles the landlord and keeps 25% of what is recovered.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYes

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses the commercial model (Tenantback keeps 25% of recoveries) and the approval workflow via a workspace link, and the word 'Status' hints the audit may be async/incomplete. It omits auth requirements, error behavior, and any pagination or result-size limits.

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?

Three sentences, front-loaded with purpose before presentation instructions. The pricing detail ('keeps 25% of what is recovered') is longer than strictly necessary for invoking the tool, but it is arguably needed for the agent to relay results correctly, so the length is mostly justified.

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?

There is no output schema, and the description partially compensates by enumerating what comes back: a total, individual findings with lease clause and math, and a recovery/approval path. It still leaves the only parameter and the meaning of possible 'status' values unexplained, so it is adequate but not complete.

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 description coverage is 0% and the single parameter, request_id, is never mentioned in the description. The link to audit_cam_reconciliation implies the id originates there, but the description does nothing to compensate for the undocumented parameter.

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 names a specific resource (status and findings of an audit) and explicitly ties it to the sibling that creates it: 'started with audit_cam_reconciliation'. That lets an agent separate this retrieval from the initiating tool without reading schemas. It is slightly indirect (no leading verb like 'Retrieve') but the purpose is unmistakable.

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 phrase 'started with audit_cam_reconciliation' implies this is the follow-up call, so sequencing is inferable. However, it never states prerequisites such as whether the audit must be finished, how to handle a still-running status, or what to do if the request_id is invalid. Guidance is implied rather than stated.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updates
    • First observedaudit_cam_reconciliation
    • First observedget_audit_result

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables renters to cross-examine their rent ledger against their lease using deterministic tools, uncovering discrepancies in charges, fees, and rent amounts.
    15
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Audit any Airbnb, VRBO, or STR listing URL for dollar-denominated revenue gaps. Free tier shows category grades and monthly losses. Pro tier unlocks ranked action plans.
    6 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents and finance teams to extract structured fields from messy invoices and audit them before payment, applying seven evidence-backed risk rules that catch total/tax mismatches, duplicate invoices, missing fields, future dates, and round amounts, then returning a 0–100 score with a payment link. Exposes four MCP tools over stdio and Streamable HTTP (spec 2025-11-25) plus a web UI, backed by an optional AWS Bedrock or OpenAI-compatible extraction brain that degrades gracefully to a zero-dependency offline engine.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources