Local MCP Toolkit
Provides tools for working with a local SQLite database, including read-only SQL query execution and persistence for notes, execution history, and settings.
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., "@Local MCP Toolkitcreate a note called todo.md with my shopping list"
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.
Local MCP Toolkit
A local-first developer toolkit that exposes filesystem, notes, SQLite, and utility operations through a real Model Context Protocol (MCP) server — plus a modern dashboard for discovery, testing, and management.
No cloud AI APIs. No API keys. After npm install, everything runs on loopback.
What is MCP?
The Model Context Protocol is an open protocol for connecting AI assistants and tools to external systems. An MCP server registers tools (with schemas); an MCP client discovers and invokes them over a transport (stdio or Streamable HTTP).
This project uses the official TypeScript SDK (@modelcontextprotocol/sdk), not a REST mock that pretends to be MCP.
Related MCP server: AKIMCP
Architecture (short)
One deployable Node process in production: Fastify serves /api/*, /mcp, and the Vite-built UI from apps/web/dist on a single origin.
Piece | Role |
Fastify (apps/server) | Single HTTP server — API, MCP Streamable HTTP, static SPA |
MCP server | Registers tools; Streamable HTTP at |
MCP client | In-process SDK client → |
React dashboard (apps/web) | Vite app; relative |
SQLite | Notes, execution history, settings ( |
Development still runs Vite (:5173) with a proxy to Fastify (:3847). See docs/ARCHITECTURE.md, docs/MCP_IMPLEMENTATION.md, and docs/DEPLOYMENT.md.
Prerequisites
Node.js 22.5+ (tested with Node 24; needs built-in
node:sqlite)npm 10+
Windows, macOS, or Linux
Install
npm installCopy environment defaults:
# PowerShell
Copy-Item .env.example .env
# bash
cp .env.example .envRun (development)
One command (server + web):
npm run devOr separately:
npm run dev:server # http://127.0.0.1:3847
npm run dev:web # http://127.0.0.1:5173Open http://127.0.0.1:5173. The web app proxies /api and /mcp to the backend.
On first load, the UI fetches a session token from GET /api/session and sends it as X-Session-Token.
Production (single server)
npm run build
npm startOr: npm run start:prod
This starts one Fastify process on http://127.0.0.1:3847 that serves:
Dashboard UI (
apps/web/dist)REST API (
/api/*)MCP Streamable HTTP (
/mcp)
No separate frontend host for local/VPS production.
Vercel (Services)
Push this repo, then import as a multi-service project. vercel.json defines web (Vite at /) and server (Fastify at /api/* + /mcp). Storage is ephemeral on Vercel — see docs/DEPLOYMENT.md.
Stdio MCP server (Cursor / Claude Desktop)
npm run mcp:stdio -w @local-mcp/serverExample Cursor MCP config:
{
"mcpServers": {
"local-mcp-toolkit": {
"command": "npx",
"args": ["tsx", "apps/server/src/mcp/stdio-entry.ts"],
"cwd": "E:/mcp project",
"env": {
"WORKSPACE_PATH": "./data/workspace",
"DATABASE_PATH": "./data/db/toolkit.sqlite"
}
}
}
}Environment variables
Variable | Default | Notes |
|
| Loopback only recommended |
|
| API + MCP HTTP |
|
| Sandboxed files root |
|
| App SQLite DB |
|
| Pino level |
| Vite origins | CORS allowlist |
| auto-generated | Optional fixed token |
|
| Optional Ollama status only |
See .env.example for the full list.
Tests
npm run test:unit
npm run test:integration
npm test
npm run test:e2eScripts
Script | Purpose |
| Start API + web |
| Build shared, server, web |
| TypeScript check |
| ESLint |
| Prettier |
| Apply SQLite migrations |
| Dependency audit |
Security model
Loopback bind by default
Origin allowlist + Host loopback checks (DNS rebinding mitigation)
Session token for
/api/*Workspace path canonicalization, traversal rejection, symlink escape checks
Read-only SQL validator (SELECT only)
No shell execution, no
evalMCP DNS rebinding protection on Streamable HTTP transport
Details: docs/SECURITY.md.
Adding a tool
See docs/ADDING_TOOLS.md.
Troubleshooting
Issue | Fix |
SQLite errors on old Node | Upgrade to Node 22.5+ / 24 (built-in |
CORS / 403 Origin | Add your UI origin to |
401 Unauthorized | Clear site data or call |
Empty tools list | Ensure server is on |
File path errors | Use workspace-relative paths only |
License
MIT
Local-MCP-Toolkit
This server cannot be deployed
Maintenance
Related MCP Connectors
Agent-native notes, tasks, dev-docs, vaults, sync & handoffs. MCP + OpenAPI dual surface.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables an AI assistant to invoke local file operations, multi-engine web search, weather, system commands, developer utilities, and code execution over MCP, and includes a web dashboard for managing endpoints, testing tools, and viewing live logs.36 npm1MIT
- FlicenseNot gradedqualityAmaintenanceExposes a governed suite of 38 tools over a single OAuth-gated MCP endpoint, letting web AI chat clients such as Claude, ChatGPT, and Grok operate on a local machine — reading and editing files, running whitelisted shell commands, searching, querying SQLite, driving browsers and DevTools, managing background jobs, ports, and clipboard. Local IDEs and Postman can also connect directly over localhost for offline, low-latency access.-
- FlicenseNot gradedqualityAmaintenanceExposes 38 OAuth-gated tools over one MCP endpoint so web-based AI clients like Claude, ChatGPT, and Grok can read and edit local files, run whitelisted shell commands, search content, use Git, SQLite, browser automation, DevTools, clipboard, notifications, ports, and background jobs on your own machine. A strict command whitelist and folder restrictions keep the local operating surface governable and safe by default.-
- AlicenseNot gradedqualityAmaintenanceExposes a governed suite of 38 OAuth-gated tools over one MCP endpoint, letting web-based AI chat clients read and edit files, run whitelisted shell commands, search, and use Git, SQLite, browser automation, DevTools, background tasks, ports, clipboard, notifications, and localhost services on the user's own machine. It also allows local IDEs and automation tools to connect directly over localhost for offline, low-latency access.MIT