API文档参考服务

使用MCP服务器提供API文档参考服务,支持通过爬虫获取文档内容并转换为可访问的资源。

  • by yhanawa
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 yhanawa/mcp_server

使用说明

项目目录概述

此项目包括:MCP 使用服务器API 提供浏览文档的方法。reference 中所述修改相应参数的值。

目录配置

  • README.md:此文件。介绍了项目的概要和使用方法。
  • crawl_all.py:用于爬行特定网页的脚本。(使用方法后述)
  • document/:存储滚动结果的目录。
  • gemini_docs.py: gemini_docs.json 了解MCP 通过服务器提供的主程序。
  • anthropic_docs.py: anthropic_docs.json 了解MCP 通过服务器提供的主程序。
  • openapi_docs.py: openapi.yaml 了解MCP 通过服务器提供的主程序。

使用方法

单击功能区上的官方快速入门指南来修改标记元素的显示属性。请事先克隆本存储库。

  1. 准备文档 document 的内容不包含在本资料档案库中。各自滚动document 中所述修改相应参数的值。详细方法见下文readme 末尾有记载。

  2. uv 安装

curl -LsSf https://astral.sh/uv/install.sh | sh
  1. 启用虚拟环境
uv venv
source .venv/bin/activate
  1. 安装相关性
uv add "mcp[cli]" PyYAML
  1. 程序的动作确认

例如gemini_docs.py 中所述修改相应参数的值。

uv run gemini_docs.py
  1. claude_desktop_config.json 更新

请添加或更新以下设置:。

{
  "mcpServers": {
    "gemini_docs_resource": {
      "command": "uv",
      "args": [
        "--directory",
        "mcp_server ディレクトリへのパス",
        "run",
        "gemini_docs.py"
      ]
    }
  }
}

注: 如果执行不顺利uv 将条目添加到文档注册表。另外,根据需要 gemini_docs.py 打开 anthropic_docs.py 在工作空间的边缘 openapi_docs.py 中所述修改相应参数的值。

  1. Claude 重新启动

为了反映设定Claude 中所述修改相应参数的值。

每个MCP 关于服务器

  • gemini_docs.py:关闭结果为JSON 作为文件保存,利用其内容。
  • anthropic.docs.py:关闭结果为JSON 作为文件保存,利用其内容。
  • openapi_docs.py: OpenAPI 无法滚动文档GitHub 存储库中所述修改相应参数的值。这个程序YAML 格式文件。

闭环

crawl_all.py 中描述的相应参数的值gemini 打开anthropic 对较大场景进行渲染期间已观察到该故障。

python crawl_all.py --preset gemini
python crawl_all.py --preset anthropic

另外,也可以不使用预设,以任意设定进行爬行。

python crawl_all.py \
  --base-url "https://example.com" \
  --start-path "/docs" \
  --output_file "document/example_docs.json" \
  --selector "main" \
  --path-pattern "^/docs/.*" \
  --delay 0.5 \
  --max-pages 100

主要命令行选项

|选项|说明| | -------------------- | -------------------------------------------------------------------------------- | | --preset | gemini 在工作空间的边缘anthropic 中描述的场景,使用下列步骤创建明细表,以便在概念设计中分析体量的周长。 | | --base-url 网站缩略图URL(示例:https://example.com)。 | | --start-path |爬行开始路径(例如:/docs)。 | | --output_file 保存爬行结果的目标文件路径(例如:document/example_docs.json)。 | | --selector 用于在页面中获取内容CSS 选择器(默认值:main)。 | | --delay 每个请求之间的等待时间(秒)(默认值:0.5秒)。 | | --use-selenium 为了支持动态页面Selenium 中所述修改相应参数的值。 | | --wait-time | Selenium 使用时的页面读取等待时间(秒)(默认值:5秒)。 | | --additional-paths 要添加到爬行对象的路径列表。 | | --path-pattern 以自由泳为对象URL 路径的正则表达式模式。 | | --max-pages 最大爬行页数(例如,最多200页)。 | | --debug 启用调试模式并输出详细日志。 |