Minimal Node.js MCP Server
A stateless MCP server for filesystem operations, command execution, and computation, designed for use with llama.cpp WebUI.
README
Minimal Node.js MCP server
A small, stateless MCP server built with TypeScript, tsx, Zod, and the official
Model Context Protocol SDK.
Run
npm install
npm start
The MCP endpoint is http://localhost:5555/mcp. A readable health endpoint is
available at http://localhost:5555/health.
Choose another workspace or port:
npm start -- --cwd ./my-workspace --port 6000
--cwd is resolved from the project root/current launch directory. When omitted,
the server creates:
sandbox/yymmdd-hhMMss
The timestamp is captured once, when the server process starts. For example:
sandbox/260729-013045.
Stateless behavior
This server intentionally uses stateless Streamable HTTP. It does not issue or
require an Mcp-Session-Id; every MCP request can be handled independently.
The configured workspace and its files still persist for the lifetime of the
server process (and on disk afterward).
Each run_cmd call starts a new shell process in the configured workspace.
Shell-local state such as cd, aliases, and environment variables does not carry
over to later tool calls. To work in a subdirectory for one command, use a single
command such as cd project && npm test.
Use with llama.cpp WebUI
Current llama.cpp WebUI releases support MCP over Streamable HTTP. Because this server does not currently add browser CORS headers, use llama-server's built-in MCP proxy.
-
Start this MCP server:
npm start -
Start
llama-serverwith its MCP proxy enabled:llama-server [your usual model options] --ui-mcp-proxy -
In the llama.cpp WebUI MCP settings, add:
- URL:
http://127.0.0.1:5555/mcp - Transport: Streamable HTTP
- Use llama-server proxy: enabled
- URL:
--webui-mcp-proxy is the deprecated name of the llama.cpp option; prefer
--ui-mcp-proxy. The WebUI may keep a live MCP connection and reconnect it, but
this server remains stateless and does not depend on transport-session continuity.
Included tools
- Filesystem:
ls,read_file,write_file,mkdir,delete_file - Command:
run_cmd - Computation:
js_calculator - Real world:
get_current_time
There is intentionally no command sandbox or path restriction.
Add a tool
Create or edit a module under src/tools, then add its exported array to
src/tools/index.ts:
{
name: "echo",
description: "Return the supplied text.",
inputSchema: {
text: z.string(),
},
handler: ({ text }) => ({ text }),
}
The registry handles MCP registration, Zod validation, result serialization, and error conversion.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.