Back to MCP directory
publicPublicdnsLocal runtime

devdocsmcp

DevDocsMCP是一个命令行工具,可直接从DevDocs.io搜索和阅读文档,支持在线获取数据,并可配置为MCP服务器提供API服务。

article

README

🚀 DevDocsMCP

DevDocsMCP 是一款命令行工具,可让你直接从 DevDocs.io 搜索和阅读文档。它完全在线运行,按需获取数据。

🚀 快速开始

✨ 主要特性

  • 可直接从 DevDocs.io 搜索和阅读文档。
  • 支持作为 HTTP 服务器运行,通过 API 端点提供搜索和阅读功能,便于与其他工具或服务集成。

📦 安装指南

  1. 安装 Go:确保你的系统已安装 Go,你可以从 golang.org 下载。
  2. 克隆仓库
git clone https://github.com/kelvinzer0/DevDocsMCP.git
cd DevDocsMCP
  1. 构建应用程序
go build -o devdocsmcp cmd/devdocsmcp/main.go

这将在当前目录下创建一个名为 devdocsmcp 的可执行文件。

💻 使用示例

基础用法

在终端中导航到 DevDocsMCP 目录。

搜索文档

要在特定文档集中搜索某个术语,请使用以下命令:

./devdocsmcp search -lang <language_slug> -query <search_query>
  • <language_slug>:文档的标识符(例如,htmlcssangularjs~1.8vitetailwindcssgomysqlsqlite)。你可以在 DevDocs.io 上找到可用文档的列表。
  • <search_query>:你要搜索的术语。

示例

  • 在 HTML 文档中搜索 "display":
./devdocsmcp search -lang html -query display
  • 在 AngularJS 1.8 文档中搜索 "foreach":
./devdocsmcp search -lang angularjs~1.8 -query foreach
阅读文档内容

要阅读特定文档条目的内容,请使用以下命令:

./devdocsmcp read -lang <language_slug> -path <entry_path>
  • <language_slug>:文档的标识符(例如,htmlcssangularjs~1.8)。
  • <entry_path>:特定文档条目的路径,可在搜索结果中找到(例如,reference/elements/aapi/ng/function/angular.foreach)。

示例

  • 阅读 HTML <a> 元素的文档:
./devdocsmcp read -lang html -path reference/elements/a
  • 阅读 angular.forEach 的文档:
./devdocsmcp read -lang angularjs~1.8 -path api/ng/function/angular.foreach

高级用法

作为 MCP 服务器运行

DevDocsMCP 还可以作为 HTTP 服务器运行,通过 API 端点提供搜索和阅读功能,这对于与其他工具或服务集成非常有用。

要启动服务器,请使用以下命令:

./devdocsmcp server [-port <port_number>] -lang <comma_separated_languages>
  • -port:可选参数。服务器监听的端口号,默认为 8080
  • -lang:可选参数。此服务器实例应提供服务的文档标识符的逗号分隔列表(例如,html,css)。如果省略,则允许所有语言。

示例 MCP 服务器配置: 要将 DevDocsMCP 配置为 MCP 服务器,你可以在 MCP 配置文件中添加如下部分:

{
  "mcpServers": {
    "devdocs-html": {
        "command": "/path/to/your/DevDocsMCP/cmd/devdocsmcp",
        "args":["server", "--lang", "html"]
    },
    "devdocs-css": {
        "command": "/path/to/your/DevDocsMCP/cmd/devdocsmcp",
        "args":["server", "--lang", "css"]
    },
    "devdocs-vite": {
        "command": "/path/to/your/DevDocsMCP/cmd/devdocsmcp",
        "args":["server", "--lang", "vite"]
    },
    "devdocs-tailwindcss": {
        "command": "/path/to/your/DevDocsMCP/cmd/devdocsmcp",
        "args":["server", "--lang", "tailwindcss"]
    },
    "devdocs-go": {
        "command": "/path/to/your/DevDocsMCP/cmd/devdocsmcp",
        "args":["server", "--lang", "go"]
    },
    "devdocs-mysql": {
        "command": "/path/to/your/DevDocsMCP/cmd/devdocsmcp",
        "args":["server", "--lang", "mysql"]
    },
    "devdocs-sqlite": {
        "command": "/path/to/your/DevDocsMCP/cmd/devdocsmcp",
        "args":["server", "--lang", "sqlite"]
    }
  }
}

注意:请将 /path/to/your/DevDocsMCP/cmd/devdocsmcp 替换为你 devdocsmcp 可执行文件的实际绝对路径。键 "devdocs-html-css" 可以是此服务器的任何唯一标识符。

显示允许的语言

要显示 devdocsmcp 服务器配置允许的语言,请使用以下命令:

./devdocsmcp allowed-langs

此命令将显示服务器启动时使用 -lang 标志指定的语言。如果未指定任何语言,则表示允许所有语言。

下载预构建的二进制文件

你可以直接从 GitHub Releases 页面下载适用于各种操作系统和架构的预构建二进制文件。

[VERSION] 替换为所需的发布版本(例如,v1.0.0)。

Linux / macOS

# 下载二进制文件(将 [OS] 和 [ARCH] 替换为你的系统信息,例如 linux_amd64、darwin_arm64)
wget https://github.com/kelvinzer0/DevDocsMCP/releases/download/[VERSION]/devdocsmcp_[OS]_[ARCH] -O devdocsmcp

# 使其可执行
chmod +x devdocsmcp

# 将其移动到 PATH 中的目录(例如,/usr/local/bin)
sudo mv devdocsmcp /usr/local/bin/

Windows

从 GitHub Releases 页面下载适当的 .exe 文件(例如,devdocsmcp_windows_amd64.exe)。 将下载的文件重命名为 devdocsmcp.exe。 将 devdocsmcp.exe 移动到系统 PATH 环境变量包含的目录中。常见的做法是在用户目录中创建一个 bin 文件夹(例如,C:\Users\YourUser\bin)并将其添加到 PATH

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client