Skip to main content
Glama
dillip285

MCP Terminal Server

by dillip285
README.md
# MCP Terminal Server

A secure command-line interface server for the Model Context Protocol (MCP) that enables AI models to interact with your terminal while maintaining security and control.

## Features

- 🔒 Secure command execution with configurable permissions
- 📁 File system operations within allowed paths
- 🌍 Environment variable management
- 💻 Cross-platform support (Windows, macOS, Linux)
- 🔌 Remote system connections support via command execution

## Usage with Claude Desktop

Add the server configuration to your Claude Desktop config file:

```json
{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": [
        "@dillip285/mcp-terminal",
        "--allowed-paths",
        "/path/to/allowed/directory"
      ]
    }
  }
}
```

Restart Claude Desktop to apply the changes. You can now use the terminal capabilities through Claude with secure file access and command execution.

## Available Tools

- `execute_command`: Run terminal commands securely (including SSH and remote commands)

## Security

- All operations are restricted to specified allowed paths
- Commands are validated and sanitized before execution
- Environment variables are carefully managed
- Proper error handling for security-related issues

## Development

```bash
# Clone the repository
git clone https://github.com/dillip285/mcp-terminal.git

# Install dependencies
npm install

# Configure npm authentication
cp .npmrc.example .npmrc
# Edit .npmrc and add your NPM_TOKEN

# Run tests
npm test

# Build the project
npm run build
```

## Publishing

To publish the package:

1. Copy `.npmrc.example` to `.npmrc`
2. Add your npm authentication token to `.npmrc`
3. Run `npm publish --access public`

Note: Never commit your `.npmrc` file with the authentication token. It is already added to `.gitignore`.

## Contributing

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'feat: Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

## License

MIT License - see the [LICENSE](LICENSE) file for details.

## Related Projects

- [Model Context Protocol](https://modelcontextprotocol.io/)
- [Claude Desktop](https://claude.ai/download)

## Support

For bug reports and feature requests, please [open an issue](https://github.com/dillip285/mcp-terminal/issues).

TDQS

B3.1/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool 'execute_command' has a clear and distinct purpose that cannot be confused with any other tool in this set.

Naming Consistency5/5

The single tool name 'execute_command' follows a verb_noun pattern, and with only one tool, the naming is inherently consistent. There are no other tools to compare against, so no inconsistencies can arise.

Tool Count2/5

A single tool for a terminal server feels too minimal for the apparent scope. While it covers basic command execution, typical terminal operations might include listing files, navigating directories, or managing processes, suggesting a gap in functionality.

Completeness2/5

The tool surface is severely incomplete for a terminal server domain. It only allows command execution, missing essential operations like file browsing, process management, or environment inspection, which are core to terminal workflows and will likely cause agent failures.

Maintenance

ActivityInactive
ResponsivenessNo issues