11# Model Context Protocol (MCP) Server for SQLite Cloud
2+
23> _ This project is currently in the experimental phase. Feel free to explore, report issues, and share your feedback._
34
45![ mcp-demonstration] ( https://private-user-images.githubusercontent.com/6153996/436944588-e374f8f0-1bc6-4079-ae3e-21bfe842c412.gif )
56
67## Overview
7- The MCP Server for SQLite Cloud enables seamless interaction with SQLite Cloud databases using the AI Agent. It utilizes the Model Context Protocol (MCP) to provide tools for executing queries, managing schemas, and analyzing query performance.
8+
9+ The MCP Server for SQLite Cloud enables seamless interaction with SQLite Cloud databases using the AI models. It utilizes the Model Context Protocol (MCP) to provide tools for executing queries, managing schemas, and analyzing query performance.
810
911## Features
12+
1013- ** Query Execution** : Perform ` SELECT ` , ` INSERT ` , ` UPDATE ` , and ` DELETE ` SQL operations on SQLite Cloud databases.
1114- ** Schema Management** : Create tables, list existing ones, and retrieve schema details.
1215- ** Command Execution** : Run predefined commands supported by SQLite Cloud.
1316- ** Performance Analysis** : Identify slow queries, analyze query plans, and reset query statistics.
1417
1518## Tools
19+
1620The MCP Server offers the following tools:
1721
18221 . ** read-query** : Perform ` SELECT ` queries and fetch results.
@@ -27,7 +31,8 @@ The MCP Server offers the following tools:
273110 . ** analyzer-reset** : Reset query statistics for specific queries, groups, or databases.
2832
2933## Getting Started
30- To use the MCP Server, create a [ free account on SQLite Cloud] ( https://sqlitecloud.io ) and get your _ Connection String_ .
34+
35+ To use the MCP Server, create a [ free account on SQLite Cloud] ( https://sqlitecloud.io ) and get your _ Connection String_ .
3136Start the server with the following command:
3237
3338``` bash
@@ -36,13 +41,14 @@ npx @sqlitecloud/mcp-server --connectionString <your_connection_string>
3641
3742Replace ` <your_connection_string> ` with your SQLite Cloud connection string.
3843
39- ## Configure Your AI Agent
44+ ## Configure Your AI model
4045
4146### Requirements
4247
4348Ensure Node.js is installed on your machine with:
49+
4450``` bash
45- node -v
51+ node --version
4652```
4753
4854If Node.js is not installed, you can download it from [ nodejs.org] ( https://nodejs.org/ ) .
@@ -51,44 +57,46 @@ If Node.js is not installed, you can download it from [nodejs.org](https://nodej
5157
5258Refer to the [ official documentation] ( https://code.visualstudio.com/docs/copilot/chat/mcp-servers ) for detailed instructions.
5359
54- 1 . ** Edit ` settings.json ` ** : Open VSCode settings and search for ` mcp ` . Modify the ` User ` 's ` settings.json ` file.
55-
56- > _ Note: Avoid storing your connection string in the project's VSCode settings for security reasons._
60+ 1 . In the root of your project create the file ` .vscode/mcp.json `
5761
58- 2 . ** Add MCP Configuration ** : Include the following in ` settings.json ` :
62+ 2 . Add the following configuration (choose the server configuration you prefer) :
5963
6064``` json
6165{
6266 "mcp" : {
63- "inputs" : [],
67+ "inputs" : [
68+ {
69+ "type" : " promptString" ,
70+ "id" : " sqlitecloud-connection-string" ,
71+ "description" : " Set the SQLite Cloud Connection String" ,
72+ "password" : true
73+ }
74+ ],
6475 "servers" : {
65- // local (for development)
66- "sqlitecloud-mcp-server" : {
76+ "sqlitecloud-mcp-server-dev" : {
6777 "type" : " stdio" ,
6878 "command" : " node" ,
6979 "args" : [
7080 " ./build/index.js" ,
7181 " --connectionString" ,
72- " <CONNECTION_STRING> "
82+ " ${input:sqlitecloud-connection-string} "
7383 ]
7484 },
75- // via package manager
7685 "sqlitecloud-mcp-server" : {
7786 "type" : " stdio" ,
7887 "command" : " npx" ,
7988 "args" : [
80- " -y"
89+ " -y" ,
8190 " @sqlitecloud/mcp-server" ,
8291 " --connectionString" ,
83- " <CONNECTION_STRING> "
92+ " ${input:sqlitecloud-connection-string} "
8493 ]
8594 },
86- // SSE
8795 "sqlitecloud-mcp-server-sse" : {
8896 "type" : " sse" ,
8997 "url" : " <YOUR_NODE_ADDRESS>/v1/mcp/sse" ,
9098 "headers" : {
91- "Authorization" : " Bearer <CONNECTION_STRING> "
99+ "Authorization" : " Bearer ${input:sqlitecloud-connection-string} "
92100 }
93101 }
94102 }
@@ -105,6 +113,7 @@ npm run build
105113```
106114
107115### Run
116+
108117After building the package, run it with:
109118
110119``` bash
@@ -128,6 +137,7 @@ npx <PACKAGE_FILENAME>.tgz --connectionString <CONNECTION_STRING>
128137```
129138
130139### Inspection
140+
131141Use the inspector to test ` stdio ` and ` sse ` transports. First, build the package, then run:
132142
133143``` bash
@@ -137,12 +147,15 @@ npx @modelcontextprotocol/inspector@latest
137147Access the inspector at: [ http://127.0.0.1:6274/ ] ( http://127.0.0.1:6274/ )
138148
139149#### Stdio Transport
150+
140151- ** Transport Type** : ` stdio `
141152- ** Command** : ` npx `
142153- ** Arguments** : ` <PATH_TO_PACKAGE_FOLDER> --connectionString <CONNECTION_STRING> `
143154
144155_ Note: Use the ` PATH_TO_PACKAGE_FOLDER ` from your home directory to avoid permission issues._
145156
146157#### SSE Transport
158+
147159To test ` sse ` transport with a remote or local server:
148- - ** URL** : ` http://localhost:8090/v1/mcp/sse `
160+
161+ - ** URL** : ` http://localhost:8090/v1/mcp/sse `
0 commit comments