
Company News
Jerod Santo Joins Socket as Head of Media
Allow myself to introduce... myself.
A proxy MCP that exposes meta-tools so agents can discover and call upstream MCP tools on demand, without loading every tool schema into the context window.
Full documentation: dynamicmcp.tools
discover_tool and use_tool to the agent. Full schemas of irrelevant tools never enter context.description in your config and they stay disconnected until the agent calls load_mcp — deferring entire MCP catalogs out of context until they are actually needed.stdio child processes, streamable-http, and sse — all in one config.${VAR} and ${VAR:-default} environment variable interpolation.# Before — tool schemas go straight into context
npx -y chrome-devtools-mcp@latest
# With dynmcp — only discover_tool and use_tool are exposed
npx dynmcp@latest -- npx -y chrome-devtools-mcp@latest
Everything after -- is the command used to launch the upstream MCP. In this mode tool names are exposed as-is (no namespace prefix).
Create a mcp.json in your project root:
{
"$schema": "https://dynamicmcp.tools/config.json",
"mcp": {
"chrome-devtools": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "chrome-devtools-mcp@latest"]
},
"filesystem": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]
}
}
}
Then run:
# Auto-discover mcp.json or .mcp.json
npx dynmcp@latest
# Or specify explicitly
npx dynmcp@latest --config ./my-config.json
In config-file mode tool names are namespaced as <mcp-name>/<tool-name> to avoid collisions.
For configs with heavier MCPs you only sometimes need (Chrome DevTools, remote APIs, anything expensive to keep open), give the entry a description. That MCP becomes lazy: dynmcp doesn't open the connection at startup, and the agent only sees a short summary of what the MCP does. When the agent decides it actually needs that MCP, it calls load_mcp with the server's name and the connection opens on demand.
{
"$schema": "https://dynamicmcp.tools/config.json",
"mcp": {
"filesystem": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]
},
"chrome-devtools": {
"description": "Chrome browser automation and DevTools control. Navigate pages, take screenshots, inspect the DOM, run JavaScript. Use when you need to interact with or debug a live web page.",
"transport": "stdio",
"command": "npx",
"args": ["-y", "chrome-devtools-mcp@latest"]
}
}
}
filesystem connects at startup. chrome-devtools stays lazy until the agent loads it. Once loaded, it behaves exactly like an eager MCP for the rest of the session.
See the Dynamic Discovery guide for the capability caveat, the retry budget, and tips on writing descriptions agents can act on.
Full docs cover environment variable interpolation, all transport options, and the complete CLI reference.
FAQs
Dynamic MCP context management tool for AI MCP-enabled agents and clients.
The npm package dynmcp receives a total of 14 weekly downloads. As such, dynmcp popularity was classified as not popular.
We found that dynmcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Allow myself to introduce... myself.

Research
/Security News
A Twitch browser extension on Chrome and Firefox forwards users’ live OAuth session tokens through proxies controlled by a Russian bot service.

Security News
Anthropic found biased reasoning and recklessness drove Claude Mythos 5 to publish malware on PyPI and compromise a security vendor.