MCP Local Database Server MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
cd mcp-localdb
npm install
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add -e "MYSQL_PASSWORD=${MYSQL_PASSWORD}" mcp-local-database -- node "<FULL_PATH_TO_MCP>/dist/index.js"

Replace <FULL_PATH_TO_MCP>/dist/index.js with the actual folder you prepared in step 1.

Required:MYSQL_PASSWORD+ 4 optional
README.md

A Model Context Protocol (MCP) server for managing tasks with a MySQL database.

MCP Local Database Server

A Model Context Protocol (MCP) server for managing tasks with a MySQL database.

Features

  • Full CRUD operations for tasks
  • Progress/status transition tracking with timestamps
  • Filter and search capabilities
  • Automatic timestamp management

Prerequisites

  • Node.js 18+
  • MySQL Server running locally

Database Schema

Tasks Table

Field Type Description
id INT Primary key, auto-increment
task_name VARCHAR(255) Name of the task (required)
task_description TEXT Description of the task
assigned_by VARCHAR(255) Person who assigned the task
assigned_to VARCHAR(255) Person assigned to the task
status VARCHAR(50) Status: pending, in_progress, review, completed, cancelled
created_at TIMESTAMP When the task was created
updated_at TIMESTAMP When the task was last updated

Task Progress History Table

Field Type Description
id INT Primary key, auto-increment
task_id INT Reference to the task
previous_status VARCHAR(50) Status before transition
new_status VARCHAR(50) Status after transition
transition_time TIMESTAMP When the transition occurred
notes TEXT Notes about the transition

Installation

cd mcp-localdb
npm install

MySQL Configuration

Edit src/config.js to set your MySQL credentials:

export const dbConfig = {
  host: "localhost",
  port: 3306,
  user: "root",
  password: "your_password",
  database: "tasks"
};

Or use environment variables:

  • MYSQL_HOST - MySQL host (default: localhost)
  • MYSQL_PORT - MySQL port (default: 3306)
  • MYSQL_USER - MySQL user (default: root)
  • MYSQL_PASSWORD - MySQL password
  • MYSQL_DATABASE - Database name (default: tasks)

Available Tools

`create_task`

Create a new task with name, description, assignee, and status.

`get_task`

Retrieve a specific task by ID.

`list_tasks`

List all tasks with optional filters (status, assigned_to, assigned_by).

`update_task`

Update task fields. Status changes are automatically tracked in history.

`delete_task`

Delete a task by ID.

`get_task_progress_history`

Get the complete status transition history for a task.

`search_tasks`

Search tasks by name or description.

Configuration

Add to your MCP client configuration (e.g., Claude Desktop):

{
  "mcpServers": {
    "mcp-localdb": {
      "command": "node",
      "args": [
        "/Users/manoj-13035/Documents/manoj/MCP/mcp-localdb/src/index.js"
      ]
    }
  }
}

Usage Examples

Create a Task

{
  "task_name": "Implement login feature",
  "task_description": "Add user authentication with OAuth",
  "assigned_by": "John",
  "assigned_to": "Jane",
  "status": "pending"
}

Update Task Status

{
  "task_id": 1,
  "status": "in_progress",
  "progress_notes": "Started working on the feature"
}

List Tasks by Status

{
  "status": "in_progress",
  "limit": 10
}

License

MIT

Tools (7)

create_taskCreate a new task with name, description, assignee, and status.
get_taskRetrieve a specific task by ID.
list_tasksList all tasks with optional filters (status, assigned_to, assigned_by).
update_taskUpdate task fields. Status changes are automatically tracked in history.
delete_taskDelete a task by ID.
get_task_progress_historyGet the complete status transition history for a task.
search_tasksSearch tasks by name or description.

Environment Variables

MYSQL_HOSTMySQL host (default: localhost)
MYSQL_PORTMySQL port (default: 3306)
MYSQL_USERMySQL user (default: root)
MYSQL_PASSWORDrequiredMySQL password
MYSQL_DATABASEDatabase name (default: tasks)

Configuration

claude_desktop_config.json
{
  "mcpServers": {
    "mcp-localdb": {
      "command": "node",
      "args": [
        "/path/to/mcp-localdb/src/index.js"
      ]
    }
  }
}

Try it

Create a new task named 'Implement login feature' assigned to Jane.
List all tasks that are currently in progress.
Update task ID 1 to status 'completed' with a note that the feature is finished.
Show me the progress history for task ID 1.
Search for tasks related to authentication.

Frequently Asked Questions

What are the key features of MCP Local Database Server?

Full CRUD operations for tasks. Progress and status transition tracking with timestamps. Filter and search capabilities for task management. Automatic timestamp management for task updates.

What can I use MCP Local Database Server for?

Tracking software development tasks directly from an AI assistant. Maintaining a persistent history of task status changes for project auditing. Managing team assignments and task descriptions in a local MySQL database. Searching through project task backlogs using natural language.

How do I install MCP Local Database Server?

Install MCP Local Database Server by running: cd mcp-localdb && npm install

What MCP clients work with MCP Local Database Server?

MCP Local Database Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep MCP Local Database Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare