rentready Check a property

rentready / Developers

rentready for developers and AI agents

The same check as the browser tool, from the terminal, as a Python package, a GitHub Action or an MCP server. Zero dependencies, one Python file, MIT licensed (source). The browser version, rentready.js, is a line-for-line port held to identical answers by the test suite.

In the terminal

curl -sL https://raw.githubusercontent.com/genzagents/rentready/main/rentready/__init__.py | python3 - check "B3 2TA" --gas=2026-02-01 --eicr=2023-06-01 --eicr-due=2028-06-01 --epc=2017-05-01 --epc-rating=D
rentready 0.8.1  B3 2TA  region: West Midlands
Window: requirement starts 2026-12-15, deadline 2027-03-14 (137 days from 2026-10-28); the service opens for everyone on 2026-12-15
  PASS registration deadline: West Midlands requirement starts 2026-12-15, deadline 2027-03-14; you can register from 2026-12-15
  WARN gas safety record: expires 2027-02-01, before the 2027-03-14 deadline (96 days)
  PASS EICR: valid to 2028-06-01
  PASS EPC: valid to 2027-05-01
  INFO EPC rating: rating D meets today's E minimum; it would not meet the C minimum set for all tenancies from 1 October 2030 (government response, 21 Jan 2026; not yet law)
Do next:
  - Book before 2027-02-01: annual gas safety check by a Gas Safe engineer; upload the record and issue date
Fee: £65 a year (65 per property); renewal every 12 months: the renewal date is the last day of the 12 months from your first entry, one date for the whole portfolio (draft regulation 10); later properties pay pro rata
Upload at registration (within 28 days of the entry, or it becomes inactive):
  - Latest gas safety record (CP12) and its issue date, if the property has gas
  - EICR (or EIC if no EICR yet) and its expiry date
  - Latest EPC, and any MEES exemption; if the EPC has lapsed, the start date of the current tenancy
READY: nothing expires before your deadline. Gather the details above and register when your window opens.

Several properties, and the dates in your calendar

New in 0.2.0. Put your properties in a CSV (name, postcode, gas, no_gas, eicr, eicr_due, epc, epc_rating) and get one table with every warning, the total fee and the earliest deadline. Then write an .ics file with the day your region's window opens, the deadline and every gas, EICR and EPC expiry, each with reminders 60 and 14 days before, and import it into Google, Apple or Outlook calendar. Nothing is stored anywhere but your own calendar.

rentready portfolio properties.csv
rentready calendar properties.csv --out=rentready.ics
rentready 0.8.1  portfolio of 3 (3 in England)  today 2026-10-28
Property                     Postcode  Region                   Deadline    Status    Next
12 Example St                B3 2TA    West Midlands            2027-03-14  READY     2026-12-15 registration window opens (48d)
Flat 4                       SW1A 1AA  London                   2027-10-14  READY     2027-01-01 EICR expires (65d)
No EICR                      M1 1AE    North West               2027-08-14  NOT READY 2027-05-01 gas safety record expires (185d)
12 Example St:
  WARN gas safety record: expires 2027-02-01, before the 2027-03-14 deadline (96 days)
Flat 4:
  WARN EICR: expires 2027-01-01, before the 2027-10-14 deadline (65 days)
No EICR:
  WARN gas safety record: expires 2027-05-01, before the 2027-08-14 deadline (185 days)
  FAIL EICR: no EICR date given (an EICR is required at least every 5 years, sooner if the report says so, and uploaded with its expiry date)
Fee: £195 a year for 3 properties (£65 each); renewal every 12 months: the renewal date is the last day of the 12 months from your first entry, one date for the whole portfolio (draft regulation 10); later properties pay pro rata
Earliest deadline: 2027-03-14. 2 ready, 1 not ready.

Your own agent can do the same: the MCP server has check_property, check_portfolio, make_calendar and registration_pack.

The registration pack (in the browser from 0.7.0)

Press Show my registration pack after a check on the main page, print it or save it. Every question the service asks, in its own words, for you once and for each property: dwelling, tenancy, rent, gas, EICR and EPC. Answers come pre-filled from your CSV, each gap is marked GATHER with the column to add, and each certificate gets a file name to scan it as and a state: ready, renew soon, or renew before you upload. A property is ready to register only when every answer and file is in hand.

rentready pack properties.csv --out=pack.md

An email when something needs action (0.3.0)

Put properties.csv in a private GitHub repo and add one workflow file. On the first of every month rentready watch re-checks every property, keeps one issue up to date with the whole table, and comments on it only when a gas safety record, EICR or EPC comes within 60 days of expiring, your region's window opens, a deadline nears or passes, or a property stops being ready. GitHub emails you the comment. Free, no server, no account beyond GitHub. Issue #1 watches the example portfolio.

steps:
  - uses: actions/checkout@v4
  - uses: genzagents/rentready@v0.8.1
    with:
      portfolio: properties.csv

Full template: docs/watch.yml. Or from cron on your own machine: rentready watch properties.csv --state=state.json.

Install

pip install git+https://github.com/genzagents/rentready
claude plugin marketplace add genzagents/marketplace && claude plugin install rentready@genzagents

MIT. Source. Sibling of citable. Your dates never leave your machine; the only network call is the postcode lookup.

The only network call is the postcode lookup at postcodes.io (skip it with --region=). Your dates stay on your machine.