Features

Features

site icon
2025.04.04 1
TypeScriptNPM文档服务开发工具开发效率
NPM Documentation MCP Server 是一个提供获取NPM包元数据和文档(包括README内容)的工具的服务,通过本地缓存提高性能。
View on GitHub

Overview

基本能力

产品定位

NPM Documentation MCP Server 是一个专门用于获取NPM包元数据和文档的服务,适用于开发者在开发过程中快速获取依赖包的详细信息。

核心功能

  • 使用 npms.io API 获取包元数据和README内容。
  • 使用 SQLite (better-sqlite3) 本地缓存结果以提高性能。
  • 提供 getNpmPackageDocs MCP 工具。
  • 遵循标准的 MCP 服务器结构。

适用场景

  • 开发者在开发过程中需要快速获取NPM包的元数据和文档。
  • 需要缓存NPM包信息以减少网络请求的场景。

工具列表

  • getNpmPackageDocs: 获取指定NPM包的文档和元数据。
  • 参数:
    • packageName (string, required): NPM包的名称(如 'react', 'axios')。
    • forceFresh (boolean, optional, default: false): 是否绕过本地缓存直接从npms.io API获取数据。
  • 返回: 包含包元数据和README内容的JSON对象。

常见问题解答

  • 缓存时间: 默认缓存时间为24小时,可通过 NPM_CACHE_TTL 环境变量调整。
  • 数据库路径: 默认路径为 ./dist/npm-docs-cache.db,可通过 NPM_CACHE_DB_PATH 环境变量覆盖。
  • 日志级别: 默认日志级别为 info,可通过 LOG_LEVEL 环境变量设置为 debug 以获取详细日志。

使用教程

使用依赖

  1. 确保已安装 Node.js 和 npm。

安装教程

  1. 克隆仓库(如适用)。
  2. 安装依赖: bash npm install
  3. 构建服务器: bash npm run build

运行服务器

  • 直接运行: bash node dist/server.js
  • 开发模式(自动重载): bash npm run dev

调试方式

  • 设置环境变量 LOG_LEVEL=debug 以获取详细日志。
  • 检查 dist/npm-docs-cache.db 文件以确保缓存正常工作。

MCP 集成

将服务器配置添加到 MCP 客户端设置文件(如 cline_mcp_settings.json)中:

{
  "mcpServers": {
    "npm-docs-server": {
      "command": "node",
      "args": [
        "/path/to/mcp-npm_docs-server/dist/server.js"
      ],
      "env": {},
      "disabled": false,
      "autoApprove": [
        "getNpmPackageDocs"
      ]
    }
  }
}

示例工具调用

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

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。