# A-du: ADU rentals, plans and rules (homes.a-du/a-du): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/homes.a-du%2Fa-du/versions/latest)
- Connected to: https://a-du.homes/mcp
- Homepage: https://a-du.homes/agents
- Repository: https://github.com/cfkoss/a-du
- Scoring rules: v2
- Tools: 24
- Average: 63.0 / 100 (Cloudy)
- Near-identical pairs: 0

This page shows how A-du: ADU rentals, plans and rules (homes.a-du/a-du)'s tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Minor: The server's instructions are 4675 characters. Claude Code reads only the first 2,048 by default (Codex 0.154.0 reads them whole). Put what the server is for first.

## Tools

- `subscribe_listing_alert`: 33 / 100
  - Major: Arguments without a description: city, min_price, max_price, bedrooms_min, bathrooms_min, property_type, furnished, pets_allowed.
  - Minor: String arguments with no constraint or example: city, property_type.
  - Minor: No `required` list, so every argument is optional.
  - Minor: The meaning of the boolean argument furnished is unclear.
  - Minor: The meaning of the boolean argument pets_allowed is unclear.
  - Minor: Says nothing about what it returns.
- `get_thread`: 46 / 100
  - Minor: Arguments without a description: limit.
  - Minor: No `required` list, so every argument is optional.
- `get_my_activity`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `reply_to_thread`: 50 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: thread_id.
  - Minor: Says nothing about what it returns.
- `start_application`: 51 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `send_inquiry`: 55 / 100
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: listing_id. Name the tool or the place that returns it, or models look it up first.
- `estimate_permit_fees`: 57 / 100
  - Major: Arguments without a description: jurisdiction, construction_type, square_footage, bedrooms, bathrooms, stories, foundation_type, needs_new_sewer_lateral, parcel_in_hillside, needs_fire_sprinkler, needs_new_water_service, needs_new_electric_panel, plan_check_speed.
  - Minor: The meaning of the boolean argument needs_new_sewer_lateral is unclear.
  - Minor: The meaning of the boolean argument parcel_in_hillside is unclear.
  - Minor: The meaning of the boolean argument needs_fire_sprinkler is unclear.
  - Minor: The meaning of the boolean argument needs_new_water_service is unclear.
  - Minor: The meaning of the boolean argument needs_new_electric_panel is unclear.
- `request_tour`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Required identifiers whose description does not say where the value comes from: listing_id. Name the tool or the place that returns it, or models look it up first.
- `start_build_project`: 61 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
- `get_rental`: 62 / 100
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.
- `get_rent_estimate`: 63 / 100
  - Major: Arguments without a description: bedrooms, bathrooms, square_feet.
  - Minor: Says nothing about what it returns.
- `search`: 64 / 100
  - Major: Arguments without a description: query.
- `draft_listing`: 65 / 100
  - Minor: Arguments without a description: description, bedrooms, bathrooms, square_feet, property_type.
  - Minor: String arguments with no constraint or example: property_type, available_from.
- `search_managers`: 66 / 100
  - Minor: Arguments without a description: city.
  - Minor: No `required` list, so every argument is optional.
- `start_plan_listing`: 66 / 100
  - Minor: No `required` list, so every argument is optional.
- `resolve_parcel`: 67 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `match_plans_to_lot`: 68 / 100
  - Minor: No `required` list, so every argument is optional.
- `fetch`: 69 / 100
  - Major: Arguments without a description: id.
- `start_listing`: 72 / 100
  - Minor: Arguments without a description: bedrooms, bathrooms, square_feet.
  - Minor: No `required` list, so every argument is optional.
- `search_plans`: 73 / 100
  - Minor: Arguments without a description: bedrooms_min, min_sqft, max_sqft.
  - Minor: No `required` list, so every argument is optional.
- `get_adu_rules`: 76 / 100
- `search_services`: 77 / 100
  - Minor: Arguments without a description: city.
  - Minor: No `required` list, so every argument is optional.
- `ask_adu`: 80 / 100
  - Minor: Arguments without a description: question.
- `search_rentals`: 84 / 100
  - Minor: No `required` list, so every argument is optional.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
