loading…
Search for a command to run...
loading…
An MCP server that enables AI agents to safely explore and interact with MySQL databases through dynamic tool generation from stored procedures. It provides dat
An MCP server that enables AI agents to safely explore and interact with MySQL databases through dynamic tool generation from stored procedures. It provides database discovery capabilities and intelligent procedure categorization while enforcing security restrictions to prevent data modification.
The system exposes database capabilities to AI agents using the Model Context Protocol (MCP).
The MCP server acts as a bridge between:
AI Agent / MCP Client │ ▼ MCP Server (FastMCP) │ ├── Discovery Tools │ (database exploration) │ ├── Dynamic Procedure Tools │ (generated from database procedures) │ ▼ Intelligence Engine (procedure metadata + categorization) │ ▼ Database Access Layer │ ▼ MySQL Database
The MCP server is created using FastMCP.
Responsibilities:
This module manages all database communication.
Responsibilities:
All database interactions pass through this layer.
This module dynamically converts database stored procedures into MCP tools.
Steps performed:
This allows the system to automatically support new procedures added to the database.
The intelligence engine analyzes stored procedures to generate metadata.
Capabilities include:
Example categories:
| Procedure Pattern | Category |
|---|---|
| GetLinkCount | Network Analytics |
| GetWeekData | Time Analytics |
| InterfaceLinkType | Interface Analytics |
This metadata helps AI agents understand the purpose of each tool.
Discovery tools allow AI agents to explore database structure.
Implemented tools:
list_databases list_tables describe_table
These tools rely on database metadata from:
INFORMATION_SCHEMA
Several safeguards are implemented to ensure safe database interaction.
Procedures containing dangerous keywords are blocked.
Examples:
DELETE DROP TRUNCATE UPDATE INSERT ALTER
The system limits result size using a configurable value:
MAX_QUERY_ROWS
This prevents large data extraction.
The MCP server enforces request rate limits to prevent excessive usage.
The database user used by the MCP server should only have:
SELECT EXECUTE
permissions.
This prevents modification of production data.
The system retrieves metadata from MySQL system tables.
Examples:
INFORMATION_SCHEMA.ROUTINES INFORMATION_SCHEMA.PARAMETERS INFORMATION_SCHEMA.TABLES INFORMATION_SCHEMA.COLUMNS
These tables allow the MCP server to automatically understand database structure.
Example interaction between an AI agent and the database:
list_databases() ↓ list_tables() ↓ describe_table("interface_stats") ↓ GetLinkCount("NodeA")
This allows the AI to explore database structure before executing analytical procedures.
The system is designed to support additional database objects.
Future extensions may include:
list_views list_functions list_triggers search_tables explain_query
The modular architecture allows new tools to be added easily.
This architecture demonstrates how MCP servers can safely expose database capabilities to AI systems.
Key design principles:
• modular architecture • dynamic tool generation • metadata driven discovery • secure database access
This approach enables safe and scalable AI-database integration.
Detailed system diagrams are available in the docs/ directory.
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"databasemcp": {
"command": "npx",
"args": []
}
}
}Query your database in natural language
Read-only database access with schema inspection.
Interact with Redis key-value stores.
Database interaction and business intelligence capabilities.