In this tutorial we will configure VS Code to use an MCP Server that connects to a MySQL database. In a similar manner, you can also connect to SQLite, PostgresDB, and SQL Server. This is a very compelling proposition because it allows developers to use AI to assist in generating code that dynamically interacts with data in a relational database.
Prerequisites
You will need to install the following software to proceed:
- Visual Studio Code with the GitHub Copilot Chat extension
- Docker Desktop
- Latest versions of node.js, npm, and npx
The Database
We will run a MySQL database with a sample Northwind database in a Docker container. Therefore:
- Start Docker Desktop on your computer
- Run a MySQL container by executing this command in a terminal window:
docker run -p 3366:3306 --name mariadb-nw -e MYSQL_ROOT_PASSWORD=secret -d melmasry/maria-nw:1.0.0
The Database MCP Server
We will be using the MCP Server from the mcp-database-server GitHub Repo. Visit https://github.com/executeautomation/mcp-database-server for more details.
Install and configure the MySQL MCP server
In a suitable working directory, clone the repo, then build, and publish the code by executing these commands in a terminal window:
git clone https://github.com/executeautomation/mcp-database-server.git
cd mcp-database-server
npm install
npm run build
We will next install the MCP server globally with:
npm install -g @executeautomation/database-server
To use the MCP server with our MySQL database, run the following terminal window command:
node dist/src/index.js --mysql --host localhost --database northwind --port 3366 --user root --password secret
Keep the above terminal window open and running.
Configuring VS Code
Open VS Code. Click on the settings gear in the bottom-left corner, followed by Settings.
In the search field, enter MCP, then click on "Edit in settings.json".
Under the mcp >> servers section, add the following MCP server settings:
"mysql": {
"command": "npx",
"args": [
"-y",
"@executeautomation/database-server",
"--mysql",
"--host", "localhost",
"--database", "northwind",
"--port", "3366",
"--user", "root",
"--password", "secret"
]
}
Click on Start:
Open the GitHub Copilot Chat panel:
In the GitHub Copilot Chat panel, choose any Claude model followed by Agent Mode.
Click on the tools icon in the prompt window.
You will see a list of commands that the MCP server can carry out with MySQL.
We can now start querying the database using natural language. Start with this prompt:
You have access to the Northwind database through an MCP server. What are the tables in the database?
Click on Continue. I got the following output:
Similarly, you can ask another question like:
Display the contents of the suppliers table.
Yet, another question:
What are the products supplied by "Exotic Liquids"?
Conclusion
It is very easy to connect VS Code with a relational database MCP server. In addition, you can similarly connect MCP Servers any client C# application. MCP Servers open a ton of possibilities for AI aided software development.
No comments:
Post a Comment