MCP Terminal Server
local-only server
The server can only run on the client’s local machine because it depends on local resources.
MCP Terminal Server
A secure terminal execution server implementing the Model Context Protocol (MCP). This server provides controlled command execution capabilities with security features and resource limits.
Features
- Command Execution: Execute shell commands with output capture and error handling
- Security Controls: Restrict allowed commands and prevent command injection
- Resource Controls:
- Command timeouts
- Maximum output size limits
- MCP Protocol Support:
- Standard MCP message format
- Capability advertisement
- Streaming output support
Development
Local Setup
Publishing to PyPI
Testing with MCP Inspector
The MCP Inspector tool can be used to test the server implementation:
Running Tests
Using with Claude Desktop
Once the package is published to PyPI:
- Install UV (if not already installed):Copy
- Install the Package using UV:Copy
- Configure Claude Desktop:
Edit your Claude Desktop config file (typically at
~/Library/Application Support/Claude/claude_desktop_config.json
on macOS):Copy
Protocol Implementation
The server implements the Model Context Protocol (MCP) with the following capabilities:
Capabilities Advertisement
Message Format
Request:
Response:
Error:
Security Considerations
- Command Validation:
- Only allowed commands can be executed
- Shell operators are blocked
- Command injection attempts are prevented
- Resource Protection:
- Command timeouts prevent hanging
- Output size limits prevent memory exhaustion
- Error handling for all failure cases
- Best Practices:
- Always set
allowed-commands
in production - Use conservative timeout and size limits
- Monitor command execution logs
- Always set
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
You must be authenticated.
A secure terminal execution server that enables controlled command execution with security features and resource limits via the Model Context Protocol (MCP).
- Features
- Development
- Using with Claude Desktop
- Protocol Implementation
- Security Considerations
- Contributing
- License