efaimo is a CLI and nothing else. No account, no hosted service, no
config file, no daemon sitting between your agent and your tools. It
reads what you already have and prints what it found. Three of the
four exist today; their outputs below are real runs, printed as they
ran.
efaimo weighv0.1, Jul 24
What does this cost me?
Counts the tokens a server or a skill adds to your context, reproducing the way your host actually serializes it. Point it at a stdio command, a URL, a repo, a skill folder, or a whole installed client config.
$npx efaimo weigh "npx -y @modelcontextprotocol/server-everything"real run · 2026-07-17
The same run the cost page is built from. Run it yourself and you should get these numbers back; that is the point of them.
efaimo check --mcpv0.1, Jul 24
Does this survive July 28?
Runs a server against the 2026-07-28 specification, then against description quality and annotation hygiene. Every rule names the SEP it came from.
$npx efaimo check --mcp "npx -y @modelcontextprotocol/server-everything"real run · 2026-07-17
efaimo v0.1.0
check mcp npx -y @modelcontextprotocol/server-everything
grade C (79) 0 errors 4 warnings 1 info
! E104 server declares the logging capability; MCP Logging is deprecated in 2026-07-28 (SEP-2577) and logging/setLevel is removed
fix: log to stderr (stdio) or use OpenTelemetry; per-request level arrives via _meta io.modelcontextprotocol/logLevel
! E106 server/discover is not implemented (-32601 Method not found)
2026-07-28 servers MUST implement server/discover (SEP-2575) to advertise versions, capabilities, and identity; clients also use it as the back-compat probe.
fix: the 2.x SDKs implement server/discover for you
! E118 tools/list result omits ttlMs and/or cacheScope, which 2026-07-28 requires on list and resource-read results (SEP-2549, CacheableResult)
required on tools/list, prompts/list, resources/list, resources/read, resources/templates/list; cacheScope is "public" or "private"
fix: return ttlMs and cacheScope on these results so clients can cache and stop polling; the 2.x SDKs add them for you
! E122 tool "echo": description misses 3/4 quality axes (length 40..600; says when to use it; mentions the result)
i E107 results do not carry the resultType field required in 2026-07-28 ("complete" | "input_required")
RC clients treat missing resultType from earlier-protocol servers as "complete", so this is informational until you upgrade.
rules: https://github.com/efaimo-ai/efaimo/blob/main/docs/RULES.md
The official reference server, graded against the specification that publishes July 28. Even the reference implementation has homework, which is the news.
efaimo check --skillv0.2
Is this skill worth loading?
Frontmatter schema, trigger collisions across everything you have installed, token budget, reference integrity, injection patterns.
$npx efaimo check --skill ./SKILL.mdreal run · 2026-07-17
efaimo v0.1.0
check skill ./SKILL.md
grade A (100) 0 errors 0 warnings 0 info
no findings. clean.
rules: https://github.com/efaimo-ai/efaimo/blob/main/docs/RULES.md
One machine-local path line is removed from this output; nothing else is edited.
The dogfood clause from the method page, executed: this is efaimo grading its own SKILL.md. It has to keep this grade to ship.
efaimo testdesigning
Did the skill actually help?
Runs a task with the skill and without it, then reports the difference. Still a design, not a plan.
No output to show, because there is no implementation to
run, and this page only prints runs that happened. When
test ships you will see one here, formatted exactly like
the three above.
Nothing above has been released. The chips are milestones, not states.
The runs are real, from 2026-07-17, and reproducing them needs nothing
but Node: the weigh and check targets are public packages.