- Home
- MCP servers
- ITerm
ITerm
- javascript
15
GitHub Stars
javascript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"rishabkoul-iterm-mcp-server": {
"command": "npx",
"args": [
"iterm_mcp_server"
]
}
}
}You can control iTerm2 terminals through an MCP server, enabling AI assistants to open terminals, run commands, read outputs, list active sessions, and close terminals. This makes terminal automation and orchestration straightforward from any MCP client.
How to use
Use an MCP client to connect to the ITerm MCP Server and perform these actions: create a new terminal session, run commands inside a terminal, read the real-time output, list all active terminals, and close terminals when you’re done. Each operation maps to one of the available tools and can be chained to build complex workflows.
How to install
Prerequisites you must meet before running the server.
- Node.js 14.x or newer
- iTerm2 installed on macOS
- macOS as the host OS
Start by making the MCP server accessible to your MCP clients. The recommended approach for local usage is to run the server through npx, which executes the MCP server package without a global install.
Optionally, you can integrate with Cursor by adding the following configuration to your MCP client setup. This enables easy access to the ITerm MCP Server from Cursor.
{
"mcpServers": {
"terminal": {
"command": "npx",
"args": ["iterm_mcp_server"]
}
}
}
Additional configuration and usage notes
Standard MCP configuration is sufficient for normal use. The provided Cursor integration demonstrates how to expose the ITerm MCP Server as a terminal handler via npx, enabling clients to connect and manage terminals.
Available tools
open_terminal
Open a new iTerm2 terminal session to run commands within a dedicated process.
execute_command
Execute a given shell command inside a specific terminal session and capture its output.
read_output
Read and stream the real-time output from a terminal session.
close_terminal
Close a specified terminal session when it is no longer needed.
list_terminals
List all active terminals and their current state, including identifiers and metadata.