home / mcp / mcp server developer tool mcp server
Go-based MCP server enabling configurable path-restricted file operations and pluggable tools.
Configuration
View docs{
"mcpServers": {
"da-snap-mcp-server-developer-tool": {
"command": "./mcp-server",
"args": [],
"env": {
"MCP_DENIED_PATHS": "/path/to/deny:/another/deny",
"MCP_ALLOWED_PATHS": "/path/to/allow:/another/path"
}
}
}
}You run a modular MCP server written in Go to provide a secure and extensible data and command interface via the Model Context Protocol. It supports controlled file operations, pluggable tools, and configurable path restrictions to help you securely expose a server-side API for clients to interact with data sources and actions.
Start by building and running the MCP server locally. Once the server is running, you can connect to it from an MCP client to perform actions, run tools, and access responses. The server exposes a simple, extensible interface that lets you execute predefined tools, query response data, and receive structured results. You control what the server can access on the filesystem through path restrictions, and you can extend functionality by adding new tools that implement the serverβs Tool interface.
Prerequisites you need before installation:
Clone the project code into a local directory and navigate into the project root to begin building and running.
cd cmd/mcp-server
go build -o mcp-server
./mcp-serverConfigure security by restricting allowed file operation paths. You can set allowed paths and denied paths either via command-line flags or environment variables. The server defaults to allowing operations only in the current working directory if you do not specify paths.
- Path restrictions help ensure file operations stay within safe directories. For commands executed by the server, path checks apply to both whitelisted paths and denied paths.
- The server automatically denies common sensitive directories like ".git" and ".env" unless explicitly overridden by configuration.
If you encounter permission errors, verify that the process has access to all allowed directories and that denied paths are not inadvertently permitting restricted locations.
You can add new tools that implement the Tool interface to extend server capabilities. New tools can optionally implement the ConfigAware interface to access server configuration during execution, enabling security-aware tooling.
Executes shell commands with security restrictions, ensuring commands run in permitted directories and within the defined allowed paths.
Shows contents or metadata of a specified file within the serverβs controlled environment.
Searches for text or patterns within files, operating under the serverβs path restrictions.
Writes data to a file within allowed paths, enforcing safety checks before writing.