MCP服务器:演示
概述
该存储库演示了如何构建一个可以访问和查询实际数据库信息的MCP(模型上下文协议)服务器。用途 这 @modelcontextprotocol/sdk 库利用Cloudflare的 MCPAgent 实现工具、管理资源和D1数据库。
特性
数据库
该项目与D1数据库集成(mcp-agent-d1-data)检索数据,但您应该能够使用任何数据库,只需对工具进行一些微调。还包括一些细节:
- 模式管理:SQL迁移文件(
up.sql,down.sql,seed.sql)在db/目录管理数据库模式和种子数据。
MCP服务器(MyMCP)
这 MyMCP 类扩展 McpAgent 类从 @modelcontextprotocol/sdk 图书馆。它充当核心服务器实现,提供服务器发送事件(SSE)作为基础传输。
- 耐用物体:服务器被实现为持久对象,它允许有状态的交互和长流程操作。它还具有空闲时内置的休眠功能。
查询工具
这 query 该工具旨在通过提供一个接口与数据库交互,LLM可以在该接口上向数据库发送SQL查询。在生产环境中小心使用,并采取适当的授权保护措施。
内省工具
这 schema-introspection 该工具对于帮助LLM理解数据库的结构以生成更准确的查询设计特别有用。
集成测试
集成测试包含在 tests/ 目录开始。验证MCP服务器及其工具的功能,或使用TDD测试。
npm run test项目结构
📦 d1-mcp
├── package.json
├── README.md
├── tsconfig.json
├── vitest.config.js
├── worker-configuration.d.ts
├── wrangler.jsonc
├── db
│ ├── down.sql
│ ├── seed.sql
│ └── up.sql
├── public
│ └── index.html
├── src
│ ├── index.ts
│ ├── metadata.ts
│ ├── tools.ts
│ └── utils.ts
└── tests
├── index.test.ts
└── tsconfig.json入门指南
先决条件
- Node.js
- Cloudflare Workers CLI(
wrangler)
安装
- 克隆存储库。
- 安装依赖项:
npm install发展
- 启动开发服务器:
npm run dev部署
- 部署到Cloudflare Workers:
npm run deploy许可证
该项目根据MIT许可证获得许可。
