npm-mcp
npm-mcp
npm-mcp — это небольшой, предназначенный только для чтения сервер Model Context Protocol для публичного реестра npm. Он позволяет MCP-совместимым ИИ-клиентам обнаруживать npm-пакеты и просматривать целевые метаданные пакетов, не открывая возможностей установки, публикации, входа в систему, работы с оболочкой, файловой системой или произвольной загрузки.
Запуск с Docker
См. краткое руководство по Docker, чтобы запустить сервер и MCP Inspector из свежего клона. Основная команда:
docker compose --profile inspector up --build -dЧтобы проверить использование MCP-инструментов под управлением модели без локального запуска модели, используйте LibreChat с маршрутизатором бесплатных моделей OpenRouter:
docker compose -f compose.yaml -f compose.openrouter.yaml --profile openrouter up --build -dЗатем откройте http://127.0.0.1:3080. Ключ API OpenRouter требуется даже для бесплатных моделей. Инструкции по настройке и использованию см. в OPENROUTER_QUICKSTART.md. Локальный профиль Ollama остаётся доступным в качестве опциональной полностью локальной альтернативы.
Related MCP server: npm-mcp
Инструменты
Инструмент | Используйте, когда | Входные данные |
| Точное имя пакета неизвестно или нужны альтернативы |
|
| Точное имя пакета известно и нужны метаданные или зависимости |
|
| Нужен только текущий dist-tag |
|
| Нужны опубликованные версии и все dist-tags |
|
Все инструменты возвращают JSON в виде текста для широкой совместимости с клиентами и предоставляют то же значение в виде структурированного содержимого MCP. Ответы по пакетам намеренно фильтруются, а не возвращают полный документ метаданных реестра.
Требования и установка
Node.js 20 или новее (для встроенных
fetchиAbortSignal.timeout)npm
git clone <repository-url>
cd npm-mcp
npm installЛокальный запуск
npm startПроцесс ожидает сообщения MCP на stdin и записывает ответы протокола в stdout. Не вводите данные в него интерактивно; его должен запускать MCP-клиент. Режим разработки с автоперезапуском доступен через npm run dev.
Развёртывание
Для локальных клиентов используйте точку входа stdio. Для развёртывания в Docker и облаке используйте stateless-точку входа Streamable HTTP по адресу /mcp; по умолчанию она требует bearer-токен и предоставляет /healthz для проверок работоспособности. Инструкции по Docker Compose и развёртыванию в Google Cloud Run, Azure Container Apps, AWS App Runner/ECS Fargate и Kubernetes см. в руководстве по развёртыванию в Docker и облаке.
Файл Compose также включает официальный MCP Inspector в качестве опционального клиента. Выполните docker compose --profile inspector up --build -d, затем откройте http://127.0.0.1:6274. Инструкции по настройке токена и использованию CLI см. в разделе Запуск MCP-клиента в Docker.
Тестирование
npm testТесты используют встроенный в Node.js test runner и имитированные ответы fetch, поэтому им не нужен живой реестр npm.
Чтобы интерактивно проверить сервер с помощью MCP Inspector:
npx @modelcontextprotocol/inspector node src/index.jsОткройте URL, напечатанный Inspector, подключитесь, выберите Инструменты, выберите инструмент, введите его аргументы и запустите его.
Конфигурация MCP-клиента
Используйте абсолютный путь, чтобы клиент мог запустить сервер из любого рабочего каталога:
{
"mcpServers": {
"npm": {
"command": "node",
"args": ["/absolute/path/to/npm-mcp/src/index.js"]
}
}
}Точный внешний ключ конфигурации может отличаться в зависимости от MCP-клиента, но команда и аргументы одинаковы.
Примеры вызовов
{"name":"npm_search_packages","arguments":{"query":"postgres orm","limit":10}}{"name":"npm_get_package","arguments":{"packageName":"@nestjs/core"}}{"name":"npm_get_latest_version","arguments":{"packageName":"react"}}{"name":"npm_get_versions","arguments":{"packageName":"axios"}}Архитектура
src/index.jsотвечает только за запуск stdio.src/http.jsиsrc/http-server.jsпредоставляют аутентифицированную точку входа Streamable HTTP, используемую контейнерами.src/server.jsсоздаёт MCP-сервер и регистрирует четыре инструмента.src/tools/содержит схемы, целевую обработку ответов и обработчики.src/services/npm-registry.js— единственный модуль, который взаимодействует с npm. Он проверяет имена пакетов, ограничивает URL-адреса официальными конечными точками реестра, применяет тайм-аут и нормализует ошибки сети/HTTP/ответов.
Scoped-имена кодируются как один сегмент пути реестра. Сервер не сохраняет состояние и не выполняет запись.
Возможные улучшения
Возможные будущие дополнения включают статистику загрузок, анализ зависимостей, информацию о безопасности пакетов, кэширование и удалённую аутентификацию на основе OAuth.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceAn MCP server for searching, inspecting, and evaluating NPM packages through health scoring and license risk assessments. It provides comprehensive package analysis including maintenance status, popularity trends, and security vulnerability reports to help users make informed dependency decisions.3MIT
- AlicenseBqualityCmaintenanceMCP server for npm package management — publish, install, audit, search, security & dependency health38401MIT
- AlicenseAqualityCmaintenanceMCP server that provides npm package information for AI agents during TypeScript development.7181MIT
- AlicenseAqualityDmaintenanceMCP server providing npm registry search, package details, dependency auditing, bundle size estimation, and package comparison tools for AI agents.546MIT
Related MCP Connectors
Provide AI-powered real-time analysis and intelligence on NPM packages, including security, depend…
npm, PyPI & crates.io intel for AI agents: versions, popularity, deps, health. No API keys.
MCP server for hex.pm and hexdocs.pm: search, inspect, compare, and audit Elixir packages
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/rajeshn95/npm-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server