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.