mcp-server
Provides read-only SQLite database access, including tools for listing tables, viewing schemas, and running SELECT queries against a SQLite database.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-serverlist files in the workspace and show me the sample database schema"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-toolkit
A Model Context Protocol (MCP) server that gives an LLM safe, useful tools: sandboxed file operations, a calculator, and a SQL database interface — plus resources and a prompt template.
Connect it to Claude Desktop, any MCP-compatible client, or talk to it from the included Python client example.
Tools
Tool | Description |
| list files in the sandboxed workspace |
| read a text file from the workspace |
| write/create a text file in the workspace |
| grep for a pattern across workspace files |
| evaluate a math expression safely (no |
| list tables in the sample SQLite database |
| show a table's schema |
| run a read-only |
Related MCP server: E2B MCP Server
Resources
URI | Description |
| full schema of the sample database as JSON |
Prompts
Prompt | Description |
| starter prompt: "summarize table X — row count, columns, interesting distributions" |
Quickstart
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
# Build the sample SQLite database
python3 scripts/build_sample_db.py
# Run the server (stdio transport — what MCP clients expect)
python3 server.py
# Run the tests
pytest -vTry it with the example client
examples/client_example.py spawns the server over stdio, lists its tools,
calls calculate and query_database, and prints the results:
python3 examples/client_example.pyExpected output (abridged):
Tools exposed by the server:
- list_dir: List files and directories in the sandboxed workspace.
- read_file: Read a text file from the sandboxed workspace.
...
calculate("237 * 41 + 19") -> 9736.0
query_database("SELECT category, COUNT(*) ...") -> [...]Connect to Claude Desktop
Add this to your Claude Desktop config
(~/Library/Application Support/Claude/claude_desktop_config.json on macOS,
%APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"toolkit": {
"command": "/absolute/path/to/mcp-toolkit/.venv/bin/python",
"args": ["/absolute/path/to/mcp-toolkit/server.py"],
"env": {
"MCP_WORKSPACE": "/absolute/path/to/mcp-toolkit/workspace"
}
}
}
}A ready-to-edit template is in examples/claude_desktop_config.json.
Restart Claude Desktop and the tools appear in the tool picker.
Safety by design
Sandboxed filesystem — file tools can only touch
MCP_WORKSPACE(defaults to./workspace); path traversal (..) is rejected.Read-only SQL — only
SELECT/WITHstatements run; anything else is refused before it reaches SQLite.Safe calculator — expressions are parsed with
ast, noteval; only arithmetic operators, whitelisted math functions, and numbers are allowed.No secrets in tools — the server never asks for or handles credentials.
Project structure
mcp-toolkit/
├── server.py # MCPServer: tools, resources, prompts
├── tools/
│ ├── filesystem.py # sandboxed file tools (pure functions)
│ ├── calculator.py # safe AST-based calculator
│ └── database.py # read-only SQLite interface
├── scripts/build_sample_db.py# builds data/sample.db (tiny e-commerce data)
├── workspace/ # sandboxed files the tools can touch
├── examples/
│ ├── client_example.py # stdio client demo
│ └── claude_desktop_config.json
└── tests/test_mcp.pyWhy MCP?
MCP is the open standard for connecting LLMs to data and tools — one protocol instead of a bespoke integration per app. This server shows the three MCP primitives: tools (actions the model can call), resources (data the model can read), and prompts (reusable instruction templates).
License
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Sandbox workspace tools: search, file read, DB queries, integrations. Returns synthetic data.
Gateway between LLM agents and world data through eight tools and a bundled endpoint catalog.
JSON/YAML, regex, diff, JWT, SQL dialects — the keyless millisecond ops an agent needs mid-task.
- mcp-serverOAuthai.cdbx
Build Apps and run code in 30 languages — sandboxed, with persistent sessions for agent loops.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceGives LLM agents access to local and remote data via databases, files, graphs, and structured documents, along with a full data science toolkit for analysis and modeling.4Apache 2.0
- FlicenseAqualityDmaintenanceEnables AI assistants to securely execute Python and JavaScript code in sandboxed environments, with file management and package installation.796 npm-
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to explore and query SQLite databases through read-only tools, with defense-in-depth sandboxing preventing any data modifications.MIT
- AlicenseAqualityBmaintenanceEnables Claude Desktop and Claude Code to inspect a Postgres schema and run read-only SQL queries against a demo database through the tools describe_schema and query_readonly. Every proposed query passes the same deterministic guardrails — SELECT-only, allow-listed tables, enforced row limits, statement timeouts and a read-only role — before execution.2MIT