Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/feniix/pi-extensionsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/mcp/feniix/pi-extensions/exa)<a href="https://agentmods.dev/mcp/feniix/pi-extensions/exa"><img src="https://agentmods.dev/badge/mcp/feniix/pi-extensions/exa/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/mcp/feniix/pi-extensions/exa"><img src="https://agentmods.dev/badge/mcp/feniix/pi-extensions/exa.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
exa scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
{
"exa": {
"type": "http",
"url": "https://mcp.exa.ai/mcp?tools=web_search_exa,web_fetch_exa,web_search_advanced_exa",
"headers": {
"x-api-key": "${EXA_API_KEY}"
},
"env": {
"EXA_API_KEY": "${EXA_API_KEY}"
}
}
}What else .mcp.json configures
This page is one entry in a file that holds 3. Installing the file brings all of them; each is measured and scanned on its own page.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 12 lines scan A c2f498152c9d
exa is an MCP server published in the GitHub repository feniix/pi-extensions (26 stars, last pushed 4d ago), licensed MIT. Its token cost is not measured: an MCP server costs its tool schemas, not its config file. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other mcp servers, from other repositories
charlotte
Renders web pages into structured, agent-readable representations using headless Chromium. Runs locally from the @ticktockbent/charlotte npm package.
stdlib
Standard library for Webiny — platform-agnostic, Node.js, and browser utilities. Runs locally from the @webiny/stdlib npm package.
playwright
Lets the agent drive a real browser: open pages, click, type, take screenshots and read the accessibility tree, using Playwright. Runs locally from the @playwright/mcp npm package.
context7
Context7's hosted MCP server: up-to-date library documentation and code examples on demand. Remote server at mcp.context7.com.
browser-controller
Control your browser. Runs locally from the browser-controller npm package.
chrome-devtools
Lets the agent inspect and automate a live Chrome instance through the DevTools protocol: performance traces, network, console. Runs locally from the chrome-devtools-mcp npm package.