Npm Docs Server
БесплатноНе проверенFetches metadata and README documentation for NPM packages, with local caching via SQLite for improved performance.
Описание
Fetches metadata and README documentation for NPM packages, with local caching via SQLite for improved performance.
README
An MCP server that provides a tool to fetch metadata and documentation (including README content) for NPM packages, using a local cache to improve performance.
Features
- Fetches package metadata and README content using the npms.io API.
- Caches results locally using SQLite (
better-sqlite3). - Provides the
getNpmPackageDocsMCP tool. - Follows the standard MCP server structure.
Project Structure
/src: Contains all source code./config: Configuration management (ConfigurationManager)./services: Core logic (NpmDocService,CacheService)./tools: MCP tool definition (npmDocsTool.ts,npmDocsToolParams.ts)./types: TypeScript interfaces and custom errors (npmDocsTypes.ts)./utils: Shared utility functions (logger.ts,errors.ts).createServer.ts: Server instance creation and tool registration.server.ts: Main application entry point.
/dist: Compiled JavaScript output (generated bynpm run build). Contains the default cache DB file (npm-docs-cache.db).package.json: Project metadata and dependencies.tsconfig.json: TypeScript compiler options..eslintrc.json: ESLint configuration..prettierrc.json: Prettier configuration..gitignore: Git ignore rules.
Installation & Setup
Clone the repository (if applicable).
Install Dependencies:
npm installBuild the Server:
npm run buildThis compiles the TypeScript code into the
dist/directory.
Configuration
The server can be configured using environment variables:
NPM_CACHE_TTL: Cache Time-To-Live in seconds. (Default:86400- 24 hours)NPM_CACHE_DB_PATH: Path to the SQLite database file. (Default:./dist/npm-docs-cache.db- relative to the project root after build). If set, this overrides the default. Can be an absolute path or relative to the current working directory where the server is started.LOG_LEVEL: Set todebugfor verbose logging. (Default:info) Note: TheNPM_REGISTRY_URLconfig variable exists but is currently ignored as the server uses thenpms.ioAPI.
Running the Server
You can run the compiled server directly using Node:
node dist/server.js
For development, use the dev script for auto-reloading:
npm run dev
MCP Integration
To use this server with an MCP client (like Cline), add its configuration to your MCP settings file (e.g., cline_mcp_settings.json):
{
"mcpServers": {
// ... other servers
"npm-docs-server": {
"command": "node",
"args": [
"/path/to/mcp-npm_docs-server/dist/server.js" // <-- IMPORTANT: Use the absolute path to the compiled server.js
],
"env": {
// Optional: Set environment variables here if needed
// "NPM_CACHE_TTL": "3600",
// "NPM_CACHE_DB_PATH": "/path/to/your/cache.db",
// "LOG_LEVEL": "debug"
},
"disabled": false, // Ensure it's enabled
"autoApprove": [
"getNpmPackageDocs" // Optional: Auto-approve the tool
]
}
// ... other servers
}
}
Replace /path/to/mcp-npm_docs-server with the actual absolute path to this project directory on your system.
Provided MCP Tool
getNpmPackageDocs
Retrieves documentation and metadata for a specified NPM package.
Parameters:
packageName(string, required): The exact name of the NPM package (e.g., 'react', 'axios', '@azure/storage-blob'). Case-sensitive.forceFresh(boolean, optional, default:false): Iftrue, bypasses the local cache and fetches fresh data from the npms.io API.
Returns:
A JSON object conforming to the NpmDocumentation interface, including:
nameversiondescriptionhomepage(if available)repository(URL, if available)author(name, if available)license(if available)keywords(if available)dependenciesdevDependenciesreadmeContent(string containing README markdown, if available via npms.io)
Example Usage (MCP Tool Call):
<use_mcp_tool>
<server_name>npm-docs-server</server_name>
<tool_name>getNpmPackageDocs</tool_name>
<arguments>
{
"packageName": "lodash",
"forceFresh": false
}
</arguments>
</use_mcp_tool>
Linting and Formatting
- Lint:
npm run lint - Format:
npm run format
Code will be automatically linted and formatted on commit via Husky and lint-staged (if Husky is installed).
Установка Npm Docs Server
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/bsmi021/mcp-npm_docs-serverFAQ
Npm Docs Server MCP бесплатный?
Да, Npm Docs Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Npm Docs Server?
Нет, Npm Docs Server работает без API-ключей и переменных окружения.
Npm Docs Server — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Npm Docs Server в Claude Desktop, Claude Code или Cursor?
Открой Npm Docs Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
wenb1n-dev/SmartDB_MCP
A universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim
автор: wenb1n-devPostgres Server
This server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools
автор: madhurprashPostgres
Query your database in natural language
автор: AnthropicPostgreSQL
Read-only database access with schema inspection.
автор: modelcontextprotocolCompare Npm Docs Server with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории data
