Skip to main content
Glama
amol21p

mcp-interactive-terminal

by amol21p

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.9

  • Disambiguation5/5

    Each tool has a clearly distinct purpose: create_session spawns a session, list_sessions shows active ones, send_command sends input, send_control handles special keys, read_output reads the screen, confirm_dangerous_command is a safety step, and close_session terminates. No overlap.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern (e.g., create_session, send_command, read_output). Verbs are imperative and nouns are session-related, with no mixing of conventions.

    Tool Count5/5

    Seven tools cover the full lifecycle of interactive terminal sessions—creation, listing, input/output, control, safety confirmation, and closure—without unnecessary extras or missing essentials.

    Completeness5/5

    The set provides a complete CRUD-like cycle: create, list, interact (send command/control), read output, and close. The inclusion of confirm_dangerous_command adds safety without leaving gaps.

  • Average 3.8/5 across 7 of 7 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • 1 of 1 community issues answered or closed in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already provide destructiveHint=true and idempotentHint=true. The description adds 'close/kill' but no further behavioral details beyond what annotations convey.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is extremely concise with a single phrase, containing no unnecessary words. However, it could be structured better with separate purpose and action guidance.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple destructive tool with annotations, the description is adequate but lacks information about irreversibility or side effects. No output schema is needed.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100% with both parameters described. The description does not add any additional meaning beyond the schema's definitions.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses clear action verbs ('Close/kill') and specifies the resource ('interactive terminal session'), effectively distinguishing it from sibling tools like create_session or list_sessions.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives, such as confirm_dangerous_command for destructive actions. The description lacks any context about prerequisites or scenarios.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already indicate openWorldHint=true and non-idempotent. The description adds no extra behavioral context (e.g., resource lifecycle, cleanup needs). Given annotations, the description provides adequate but minimal transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two sentences, front-loaded with purpose and output. Efficient and clear, though could benefit from a slightly more structured breakdown of use cases.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    No output schema, but the description mentions returning a session_id. With 7 parameters including nested objects, the description could provide more context on session lifecycle or error handling.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100%, so the schema already documents all parameters. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool spawns an interactive terminal session with examples (REPL, shell, database client, SSH). It mentions returning a session_id, which differentiates it from sibling tools like close_session or send_command that operate on existing sessions.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies usage for subsequent commands, providing clear context. It could explicitly state when not to use or mention prerequisites, but the sibling tool names (e.g., send_command) help infer the workflow.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. Description adds 'Safe read-only operation' which reinforces but does not add new behavioral context. With thorough annotations, this is adequate but not enhancing.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Extremely concise: two short phrases that fully describe purpose and safety. No unnecessary words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With no output schema or parameters, description covers the core what and safety. However, it does not specify what details about sessions are returned (e.g., IDs, timestamps), which would help an agent. Missing a minor detail.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    No parameters in schema; schema coverage is 100% by default. Baseline for 0 params is 4, but with high schema coverage baseline is 3. Description adds no parameter info, but none is needed since there are none.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description clearly states 'List all active interactive terminal sessions', specifying the verb (List) and resource (active interactive terminal sessions). This distinguishes from sibling tools like close_session or send_command.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No explicit guidance on when to use vs alternatives. The description implies usage for viewing active sessions, but lacks exclusions or comparison to siblings. Context signals show sibling tools exist but are not referenced.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already provide readOnlyHint, destructiveHint, idempotentHint. Description adds only 'safe read-only operation' which repeats annotations without new behavioral context.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Extremely concise single sentence plus tagline, no unnecessary words, front-loaded with key action.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Adequate given rich annotations and full schema coverage; could briefly mention that full_screen retrieves scrollback history, but not essential.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100% with descriptions for both parameters. Description adds no extra meaning beyond the schema, so baseline score applies.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Clearly states 'Read the current terminal screen' with specific verb and resource, and distinguishes from sibling tools like send_command by emphasizing 'without sending any input'.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Implicitly tells when to use (reading output) and not to use (sending input), but lacks explicit comparison to alternatives like confirm_dangerous_command.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already indicate idempotentHint=true and destructiveHint=false. The description does not add behavioral context beyond listing supported controls; it does not disclose side effects, such as process termination or state changes, nor does it contradict annotations.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Single, front-loaded sentence that efficiently communicates purpose and examples. No redundant information.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given no output schema and 100% schema coverage, the description adequately covers the tool's purpose and typical use cases. Minor gaps: no mention of behavior on invalid session or control sequence.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema covers both parameters with descriptions. The tool description adds value by giving functional examples (e.g., ctrl+c to interrupt) that explain the effect of certain controls, enhancing understanding beyond the schema's enumeration.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description clearly specifies the tool sends control characters or special keys to a session, with concrete examples like ctrl+c and ctrl+d. It distinguishes itself from sibling tools like send_command (which sends typed commands) and read_output.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies usage for sending control sequences (e.g., to interrupt or send EOF), but does not explicitly state when to use this tool versus alternatives like send_command or confirm_dangerous_command. No exclusions or context are provided.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    The description adds behavioral context beyond annotations: automatically appending newline, returning clean text without ANSI codes, and requiring confirmation for dangerous commands. Annotations already indicate destructive potential, and the description reinforces safe usage.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is three sentences long with no filler. It front-loads the core action, then adds key behaviors. Every sentence provides value.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    No output schema, so the description should explain return format. It says 'Returns clean text output (no ANSI codes),' but does not specify output structure, length limits, or error handling. Given the tool's complexity, more detail would be helpful.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100%, so parameters are already well-documented. The description adds minimal extra meaning beyond the schema, such as the automatic newline and clean output, which are not parameter-specific.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states 'Send a command/input to an interactive session and wait for output.' It uses a specific verb and resource, and distinguishes from siblings by mentioning the dangerous command workflow and output characteristics.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides guidance on when to use this tool (sending commands) and explicitly notes that for dangerous commands, confirm_dangerous_command must be used first. However, it does not contrast with sibling tools like read_output or send_control.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already indicate destructiveHint=true, so the description adds value by explaining the safety confirmation step and the need for justification, which is not redundant. No contradiction with annotations.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise with three short sentences, front-loading the main action and purpose without any unnecessary words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's simplicity and the schema covering all parameters with descriptions, the description is complete enough. It could mention what happens after execution (e.g., output), but no output schema exists, so the current level is adequate.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100%, with descriptions for all parameters. The description does not add significant extra meaning beyond what the schema already provides, such as the 'justification' parameter's minLength constraint.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states that the tool executes a dangerous command after confirmation, distinguishing it from sibling 'send_command' by emphasizing the confirmation step. It uses specific verb 'execute' and resource 'command flagged as dangerous'.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description explains that the tool is used after a command is flagged as dangerous and requires a justification, but it doesn't explicitly state when not to use it or provide alternative tools, which would be helpful for an AI agent.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

mcp-interactive-terminal MCP server

Copy to your README.md:

Score Badge

mcp-interactive-terminal MCP server

Copy to your README.md:

Latest Blog Posts

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/amol21p/mcp-interactive-terminal'

If you have feedback or need assistance with the MCP directory API, please join our Discord server