it2mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IT2MCP_CONFIG | No | Override the config path with the IT2MCP_CONFIG environment variable (defaults to ~/.config/it2mcp/config.yaml). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| session_listA | List all iTerm2 sessions with their IDs, names, titles, sizes, TTYs, and mcp_enabled status. Shows all sessions regardless of mcp_enabled status so you can see which sessions need to be tagged. Only mcp_enabled sessions can be targeted by other tools. To enable a session for MCP access, run in that session's terminal: it2 session set-var user.mcp_enabled true |
| session_sendB | Send text to an iTerm2 session without pressing Enter. Args: text: The text to send. session_id: Target session ID. Omit for the active session. all_sessions: If true, send to every session. |
| session_runA | Execute a command in an iTerm2 session (sends text + Enter). Args: command: The command string to execute. session_id: Target session ID. Omit for the active session. all_sessions: If true, run in every session. |
| session_readA | Read the visible screen contents of an iTerm2 session. Args: session_id: Target session ID. Omit for the active session. lines: Number of lines to return from the bottom. Omit for all visible lines. |
| session_splitA | Split an iTerm2 session into a new pane. Args: vertical: If true, split vertically (side by side). Default is horizontal (top/bottom). session_id: Target session ID. Omit for the active session. profile: Profile name to use for the new pane. |
| session_closeA | Close an iTerm2 session. Args: session_id: Target session ID. Omit for the active session. |
| session_restartB | Restart an iTerm2 session. Args: session_id: Target session ID. Omit for the active session. |
| session_focusB | Focus (activate) a specific iTerm2 session. Args: session_id: The session ID to focus. |
| session_clearA | Clear the screen of an iTerm2 session (sends Ctrl+L). Args: session_id: Target session ID. Omit for the active session. |
| session_set_nameB | Set the name of an iTerm2 session. Args: name: The new session name. session_id: Target session ID. Omit for the active session. |
| session_get_variableB | Get the value of an iTerm2 session variable. Args: variable: The variable name (e.g. "session.name", "session.path"). session_id: Target session ID. Omit for the active session. |
| session_set_variableC | Set the value of an iTerm2 session variable. Args: variable: The variable name. value: The value to set. session_id: Target session ID. Omit for the active session. |
| window_listA | List all iTerm2 windows with their IDs, tab counts, positions, sizes, and fullscreen state. |
| window_newA | Create a new iTerm2 window. Args: profile: Profile name to use. Omit for the default profile. command: Command to run in the new window. |
| window_closeA | Close an iTerm2 window. Args: window_id: The window ID to close. Omit for the current window. |
| window_focusB | Focus (activate) a specific iTerm2 window. Args: window_id: The window ID to focus. |
| window_moveA | Move an iTerm2 window to a specific screen position. Args: x: X coordinate (pixels from left). y: Y coordinate (pixels from top). window_id: The window ID. Omit for the current window. |
| window_resizeB | Resize an iTerm2 window. Args: width: New width in pixels. height: New height in pixels. window_id: The window ID. Omit for the current window. |
| window_fullscreenA | Set fullscreen state for an iTerm2 window. Args: state: One of "on", "off", or "toggle". window_id: The window ID. Omit for the current window. |
| window_arrange_saveB | Save the current window arrangement. Args: name: Name for the saved arrangement. |
| window_arrange_restoreB | Restore a saved window arrangement. Args: name: Name of the arrangement to restore. |
| window_arrange_listB | List all saved window arrangements. |
| tab_listA | List all iTerm2 tabs with their IDs, window IDs, indices, session counts, and active state. Args: window_id: Only list tabs from this window. Omit for all windows. |
| tab_newA | Create a new tab in an iTerm2 window. Args: profile: Profile name for the new tab. window_id: Window ID to create the tab in. Omit for the current window. command: Command to run in the new tab. |
| tab_closeB | Close an iTerm2 tab. Args: tab_id: The tab ID to close. Omit for the current tab. |
| tab_selectB | Select a tab by its ID or numeric index. Args: tab_id_or_index: Tab ID string, or a numeric index (0-based). window_id: Window ID for index-based selection. Omit for the current window. |
| tab_nextA | Switch to the next tab in the current window. |
| tab_prevA | Switch to the previous tab in the current window. |
| tab_moveA | Move a tab to its own new window. Args: tab_id: The tab ID to move. Omit for the current tab. |
| app_activateA | Activate iTerm2 (bring to front). |
| app_get_focusA | Get information about the currently focused window, tab, and session. |
| app_themeA | Get or set the iTerm2 theme. Args: value: Theme to set. One of: light, dark, light-hc, dark-hc, automatic, minimal. Omit to get the current theme. |
| app_versionB | Get the iTerm2 version. |
| broadcast_onB | Enable input broadcasting to all sessions in the current tab. |
| broadcast_offB | Disable input broadcasting. |
| broadcast_addC | Create a broadcast group with specific sessions. Args: session_ids: List of session IDs to include in the broadcast group. |
| profile_listA | List all iTerm2 profiles with their GUIDs and names. |
| profile_showB | Show detailed information about an iTerm2 profile. Args: name: The profile name. |
| profile_applyB | Apply an iTerm2 profile to a session. Args: name: The profile name to apply. session_id: Target session ID. Omit for the active session. |
| batchA | Execute a batch of iTerm2 operations sequentially within a single connection. Each operation is a dict with an "op" field naming the operation, plus any parameters for that operation. A special "sleep" operation pauses between steps. Args: operations: List of operation dicts. Each must have an "op" field. Available ops: session_send, session_run, session_read, session_split, session_close, session_focus, session_clear, session_set_name, session_list, session_get_variable, session_set_variable, session_restart, window_new, window_close, window_focus, tab_new, tab_close, tab_select, tab_next, tab_prev, app_activate, broadcast_on, broadcast_off, send_keystrokes, profile_apply, sleep. Returns: JSON array of results, one per operation, with index, op name, and result or error. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/urjitbhatia/it2mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server