rentready

io.github.genzagentsPublished by GitHub account genzagentsv0.8.1Updated Nov 6, 2026

Is an English rental ready for the landlord database? Deadline, gas/EICR/EPC, fee, checklist.

Overview

AI-generated overview

Checks whether an English rental property is ready for the government landlord database: region deadline, certificate validity, fee and registration checklist.

What you can do
  • Check one property's registration window, deadline and certificate state from a postcode and certificate dates
  • Check a whole portfolio from CSV or JSON text and get one table with every failure, warning, total fee and earliest deadline
  • Generate an .ics calendar of window openings, deadlines and certificate expiries with reminders
  • Produce a markdown registration pack listing every question the service asks, pre-filled answers, gaps to gather and file names for certificates
When to use it
Useful for landlords, letting agents or property managers with rentals in England who want to know when their region's registration window opens, whether gas safety, EICR and EPC records will still be valid at the deadline, and what to prepare before registering.
Requirements
Runs locally as a stdio MCP server, started with uvx from the PyPI package or as a Python file; no account, API key or environment variable is declared. Region lookup uses a postcode lookup service over the network unless a region is supplied directly.
Before you install
It does not register anything, fetch certificates or store data; the user still completes registration through GOV.UK One Login. The postcode is sent to an external postcode lookup service unless the region is given explicitly. Dates come from draft regulations that were not yet approved, so figures and deadlines should be checked against official guidance. Not legal advice.

Installation

In SourceWeft

  1. Open rentready in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

rentready

Is your rental ready for England's landlord database?

From 15 December 2026 every private landlord in England must register each let property on the government's "Register your rental property" service (Renters' Rights Act 2025), region by region, at £65 per property per year, uploading the gas safety record, EICR and EPC. Unoccupied properties need not be registered yet, and landlords of supported exempt accommodation are excluded (official guidance). Without an active entry the court cannot make a possession order, except on Ground 7A or Ground 14 (section 90). Penalties are up to £7,000 for a breach (section 91) and up to £40,000 for the offences in section 92: false information, continuing a breach after a penalty, or a repeat within five years. rentready tells you your region's window and deadline, whether your certificates will still be in date, what to book, what to upload and what it costs. Zero dependencies, one file, also an MCP server and a Claude Code plugin, so your own agent can run it.

No install: check in your browser at https://genzagents.github.io/rentready/ (0.7.0: now with the registration pack). Add your properties or paste a CSV, see every property's window, deadline and certificate state, then download one .ics with every date and reminder. It runs docs/rentready.js, a line-for-line port of the Python that tests/test_web.py holds to identical answers and an identical calendar on five dates; the only network call is the postcode lookup at postcodes.io, and your list stays in your browser.

bash
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 MidlandsWindow: 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 dateFee: £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 rataUpload 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 tenancyREADY: nothing expires before your deadline. Gather the details above and register when your window opens.

The timetable

RegionRequirement startsDeadline (midnight)
West Midlands15 Dec 202614 Mar 2027
East of England15 Jan 202714 Apr 2027
East Midlands15 Feb 202714 May 2027
South East15 Mar 202714 Jun 2027
Yorkshire and Humber15 Apr 202714 Jul 2027
North West15 May 202714 Aug 2027
North East15 Jun 202714 Sep 2027
London15 Jul 202714 Oct 2027
South West15 Aug 202714 Nov 2027

Registration opens for all of England on 15 December 2026. Source: the draft Private Rented Sector Database Regulations 2026, laid before Parliament on 9 September 2026 and not yet approved: the Lords Secondary Legislation Scrutiny Committee drew them to the special attention of the House (13th report, 22 October 2026) and committees of both Houses debated them on 28 October 2026 (Parliament record), as summarised by the NRLA and HCR Law; the same dates are in the official guidance at housinghub.campaign.gov.uk, which names the region "Yorkshire and Humber". Upload within 28 days of the entry and one renewal date for every property are in the draft regulations (regulation 6(2), regulation 10) and in the official guidance (29 October 2026), which also gives the fee formula: no charge for days before 15 November 2027, so the first payment is £5.34 to £64.82. The £65 fee is from the official guidance; the draft leaves the amount to the database operator (regulation 14). Miss the 28-day upload and the entry becomes inactive (regulation 11(2)(a)); any later change must be updated within 28 days (regulation 9(4)). The official guidance confirms the two 28-day rules and the single renewal date. Check gov.uk before relying on a date.

Install

