mcp-knowledgebase
Enables AI agents to explore MySQL database schemas and execute read-only queries through a safe, MCP interface.
README
MCP Knowledge Base Server
A lightweight Model Context Protocol (MCP) server for MySQL database querying and schema exploration. This tool enables AI agents to understand database structure and fetch data through a safe, read-only interface.
Features
- Schema Discovery: Get complete database schema including tables, columns, data types, and comments
- Key Relationships: Understand table relationships through primary keys, foreign keys, and unique keys
- Safe Query Execution: Execute SELECT queries with automatic validation and pagination
- Table Exploration: Search and describe tables easily
Available Tools
| Tool | Description |
|---|---|
get_schema |
Get complete database schema for all tables |
get_keys |
Get all keys and relationships for JOIN operations |
raw_query |
Execute SELECT queries with pagination (read-only) |
describe_table |
Get detailed information about a specific table |
get_tables |
List all tables with metadata |
search_tables |
Search tables and columns by pattern |
Quick Start
1. Install Dependencies
npm install
2. Configure Environment
Copy .env.example to .env and update with your database credentials:
DB_HOST=127.0.0.1
DB_PORT=3306
DB_USER=admin
DB_PASSWORD=secret
DB_NAME=ez_ccsd1wy
DB_CONNECTION_LIMIT=10
QUERY_TIMEOUT_MS=30000
MAX_ROWS_PER_PAGE=100
3. Run the Server
# Development mode (with auto-reload)
npm run dev
# Production mode
npm start
4. Use with Claude/Cline
Add the server to your MCP configuration:
{
"mcpServers": {
"knowledgebase": {
"command": "node",
"args": ["/path/to/knowledgebase/src/index.js"],
"env": {
"DB_HOST": "127.0.0.1",
"DB_PORT": "3306",
"DB_USER": "admin",
"DB_PASSWORD": "secret",
"DB_NAME": "ez_ccsd1wy"
}
}
}
}
Usage Examples
Get Database Schema
// Get all tables and their columns
await tools.get_schema()
Get Table Relationships
// Understand how tables connect
await tools.get_keys()
Execute a Query
// Simple SELECT query with pagination
await tools.raw_query({
query: "SELECT * FROM users WHERE active = 1",
page: 1,
limit: 50
})
Describe a Table
// Get detailed table structure
await tools.describe_table({
tableName: "users"
})
Search for Tables
// Find tables or columns
await tools.search_tables({
pattern: "user",
type: "all" // or "tables", "columns"
})
Security
- Read-Only Access: Only SELECT queries are allowed
- Query Validation: All queries are validated before execution
- Timeout Protection: Queries have a configurable timeout (default 30s)
- Pagination: Automatic pagination prevents overwhelming responses
Project Structure
knowledgebase/
├── src/
│ ├── index.js # Main MCP server
│ ├── database.js # Database connection pool
│ └── tools/
│ ├── schema.js # Schema tools
│ └── query.js # Query tools
├── .env # Environment configuration
├── .env.example # Environment template
├── .nvmrc # Node.js version
├── package.json # Dependencies
└── README.md # This file
Node.js Version
This project uses Node.js 20.0.0. Use nvm to manage versions:
nvm use
Documentation
- Agent Instructions - Guide for AI agents extending this tool
- API Reference - Detailed tool specifications
License
ISC
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.