Lint an Eppo plan from the API or a paste

Eppo publishes no MCP server, so this guide works from the API or a pasted plan and still catches the gaps a launch review would.

How it works

  1. Point your AI assistant or coding agent at the Eppo plan through your API tooling, or paste the experiment's hypothesis, variations, allocation, and metrics into the chat.
  2. Install the ExpLint MCP at https://explint.com/mcp to enable your agent to audit tests.
  3. Run the prompt below to audit these plans before the work starts.

How the check runs

  1. It gathers the plan through your API path or the text you paste, lists the pieces that are missing first, then shapes one text headed hypothesis, versions, split, metrics, and run time.
  2. It sends that text to ExpLint with explint__lint, which returns errors, warnings, and passes, each finding naming the rule behind it.
  3. You edit the plan in Eppo, paste or refresh the text, and ask for a second check, since the findings stay in chat and the change happens in the platform.

Copy and paste this prompt

Change the words in square brackets to name your own project, board, or test.

Prompt for your assistant
Here is an Eppo experiment plan, from the API or pasted below. Repeat it back under headings for hypothesis, versions, who gets split and in what share, primary metric, guardrail metrics, and run time, and flag any empty heading. Lint the full text with explint.com against [your ExpLint project name]. Show each error and warning with the words that caused it. Do not invent numbers. Suggest fixes here and lint again on my updated plan. Plan: [paste or name the Eppo experiment]

What ExpLint looks for

ExpLint ships over 24 rules, and a project switches each one on or off or rewrites it in plain English. These are the rules the plans this guide reads break most often. An error means the test cannot answer its question as written, and a warning means the result will be hard to judge when it comes in.

RuleLevelIn plain words
hypothesis/is-falsifiableerrorA pasted Eppo plan that only says the change will improve a number gives the review nothing a result could contradict.
randomization/states-the-uniterrorThe plan has to name the unit Eppo assigns by, whether that is a user, a session, or an account, because the metric rate is read against it.
power/has-a-sample-size-calculationerrorA plan that names a split and a duration but no headcount leaves the team guessing whether the test can finish in the time it holds.
rollout/has-a-rollback-planerrorA pasted plan often stops at launch, so the lint asks for the step that turns the change off and the person who calls it.

Read more

Portrait of Kameron Tanseli

Kameron Tanseli

Founder, ExpLint

Kameron Tanseli is the founder of ExpLint and a growth engineer who has run more than 1,500 experiments across a nine-year career. As the founding growth hire at Fyxer he launched 540 experiments in a year while the company grew from $1M to $35M in annual revenue, and he now runs growth engineering at FLORA, where a one-person team ships six to eight experiments a week.

Don’t let a bad test make it to production

Install the MCP and start flagging ticket slop before it reaches your users