Combined MCP Server
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., "@Combined MCP Servershow me the current git status"
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.
Combined MCP Server
A self-hosted MCP (Model Context Protocol) server that gives AI agents controlled access to a machine: filesystem, shell, background processes, git, web fetching and persistent key-value memory. Works over SSE (HTTP) or stdio.
Tools
Filesystem
Tool | Description |
| Read a file |
| Write a file (parent directories are created automatically) |
| Replace an exact string in a file; preserves file permissions, fails if the match is ambiguous |
| List directory contents |
| Grep-like regex search ( |
| Find files by glob pattern ( |
Shell & processes
Tool | Description |
| Run a command via |
| Start a long-running background process (dev server, build) |
| List background processes or inspect one |
| Read captured stdout+stderr (ring buffer, 200 KB per process) |
| Send a signal to a background process (default |
Git
All git tools accept a repository directory (path/cwd) and default to the server working directory. Arguments are passed to git without a shell, so commit messages and paths cannot inject commands.
Tool | Description |
|
|
|
|
|
|
| Recent commits, optionally for one path |
| List, create or switch branches |
| Show a commit (message + diff, or |
Web & memory
Tool | Description |
| Fetch a URL and convert HTML to Markdown |
| Persistent key-value memory ( |
Related MCP server: mcp-devtools
Quick start
npm install
node index.js # SSE on http://localhost:8000/sse
PORT=9000 node index.js # custom port
USE_STDIO=true node index.js # stdio transport instead of HTTPSecurity
Authentication (fail-closed)
Token auth for the HTTP endpoints turns on automatically as soon as at least one active token exists in tokens.json. MCP_REQUIRE_AUTH=1 forces auth on even with no tokens (rejects everything); MCP_REQUIRE_AUTH=0 disables auth explicitly:
# create tokens (any number, with TTL or forever)
node scripts/token.js create --name laptop --ttl 30d
node scripts/token.js create --name ci --count 5 --ttl 12h
node scripts/token.js create --name main # never expires
node scripts/token.js list
node scripts/token.js revoke laptop # by name or by token value
node index.js # auth is now enforced because active tokens existClients pass the token as Authorization: Bearer <token> or ?token=<token> in the SSE URL (many SSE clients cannot set headers). Tokens live in tokens.json (chmod 600; override with MCP_TOKENS_FILE). The file is re-read on every request, so revocation takes effect immediately without a restart.
Path allowlist (opt-in)
Restrict filesystem and git tools to specific directories:
MCP_ALLOWED_DIRS="/home/user/projects:/tmp" node index.jsWhen unset, file tools can access everything the server user can (a warning is logged).
Known limitations
executeShellandstartProcessare not sandboxed: a shell command can touch anything the server user can, regardless ofMCP_ALLOWED_DIRS. Disable or firewall them if you expose the server beyond localhost.The allowlist does not resolve symlinks pointing outside allowed directories.
Prefer binding behind a reverse proxy with TLS when exposing the server to a network.
Configuration
Env var | Default | Meaning |
|
| HTTP port for SSE mode |
| unset |
|
| auto |
|
|
| Token storage location |
| unset | Colon-separated allowlist for file/git tools |
Tests
node test/smoke.mjs # token manager + live auth checksCI runs syntax checks and the smoke test on every push/tag (.woodpecker.yml, Codeberg Woodpecker).
NixOS
nix develop # shell with nodejs + git
npm install
nix run .#server # or just: node index.jsThis server cannot be deployed
Maintenance
Related MCP Connectors
Remote MCP server exposing your Node Command fleet (files, shell, processes, browser) to AI hosts.
1Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Cloud-hosted MCP server for durable AI memory
Related MCP Servers
- AlicenseBqualityCmaintenanceA local-first MCP server that provides AI agents with safe codebase access through file discovery, hybrid lexical-semantic search, and project introspection. It features durable local memory and semantic indexing while keeping all data and processing entirely on your local machine.7422 npm6MIT
- AlicenseBqualityDmaintenanceProduction-grade MCP server that gives AI agents safe access to your local dev environment: filesystem, databases, processes, and OpenAPI specs.1543 npm3MIT
- AlicenseNot gradedqualityAmaintenanceSelf-hosted MCP server giving AI agents persistent memory for personalization and context across conversations.279Apache 2.0
- AlicenseNot gradedqualityDmaintenanceA free, open-source MCP server that gives AI agents real filesystem, terminal, git, and process control over your machine for inspection, diagnosis, and repair.MIT