e18e-module-replacements-mcp
This MCP server helps you find lighter, faster, or native alternatives to common JavaScript/Node.js packages using the e18e project's curated replacement data.
Look up replacements (
lookup_replacement): Search for a specific module, API, or feature by name (e.g.,axios,Array.from,deep-merge) and get recommendations from three categories:Native APIs – built-in browser/Node.js API replacements (e.g.,
is-array→Array.isArray())Micro-utilities – packages replaceable by simple code snippets (e.g.,
array-flatten→array.flat(Infinity))Preferred modules – better, lighter third-party alternatives (e.g.,
axios→fetch,ofetch,ky)
Scan project dependencies (
scan_dependencies): Provide a map of package names and versions (from yourpackage.json) to get a report of which packages have recommended replacements, along with suggested alternatives and reference URLs.
The server is designed to integrate with AI assistants (e.g., Claude Desktop, VS Code/GitHub Copilot, Cursor, Windsurf) to automatically surface module replacement suggestions.
Allows configuration with Windsurf (Codeium's AI editor) to provide module replacement lookup and dependency scanning tools.
Allows configuration with VS Code (GitHub Copilot) to provide module replacement lookup and dependency scanning tools.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@e18e-module-replacements-mcpWhat's a lighter alternative to lodash?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
e18e Module Replacements MCP Server
An MCP (Model Context Protocol) server that exposes e18e module replacement data. It helps AI assistants suggest lighter, faster, or native alternatives to common JavaScript/Node.js packages.
What it does
The e18e project ("ecosystem performance") maintains curated lists of JavaScript module replacements — lighter alternatives, native API equivalents, and simple code snippets that can eliminate unnecessary dependencies.
This MCP server fetches three manifests from the e18e/module-replacements repository at startup and exposes them as tools:
Manifest | Description | Example |
native.json | Features replaceable by native browser/Node.js APIs |
|
micro-utilities.json | Tiny packages replaceable by code snippets |
|
preferred.json | Modules with better, lighter alternatives |
|
Related MCP server: @lpm-registry/mcp-server
Prerequisites
Node.js >= 18
Installation
Option 1: Use directly with npx (no install needed)
No installation required — just reference it in your MCP config (see below). The package is fetched and run automatically.
Option 2: Global install
npm install -g e18e-module-replacements-mcpOption 3: Build from source
git clone https://github.com/santoshyadavdev/e18e-module-replacements-mcp.git
cd e18e-module-replacements-mcp
npm install
npm run buildConfiguration
Add the server to your AI assistant's MCP configuration. The examples below use npx so there's nothing to install. If you installed globally or built from source, replace npx with the path to the binary.
Claude Desktop
Open your Claude Desktop config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"e18e-module-replacements": {
"command": "npx",
"args": ["-y", "e18e-module-replacements-mcp"]
}
}
}Then restart Claude Desktop.
VS Code (GitHub Copilot)
Create or edit .vscode/mcp.json in your workspace (or add to your user settings):
{
"servers": {
"e18e-module-replacements": {
"command": "npx",
"args": ["-y", "e18e-module-replacements-mcp"]
}
}
}Cursor
Open Cursor Settings → MCP and add a new server:
Name:
e18e-module-replacementsType:
commandCommand:
npx -y e18e-module-replacements-mcp
Windsurf
Add to your ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"e18e-module-replacements": {
"command": "npx",
"args": ["-y", "e18e-module-replacements-mcp"]
}
}
}Tools
lookup_replacement
Search for a replacement by feature name, API name, or module name. Searches across all three manifests with case-insensitive partial matching.
Input:
{ "name": "axios" }Example output:
## axios
**Source:** preferred
**Type:** module
**Replacements:** fetch, ofetch, ky
**URL:** https://e18e.dev/guide/module-replacements/fetchMore examples:
Query | What you get |
| Preferred replacements: |
| Native API — link to MDN docs |
| Preferred replacements: |
| Micro-utility snippet: |
scan_dependencies
Scan a dependency map (like the dependencies field from package.json) and find which packages have recommended replacements.
Input:
{
"dependencies": {
"axios": "^1.6.0",
"chalk": "^5.3.0",
"express": "^4.18.0",
"lodash": "^4.17.21"
}
}Example output:
Found 3 dependency replacement(s):
- **axios** → fetch, ofetch, ky
https://e18e.dev/guide/module-replacements/fetch
- **chalk** → picocolors, ansis
https://e18e.dev/guide/module-replacements/chalk
- **lodash** → es-toolkit
https://e18e.dev/guide/module-replacements/lodashUsage tips
Once the MCP server is connected to your AI assistant, you can ask things like:
"Is there a lighter alternative to chalk?"
"Scan my package.json dependencies for replacements"
"What's the native replacement for is-array?"
"Can I replace moment with something smaller?"
The AI assistant will automatically use the lookup_replacement and scan_dependencies tools to answer.
Remote Server (Cloudflare Workers)
This MCP server can also be deployed as a remote HTTP server on Cloudflare Workers.
Local Development
npm run dev:workerThe server starts at http://localhost:8787/mcp.
Deploy
# First time: authenticate with Cloudflare
npx wrangler login
# Deploy to Workers
npm run deployYour server will be available at https://e18e-module-replacements-mcp.<your-account>.workers.dev/mcp.
Add to GitHub Copilot
Go to your GitHub organization/repo settings → Copilot → MCP Servers
Click "Add MCP Server"
Label:
e18e-module-replacementsServer URL:
https://e18e-module-replacements-mcp.<your-account>.workers.dev/mcpAuthentication: None
Click "Connect"
Development
npm run dev # Watch mode — rebuilds on file changes
npm run dev:worker # Run Workers dev server locallyHow it works
On startup (stdio) or first request (Workers), the server fetches all three e18e manifests from GitHub
Manifests are cached in memory for the lifetime of the server process (or Workers isolate)
The server communicates over stdio (local) or HTTP (Workers) using the MCP protocol
If a manifest fails to load (e.g., no internet), the server still starts — tools will return an error message for the missing data source
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/santoshyadavdev/e18e-module-replacements-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server