Token导航 LogoToken导航TokenDH.com
MCP backgroundr logo
开发工具未说明官方级别未说明来源级核验

MCP backgroundr

MCP Server

一个基于Model Context Protocol (MCP)的后台任务管理服务,用于启动、监控和终止长期运行的shell命令,适用于AI助手或其他MCP客户端管理开发者工具。

工具数

3

提示词数

0

GitHub Stars

1

资源数

0
开发工具Rust本地部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

drhurd

提供方

drhurd

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

后台任务 MCP 服务器

这个项目暴露了一个模型上下文协议(MCP)服务器,使得MCP-aware(即对MCP有感知能力的)组件能够 客户端用于启动、监控和终止长期运行的shell命令。它非常方便 保持语言服务器或其他开发者工具在后台运行的方法 来自AI助手或任何其他MCP客户端内部。

先决条件

  • Rust 工具链 (1.80+ 推荐)。
  • 无论你计划启动哪种背景工具,例如:

- python安装一个语言服务器,例如 pyright-langserver (npm install -g pyright)或 pylsp (pip install "python-lsp-server[all]")。 - Rust(一种编程语言)确保 rust-analyzer 可用的 (rustup component add rust-analyzer)。

构建和运行MCP服务器

cargo build --release
./target/release/mcp_backgroundr

或者,可以跳过单独的构建步骤直接运行它:

cargo run --release

服务器通过标准输入输出(stdio)使用MCP协议通信,因此请保持进程运行并连接到它 从您选择的MCP客户端(例如, npx @modelcontextprotocol/client-cli --stdio)。

可用工具

工具名称用途
run_background_task 启动一个shell命令并开始捕获标准输出/标准错误。
get_task_status 返回命令、生命周期状态、退出代码以及最近的输出。
end_background_task 请求终止正在运行的任务。

输出已截断至最近几行(可根据请求配置)以保持 响应简洁。你可以进行轮询 get_task_status 直到任务完成。

示例:Python 语言服务器(pylsp

许多LSP(语言服务器协议)服务器支持TCP模式,这与后台任务配合得很好 模型,因为编辑器之后可以使用广告中提到的端口进行附加。Python 语言服务器(pylsp这使得事情变得简单:

  1. 安装 pylsp 如果你还没有的话: pip install "python-lsp-server[all]"
  1. 请求MCP服务器以TCP模式启动它:
   {
     "command": "pylsp --tcp --host 127.0.0.1 --port 2087"
   }
  1. 配置您的编辑器(或任何支持LSP的客户端)以连接到 tcp://127.0.0.1:2087.
  1. 呼叫 get_task_status 在您的MCP客户端中查看日志或确认

服务器仍在运行。使用 end_background_task 当你完成后。

示例:Rust 语言服务器(rust-analyzer)

rust-analyzer 它仅通过标准输入输出(stdio)使用JSON-RPC进行通信,因此我们将其部署在小型(代理/服务器/系统)之后 TCP shim 使得编辑器能够附加,而 MCP 服务器则保持进程运行。 一个常见的选择是 socat

  1. 确保两者都 rust-analyzer 并且 socat 已安装。一个典型的设置是:
   rustup component add rust-analyzer
   brew install socat  # or use your package manager of choice
  1. 通过MCP服务器启动桥接器:
   {
     "command": "socat TCP-LISTEN:9257,reuseaddr,fork EXEC:'rust-analyzer',pty,stderr"
   }

- socat 打开 tcp://127.0.0.1:9257 并且生成(或孵化) rust-analyzer 对于每个连接。 - pty 确保基于stdio的协议仍然有效,同时MCP服务器 捕获有用的 stderr 日志以供检查。

  1. 将你的编辑器指向 tcp://127.0.0.1:9257 作为Rust语言服务器协议(LSP)的端点。
  1. 使用 get_task_status 并且 end_background_task 按需。

监测与清理

  • 使用 get_task_status 查看最近的stdout/stderr输出,检查退出代码,或者

确认是否已发出终止请求。

  • 当任务不再需要运行时,调用 end_background_task 与……一起;带有

相关的;联系的 task_id如果进程自行退出,任务状态将 自动移动到 completed 或者 failed

  • 任务仅在服务器进程退出时才会从内存存储中移除;

重启MCP服务器以清除状态。

开发服务器

这是一个基于Tokio的标准Rust项目。运行 cargo test 或者 cargo fmt 在提交更改之前,并且每次重新构建后都要重启您的MCP客户端,以便它 加载新的二进制文件。

目录标签

目录标签

开发工具Rust本地部署后台任务管理开发者工具MCP协议语言服务器

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP