
0brym/mcp
Developer toolsこのページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る
modular mcp server
概要
A with . Just edit a JSON config file to enable/disable tools and plugins! - : Enable/disable tools by editing config.json - : Pure Node.js (18+), no npm packages needed - : Easy to add new plugins - : Built-in access controls and sandboxing per tool - : ~500 lines of core code - : Minimal overhead, direct tool execution No code changes needed to add/remove tools. Want to enable file operations? Just edit the config: File and directory operations with path restrictions. - read_file - Read file contents - write_file - Write to files - list_directory - List directory contents - file_info - Get file metadata - delete_file - Delete files Execute shell commands with whitelist/blacklist support. Make HTTP requests with domain restrictions.
README
以下は原文 README の抜粋です。原文を見る。
Modular MCP Server
A config-driven, modular MCP (Model Context Protocol) server with zero dependencies. Just edit a JSON config file to enable/disable tools and plugins!
Features
- Config-Driven: Enable/disable tools by editing
config.json - Zero Dependencies: Pure Node.js (18+), no npm packages needed
- Plugin Architecture: Easy to add new plugins
- Security: Built-in access controls and sandboxing per tool
- Simple: ~500 lines of core code
- Fast: Minimal overhead, direct tool execution
Quick Start
# 1. Create or edit config.json
cp config.example.json config.json
# 2. Start the server
node server.js
# Or specify a config file
node server.js my-config.json
How It Works
Config File Structure
The config.json file controls everything:
{
"server": {
"name": "my-mcp-server",
"version": "1.0.0"
},
"plugins": [
{
"name": "utils",
"type": "builtin",
"module": "utils",
"enabled": true,
"tools": [
{
"name": "echo",
"enabled": true
},
{
"name": "calculate",
"enabled": true
}
]
}
]
}
That’s it! No code changes needed to add/remove tools.
Adding a Tool
Want to enable file operations? Just edit the config:
{
"plugins": [
{
"name": "filesystem",
"type": "builtin",
"module": "filesystem",
"enabled": true,
"tools": [
{
"name": "read_file",
"enabled": true,
"allowedPaths": [".", "/tmp"]
},
{
"name": "write_file",
"enabled": true
}
]
}
]
}
Restart the server - done!
Disabling a Tool
Set "enabled": false:
{
"name": "delete_file",
"enabled": false // ← Tool won't be available
}
Built-in Plugins
Filesystem Plugin
File and directory operations with path restrictions.
Tools:
read_file- Read file contentswrite_file- Write to fileslist_directory- List directory contentsfile_info- Get file metadatadelete_file- Delete files
Config Options:
{
"name": "read_file",
"enabled": true,
"allowedPaths": [".", "/tmp"], // Restrict access
"readonly": false // Make filesystem readonly
}
Shell Plugin
Execute shell commands with whitelist/blacklist support.
Tools:
exec_command- Execute shell commands
Config Options:
{
"name": "exec_command",
"enabled": true,
"allowedCommands": ["ls", "pwd", "cat"], // Whitelist
"blockedCommands": ["rm", "sudo"], // Blacklist
"maxBuffer": 1048576 // 1MB output limit
}
HTTP Plugin
Make HTTP requests with domain restrictions.
Tools:
http_get- GET requestshttp_post- POST requests
Config Options:
{
"name": "http_get",
"enabled": true,
インストール
This server does not publish a one-line install command.
Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →