Mcp Npm_docs Server

Mcp Npm_docs Server

🚀 NPM 文档 MCP 服务器文档

本项目是一个 MCP 服务器,提供了用于获取 NPM 包元数据和文档(包含 README 内容)的工具。它借助本地缓存机制,有效提升了性能。

🚀 快速开始

本服务器可帮助你高效获取 NPM 包的元数据与文档,以下是快速上手的步骤:

  1. 克隆仓库(若适用)。
  2. 安装依赖:
npm install
  1. 构建服务器:
npm run build
  1. 运行服务器:
    • 直接运行编译后的服务器:
node dist/server.js
- 使用 dev 脚本进行开发:
npm run dev

✨ 主要特性

  • 借助 npms.io API 获取包元数据和 README 内容。
  • 采用 SQLite (better-sqlite3) 实现本地缓存。
  • 提供 getNpmPackageDocs MCP 工具。
  • 遵循标准 MCP 服务器结构。

📦 安装指南

克隆仓库

若需要,请克隆本项目仓库。

安装依赖

在项目根目录下,执行以下命令安装所需依赖:

npm install

构建服务器

运行以下命令构建服务器:

npm run build

📚 详细文档

项目结构

  • /src:包含所有源代码。
    • /config:配置管理(ConfigurationManager)。
    • /services:核心逻辑(NpmDocServiceCacheService)。
    • /tools:MCP 工具定义(npmDocsTool.tsnpmDocsToolParams.ts)。
    • /types:TypeScript 接口和自定义错误(npmDocsTypes.ts)。
    • /utils:共享实用函数(logger.tserrors.ts)。
    • createServer.ts:服务器实例创建和工具注册。
    • server.ts:应用程序入口点。
  • /dist:编译后的 JavaScript 输出(由npm run build生成)。包含默认缓存 DB 文件(npm-docs-cache.db)。
  • package.json:项目元数据和依赖。
  • tsconfig.json:TypeScript 编译器选项。
  • .eslintrc.json:ESLint 配置。
  • .prettierrc.json:Prettier 配置。
  • .gitignore:Git 忽略规则。

配置

  • NPM_CACHE_TTL:设置缓存过期时间(默认为 86400 秒,即 24 小时)。
  • NPM_CACHE_DB_PATH:设置缓存数据库文件路径(默认为./npm-cache.db)。
  • LOG_LEVEL:设置日志级别(从低到高:debug, info, warn, error, fatal,默认为 info)。

MCP 集成

将服务器配置到 MCP 客户端中,示例配置如下:

{
"server_name": "npm-docs-server",
"tool_name": "getNpmPackageDocs",
"arguments": {
"packageName": "lodash",
"forceFresh": false
}
}

提供的工具:getNpmPackageDocs

参数

  • packageName:需要获取文档的包名称。
  • forceFresh:是否强制重新获取数据(默认为 false)。

返回值

包元数据和 README 内容(如果可用)。

代码检查

  • Lintingnpm run lint
  • 格式化npm run format

通过 Husky 和 lint-staged 进行自动代码检查和格式化。

  • 0 关注
  • 0 收藏,20 浏览
  • system 提出于 2025-09-22 07:48

相似服务问题

相关AI产品