🗃️ MCP数据库服务器
轻量级的实现 模型上下文协议(MCP) 用于数据库操作。该服务器使AI模型能够通过结构化的、基于工具的界面与SQL数据库交互,提供安全高效的数据库访问。
______________________________________________________________________
📚 目录
______________________________________________________________________
🚀 关键能力
🛠️ MCP工具集成
- 将数据库操作作为人工智能模型交互的MCP工具公开
- 支持数据库探索的自然语言提示
- 提供架构感知查询构建帮助
💾 数据库支持
- 适用于任何SQLAlchemy兼容的数据库(SQLite、PostgreSQL、MySQL等)
- 自动模式检查和反射
- 多对账单操作的交易支持
📡 MCP功能
- 本地MCP工具、资源和提示
- 支持多种传输协议(http、WebSocket、stdio)
- 结构化错误处理和验证
______________________________________________________________________
🔧 入门指南
✅ 先决条件
- Python 3.8+
- SQLite或任何其他SQLAlchemy支持的数据库
⚙️ 安装
git clone https://github.com/devsenweb/mcp-server-for-db.git
cd mcp-server-for-db
python -m venv .venv
source .venv/bin/activate # macOS/Linux
# OR
.venv\Scripts\activate # Windows
pip install -r requirements.txt🛠️ 配置
编辑 config.yaml:
db:
uri: sqlite:///./example.db # Supports any SQLAlchemy URI(可选)创建示例数据库:
python create_database.py▶️ 启动MCP服务器
python -m mcp_server.server --transport http --port 8080
# or
python -m mcp_server.server --transport ws --port 8080
# or
python -m mcp_server.server --transport stdio______________________________________________________________________
🧠 MCP接口
📌 工具定义
execute_query
{
"jsonrpc": "2.0",
"method": "tools/execute_query",
"params": {
"sql": "SELECT * FROM users WHERE age > 25"
},
"id": 1
}validate_sql
{
"jsonrpc": "2.0",
"method": "tools/validate_sql",
"params": {
"sql": "SELECT * FROM users"
},
"id": 2
}______________________________________________________________________
📁 资源端点
db://schema
{
"jsonrpc": "2.0",
"method": "resources/get",
"params": {
"uri": "db://schema"
},
"id": 3
}db://tables
{
"jsonrpc": "2.0",
"method": "resources/get",
"params": {
"uri": "db://tables"
},
"id": 4
}🛠️ IDE和工具集成
(游标IDE).游标/mcp.json
{
"mcpServers": {
"database-query": {
"url": "http://localhost:8000/mcp",
"transport": "http"
}
}
}MCP检查员
npm install -g @modelcontextprotocol/inspector
mcp-inspector --transport http --url http://localhost:8000/mcp
# Visit http://localhost:3000______________________________________________________________________
⚙️ 发展
pip install -r requirements-dev.txt
pytest tests/📁 项目结构
mcp-server-for-db/
├── mcp_server/
│ ├── __init__.py
│ ├── server.py
│ └── db_adapter.py
├── config.yaml
├── create_database.py
└── requirements.txt______________________________________________________________________
🤝 贡献
欢迎投稿!请随时提交Pull Request。
______________________________________________________________________
📄 许可证
根据MIT许可证获得许可。看 许可证 了解详情。
______________________________________________________________________
⚙️ MCP服务器配置参考
python -m mcp_server.server --host 0.0.0.0 --port 8000 --transport http --config ./config.yaml______________________________________________________________________
🙏 致谢
- 由...驱动 SQL炼金术
- 基于模型上下文协议(MCP)标准
⚠️ 免责声明
这个项目是 演示实现 用于数据库交互的MCP兼容服务器。确实如此 不包括SQL安全机制,输入净化、身份验证或权限控制。
⚠️ 使用风险自负。 此服务器执行原始SQL,仅用于实验、原型设计和本地开发。 用户有责任实施适当的 护栏, 验证,以及 安全措施 在任何生产或敏感环境中使用之前。
