Markdown MCP 是一个更精确、令牌高效的框架,用于构建 MCP 服务器。

这是一个统一的单仓库,包含一个 Next.js 前端应用和一个 MCP(模型上下文协议)服务器,用于提供 Markdown 文本服务。该项目提供了一个完整的解决方案,用于渲染和提供带有动态模板支持和现代网页界面的 Markdown 内容。
克隆仓库:
git clone <repository-url>
cd modelmarkdownprotocol
安装前端依赖:
cd frontend && npm install
安装 MCP 服务器依赖:
cd mcp && npm install
在项目根目录安装并启动开发服务器:
npm install && npm run dev
这将同时启动前端(Next.js)和 MCP 服务器。前端将在 http://localhost:3000 可用,而 MCP 服务器将在其配置的端口上运行。
npm install mdmcp
全局安装或使用 npx 后:
# 启动 MCP 服务器
mdmcp-server
# 启动 Next.js 前端服务器
mdmcp-frontend
mdmcp/
├── frontend/ # Next.js 前端应用
│ ├── app/ # Next.js 应用路由器页面
│ │ ├── layout.tsx # 根布局组件
│ │ ├── page.tsx # 首页
│ │ ├── ClientRouter.tsx # 客户端路由
│ │ └── [...slug]/ # 动态路由
│ ├── src/ # 源代码
│ │ ├── components/ # 可重用的 UI 组件
│ │ │ └── ui/ # Radix UI 组件
│ │ └── utils/ # 工具函数
│ ├── styles/ # 全局样式
│ ├── package.json # 前端依赖
│ ├── next.config.js # Next.js 配置
│ ├── tailwind.config.js # Tailwind CSS 配置
│ └── tsconfig.json # TypeScript 配置
├── mcp/ # MCP 服务器实现
│ ├── index.ts # 主服务器入口点
│ ├── sessions.ts # 会话管理
│ ├── tools/ # MCP 工具
│ │ ├── navigate.ts # 导航工具
│ │ ├── startHere.ts # 开始这里工具
│ │ └── sendRequest.ts # 发送请求工具
│ ├── utils/ # 服务器工具
│ ├── package.json # MCP 服务器依赖
│ └── tsconfig.json # TypeScript 配置
├── md/ # Markdown 内容和转换
│ ├── _generated/ # 自动生成的 Markdown 文件
│ ├── converter.ts # Markdown ↔ TypeScript 转换器
│ ├── convert-all.ts # 批量转换脚本
│ ├── convert-single.ts # 单文件转换
│ └── *.md # 源 Markdown 文件
├── dist/ # 构建输出(生成)
├── package.json # 根包配置
├── tsconfig.json # 根 TypeScript 配置
└── README.md
| 脚本 | 描述 |
|---|---|
npm run dev | 在开发模式下启动前端和 MCP 服务器 |
npm run dev:frontend | 仅启动 Next.js 前端 |
npm run dev:mcp | 仅启动 MCP 服务器 |
npm run build | 为生产构建两个服务 |
npm run build:frontend | 仅构建前端 |
npm run build:mcp | 仅构建 MCP 服务器 |
npm run start | 在生产模式下启动前端 |
npm run start:frontend | 启动 Next.js 前端 |
npm run start:mcp | 启动 MCP 服务器 |
npm run clean | 清除所有构建输出和依赖项 |
npm run install:all | 安装所有包的依赖项 |
npm run generate | 将所有 TypeScript 文件转换为 Markdown |
npm run generate:single | 转换单个文件 |
npm run watch:md | 监视 Markdown 文件的变化 |
前端开发:
cd frontend
npm run dev
http://localhost:3000MCP 服务器开发:
cd mcp
npm run dev
tsx 执行 TypeScriptMarkdown 内容开发:
# 监视 Markdown 文件变化
npm run watch:md
# 生成所有 Markdown 文件
npm run generate
MDMCP 支持丰富的 Markdown 格式化功能,包括高级特性:
# H1, ## H2, ### H3 等*斜体*, **粗体**, ***粗斜体***1.)和无序(-, *)[文本](路由ID)`内联` 和 代码块> 引用---~~删除的文本~~- [x] 完成 / - [ ] 待办支持以下语言的语法高亮:
通过模板变量实现动态内容:
Hello {{name}}, 欢迎来到 {{project}}!
转换为 TypeScript 函数:
export function template({name, project}: {name: string, project: string}): string {
return `Hello ${name}, 欢迎来到 ${project}!`;
}
项目包括一个复杂的 Markdown ↔ TypeScript 转换系统:
{{变量}})将 Markdown 转换为 TypeScript:
npm run generate:single -- path/to/file.md
将 TypeScript 转换为 Markdown:
npm run generate:single -- path/to/file.ts
批量转换:
npm run generate
# 构建一切
npm run build
# 或单独构建
npm run build:frontend
npm run build:mcp
前端(Next.js):
npm run start:frontend
MCP 服务器:
npm run start:mcp
使用构建的二进制文件:
# 在 npm pack 和安装后
mdmcp-frontend
mdmcp-server
在前端目录中创建 .env.local:
# 添加您的环境变量
NEXT_PUBLIC_API_URL=http://localhost:8080
项目使用单仓库 TypeScript 设置,包括:
tsconfig.json 用于共享配置完全配置了:
git checkout -b feature/amazing-featurenpm testgit commit -m '添加神奇的功能'git push origin feature/amazing-featureMIT 许可证 - 详情见 LICENSE 文件
使用 Next.js、TypeScript 和模型上下文协议构建,充满爱心