MCP.so
Sign In
Servers

@modelcontextprotocol/server-terminal

@MCP-Mirror

Mirror of

Overview

What is @modelcontextprotocol/server-terminal?

A terminal server implementation for the Model Context Protocol (MCP). It provides secure and controlled access to shell commands and npm operations, designed for MCP integrations that need to run terminal tasks programmatically.

How to use @modelcontextprotocol/server-terminal?

Install the package via npm, then add the provided JSON configuration to your MCP config file. The configuration defines allowed commands, a default timeout, a working directory, and environment variables.

Key features of @modelcontextprotocol/server-terminal

  • Execute shell commands with full control
  • Built-in npm operations (install, run scripts)
  • Timeout handling for long-running commands
  • Security through an allowed commands list
  • Environment variables management
  • Working directory control
  • TypeScript support

Use cases of @modelcontextprotocol/server-terminal

  • Run build, dev, or test scripts in a project directory
  • Install npm packages automatically as part of an MCP workflow
  • Execute controlled shell commands (e.g., git operations) with timeouts
  • Manage development environment variables for consistent command execution

FAQ from @modelcontextprotocol/server-terminal

What are the required configuration fields?

The allowedCommands list, defaultTimeout, and defaultCwd are configurable; the README shows npm, node, and git as examples for allowed commands and a 30-second timeout.

How does the server enforce security?

It restricts which commands can be run via the allowedCommands configuration array—only those listed (e.g., npm, node, git) are permitted.

What npm operations are built-in?

The server exposes install(), runScript(), dev(), and build() methods for common npm tasks like installing packages and running scripts.

Does it support custom environment variables?

Yes, you can set environment variables like NODE_ENV through the environmentVariables configuration object.

What runtime or dependencies does it require?

It requires Node.js and npm to be installed, and it is installed via npm install @modelcontextprotocol/server-terminal.

Tags

More from Developer Tools