markdownlint-mcp-server

markdownlint-mcp-server

site icon
2025.04.22 0
TypeScriptMarkdown 验证开发工具开发效率
markdownlint-mcp-server 是一个基于 Model Context Protocol (MCP) 的服务器实现,用于验证 Markdown 内容是否符合 markdownlint 的规则。它提供了对 markdownlint 规则的访问,支持自定义配置,并实现了 MCP 协议以便与 AI/LLM 集成。该服务可以被 Cursor 等工具用来验证生成的 Markdown 内容。
View on GitHub

Overview

基本能力

产品定位

markdownlint-mcp-server 是一个用于验证 Markdown 内容的工具,确保生成的 Markdown 符合 markdownlint 的规则。

核心功能

  • 使用 markdownlint 验证 Markdown 内容
  • 提供对 markdownlint 规则的访问
  • 支持自定义配置
  • 实现 MCP 协议,便于与 AI/LLM 集成
  • 可以被 Cursor 等工具用来验证生成的 Markdown 内容

适用场景

  • 在 AI/LLM 生成 Markdown 内容时进行验证
  • 在开发过程中确保 Markdown 内容符合规范
  • 在 CI/CD 流程中集成 Markdown 验证

工具列表

  1. validate - 验证 Markdown 内容
  2. 参数:
    • content: 需要验证的 Markdown 内容
    • config: 可选的 markdownlint 配置
  3. rules - 返回可用的 markdownlint 规则
  4. 无需参数

常见问题解答

  • 如何自定义 markdownlint 规则? 可以通过在 validate 工具中提供自定义配置来覆盖默认规则。
  • 如何与 Cursor 集成? 启动 MCP 服务器后,Cursor 会自动连接并使用 validate 工具验证生成的 Markdown 内容。

使用教程

使用依赖

确保已安装 Node.js 环境。

安装教程

npm install markdownlint-mcp-server

调试方式

  1. 作为 CLI 启动服务器: bash markdownlint-mcp-server 服务器将在 stdio 上监听 MCP 协议消息。

  2. 作为库使用: typescript import { markdownlintMcpServer } from 'markdownlint-mcp-server'; const server = markdownlintMcpServer(); // 使用你喜欢的 MCP 传输方式与服务器交互

  3. 与 Cursor 集成:

  4. 启动 MCP 服务器
  5. Cursor 会自动连接服务器
  6. 在生成 Markdown 内容时,Cursor 会使用 validate 工具验证内容并改进生成结果

开发

  • 构建项目: bash npm run build

  • 项目结构:

  • src/

    • index.ts - 主服务器实现
    • config.ts - 默认 markdownlint 配置
    • types.ts - 共享类型和模式
    • validation.ts - Markdown 验证逻辑
    • bin.ts - CLI 入口点
  • CI/CD:

  • CI 管道:在每次推送和拉取请求时运行
    • 在 Node.js 18.x 和 20.x 上测试
    • 构建项目
    • 运行类型检查
  • 发布管道:在发布新版本时运行

    • 构建项目
    • 发布到 npm
  • 创建新版本:

  • 更新 package.json 中的版本号
  • 在 GitHub 上创建新版本
  • 发布工作流会自动发布到 npm

许可证

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