bash
pip install git+https://github.com/genzagents/rentready        # or copy rentready/__init__.py anywhererentready regionsrentready check "SW1A 1AA" --no-gas --eicr=2024-01-01 --epc=2020-01-01 --properties=3 --json

Exit code 0 when nothing fails, 1 otherwise, so it works in a cron or a CI step.

A whole portfolio from one CSV (0.2.0)

bash
rentready portfolio properties.csv          # one line per property, every FAIL/WARN, total fee, earliest deadlinerentready portfolio properties.csv --json

properties.csv has a header row with any of name, postcode, gas, no_gas, eicr, eicr_due, epc, epc_rating, tenancy_start, region (eicr is the report's issue date, eicr_due the date it gives for the next inspection) (common spellings like Address, Post Code, Gas safety, Rating are accepted; a JSON list of objects works too):

csv
name,postcode,gas,no_gas,eicr,epc,epc_rating12 Example St,B3 2TA,2026-02-01,,2023-06-01,2017-05-01,DFlat 4,SW1A 1AA,,yes,2024-01-01,2020-01-01,C

Dates in your calendar, with reminders (0.2.0)

bash
rentready calendar properties.csv --out=rentready.ics             # whole portfoliorentready calendar "B3 2TA" --gas=2026-02-01 --eicr=2023-06-01 --epc=2017-05-01 --out=rentready.icsrentready calendar properties.csv --reminders=90,30,7 > rentready.ics

One all-day event per dated thing: the day your region's window opens, the registration deadline, and each gas safety, EICR and EPC expiry, each with reminders 60 and 14 days before (change with --reminders). Import the file into Google, Apple or Outlook calendar; UIDs are deterministic, so re-importing after a renewal updates the events instead of duplicating them. This is the free, serverless version of the monthly watch: nothing is stored anywhere but your own calendar.

The registration pack (0.5.0; in the browser from 0.7.0)

bash
rentready pack properties.csv --out=pack.md          # add --organisation for a company or trust

No terminal? On https://genzagents.github.io/rentready/ press Show my registration pack after a check: the same pack (docs/rentready.js, parity-tested against pack.py), printable or saved as registration-pack.md for your agent. Extra columns pasted in the CSV are kept with your list in the browser.

Every question Register your rental property asks, in the service's own words (gov.uk "Get ready to register", Oct 2026): you as the landlord once, then per property the dwelling, tenancy, rent and health-and-safety sections. Answers come pre-filled from the CSV, a GATHER line marks each gap, and the pack tells you which columns to add to fill them (ownership, dwelling_type, bedrooms, let, occupants, households, licence, furnished, rent, rent_frequency, bills, optional freeholder, manager). Each certificate gets a file name to scan it as (12-example-st_eicr_2023-06-01.pdf) and a state: READY, RENEW SOON (expires before your deadline), RENEW (lapsed: renew before you upload) or GATHER. A lapsed EPC is accepted with the current tenancy's start date, and an F or G rating adds the MEES exemption question. A property is ready to register only when every answer and file is in hand. Nothing registers for you: you start the entry with GOV.UK One Login.

Watch

A certificate that lapses in month four is the thing nobody notices until the deadline. The watch is the alarm, and it runs for free as a GitHub Action in a private repo of yours that holds properties.csv: on the first of every month it re-checks every property, keeps one issue up to date with the full table, and comments on that issue only when something needs action: a gas safety record, EICR or EPC within 60 days of expiring, your region's window opening, a deadline nearing or passing, or a property no longer ready. GitHub emails the comment to you. No server, no account beyond GitHub, no dependencies; your dates never leave your repo except for the postcode lookup. Example: issue #1 watches docs/example.csv.

Copy docs/watch.yml to .github/workflows/rentready-watch.yml:

yaml
on:  schedule: [{ cron: "23 7 1 * *" }]   # the 1st of each month  workflow_dispatch:  push: { paths: [properties.csv] }permissions: { issues: write, contents: read }jobs:  watch:    runs-on: ubuntu-latest    steps:      - uses: actions/checkout@v4      - uses: genzagents/[email protected]        with:          portfolio: properties.csv          # warn-days: 90          # always-comment: "true"    # a monthly "all fine" email too

The same command runs from cron on your own machine with a local state file instead of an issue:

bash
rentready watch properties.csv --state=rentready-state.json      # exit 1 when something needs action

As an MCP server / Claude Code plugin

bash
claude plugin marketplace add genzagents/marketplaceclaude plugin install rentready@genzagents

Or add to any MCP client: uvx rentready mcp (from PyPI) or python3 /path/to/rentready/__init__.py mcp (stdio). Four tools: check_property, check_portfolio (CSV or JSON text in, one table out), make_calendar (returns the .ics text for one property or a portfolio) and registration_pack (the markdown checklist above).

Listed in the official MCP registry as io.github.genzagents/rentready.

mcp-name: io.github.genzagents/rentready

What it checks

  • Region from the postcode (postcodes.io, no key; --region= to skip the lookup). Wales and Scotland are flagged out of scope.
  • Registration window and deadline for that region; whether it is open, upcoming or missed.
  • Gas safety record (annual), EICR, EPC (ten-yearly): valid at the deadline, expiring before it, expired, or missing.
  • EICR: the law requires an inspection at least every 5 years, or by an earlier date if the last report says so (SI 2020/312, regulation 3(2)), and the service asks for the report's expiry date. Give the report's next-inspection date (--eicr-due, CSV column eicr_due) and rentready uses it; with only the issue date it assumes 5 years and says so in the result.
  • EPC rating against the current E minimum and the C minimum for all tenancies from 1 October 2030 (government response, 21 Jan 2026; not yet law).
  • The fee for N properties, the renewal rule, the full list of details the service asks for, and the penalties.

Hosted monthly watch (0.4.0)

The paid step for landlords who do not want a GitHub repo: pay once a year, paste your properties into the checkout, and get the same alerts in your inbox. The runner is in this repo and needs no server:

bash
rentready hosted run --dry-run        # polls Polar for subscribers, prints every email it would sendrentready hosted run                  # sends through Resend: first report within the hour, alerts on change, a monthly digestrentready hosted replay ~/.rentready-hosted/<id>.json   # re-runs a stored report from its stored inputs: IDENTICAL or DIFFERENT

Every email is reproducible from the inputs and date stored beside it. Setup and prices: docs/HOSTED.md. Letting agents can run it for their landlords from a file with --subscribers=subs.json, no payment provider needed.

What it does not do

It does not register for you, fetch certificates, or hold any data. It never sends your dates anywhere. Not legal advice.

Privacy

The check runs on your machine or, on the website, in your browser. The one network call sends the postcode (and nothing else) to postcodes.io to find the region, so postcodes.io sees that postcode and your IP address; pass --region= to skip it. The website is hosted on GitHub Pages, which may log visitors' IP addresses; it sets no cookies and runs no analytics. Details: privacy. Made by GenZAgents, London (about); questions and corrections via GitHub issues.

Changes

0.8.1 (packaging only, no behaviour change)

  • Listed in the official MCP registry as io.github.genzagents/rentready (server.json, published from GitHub Actions with GitHub OIDC); the README carries the registry's mcp-name ownership line. uvx rentready mcp runs the server.

0.8.0 (EICR correctness)

  • EICR expiry comes from the report's own next-inspection date when you give it (--eicr-due, CSV eicr_due, MCP eicr_due, a column in the browser), capped at 5 years from issue. Before, a report recommending 3 years got a false PASS because expiry was always issue date + 5 years. Issue + 5 years is now only a fallback, labelled as an assumption in the finding, in assumptions, and in the registration pack. Same logic in Python, the browser and the MCP server (parity-tested).

0.7.1 (accuracy fixes, no new features)

  • EPC: the C minimum applies to all private tenancies from 1 October 2030; the government dropped the proposed 2028 date for new tenancies (government response, 21 Jan 2026; not yet law).
  • Penalties: up to £40,000 covers the section 92 offences (false information, continuing a breach after a penalty, a repeat within five years), not only repeats; no possession order without an active entry except on Ground 7A or Ground 14 (section 90).
  • Renewal: the last day of the 12 months from your first entry (draft regulation 10); the program text now says the regulations are a draft (laid 9 September 2026, not yet approved).

Roadmap

rentready calendar puts every date in your calendar and rentready watch emails you from GitHub when something needs action, both free. The hosted monthly watch (no repo, no CSV to keep, the same alerts to your inbox) is the paid step, £12 a year for up to 10 properties; the runner shipped in 0.4.0 and the checkout opens when payments are set up. EPC lookup by address from the official open-data register is next (the register's API moved to get-energy-performance-data.communities.gov.uk in 2026 and needs a free key). Press the button on the project page if you want it.

MIT. Built by genzagents; sibling of citable.

Source: README.md at commit da6ee55

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.8.1LatestOct 29, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts