MCP Interactive Terminal Server

MCP Interactive Terminal Server

site icon
2025.05.08 0
Python终端管理交互式会话开发效率
MCP Interactive Terminal Server 是一个基于 Python 的服务,使用 FastMCP 包构建,用于管理交互式终端会话。它支持 stdio 和 SSE 传输机制,适用于多种使用场景。该服务器提供了一系列工具,用于启动、监控、发送命令和终止交互式会话,适用于开发调试和自动化任务。
View on GitHub

Overview

基本能力

产品定位

MCP Interactive Terminal Server 是一个用于管理交互式终端会话的服务,适用于开发调试和自动化任务。

核心功能

  1. 启动会话:通过调用 shell 命令启动新的交互式会话。
  2. 等待输出或提示:监控会话输出,检测特定提示或文本。
  3. 发送命令:向交互式会话发送命令。
  4. 终止会话:结束指定的交互式会话。
  5. 获取活动会话:列出所有活动的交互式会话及其状态。

适用场景

  1. 开发调试:用于启动和监控交互式开发环境(如 Python REPL)。
  2. 自动化任务:通过脚本自动化交互式会话的管理和操作。
  3. 日志记录:可选地将会话输出记录到日志文件中。

工具列表

  1. Start Session:启动新的交互式会话。
  2. Wait for Output or Prompt:监控会话输出或检测特定提示。
  3. Send Command:向会话发送命令。
  4. Exit Session:终止会话。
  5. Get Active Sessions:获取所有活动会话的状态。

常见问题解答

  1. 如何启动服务器
  2. 使用 VS Code 或命令行启动,支持 stdio 和 SSE 传输机制。
  3. 如何测试服务器功能
  4. 运行 uv run python3 -m unittest 进行单元测试。

使用教程

使用依赖

  1. Python 3.13 或更高版本bash python --version
  2. UV Astral 包管理器
  3. 独立安装: bash curl -LsSf https://astral.sh/uv/install.sh | sh
  4. Pip 安装: bash pip install uv 验证安装: bash uv --version

安装教程

  1. 克隆仓库: bash git clone <repository-url> cd mcp_interactive_terminal
  2. 配置 VS Code(可选):
  3. 确保 .vscode/mcp.json 文件配置正确。

调试方式

  1. 启动服务器
  2. Stdio 传输(默认): bash uv run python -m interactive.server
  3. SSE 传输: bash uv run python -m interactive.server --transport sse --port 8070
  4. 测试功能bash uv run python3 -m unittest

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。