Most MCP servers give agents more ways to act. Almost none give them a way to check they were right.
Almost every server I add gives the agent another way to do something. Read the file system, hit an API, query a DB, control a browser, send a message. Which is genuinely great, the agent can touch more of the world now.
What almost none of them give it is a way to check whether the thing it just did actually worked. The agent calls the tool, gets a success response, moves on. But "the tool returned 200" and "the outcome the user wanted actually happened" are different claims, and nothing in the loop closes that gap.
Concrete version: agent edits a web app, says done. It had filesystem tools, maybe a shell, maybe even a browser tool it used to poke around once. None of that tells it whether the login flow it just changed still works. No feedback signal, so it asserts success and stops.
I've started thinking the missing primitive isn't another action tool, it's a verification tool. Something the agent calls after it acts that hands back real ground truth it can't talk its way past. Run the actual flow, check the actual result, return a pass or fail the model didn't author itself.
Is anyone here building this side of it? Feels like the whole ecosystem is optimized for "give the agent more capabilities" and nobody's on "give the agent a way to find out it was wrong." Where's the verification layer in your setup, if it exists at all?