Skip to main content

A robust subprocess execution MCP

Project description

MCP spawning and managing bash tasks

tools provided:

  1. spawn : lauch a command
  • parameters:
    • command: str, the bash command to run
    • cwd: str, optional path to the cwd to use.
  • Spawns a bash command in a subshell asynchronously, returns a ID (int) of the newly launched task
  1. list :
  • parameters: none
  • Returns a list of the currently running processes each is a dictionary of [{"ID": int, "command": str, "done": bool}]. Tasks will be removed from the list when their result has been accessed via wait or poll
  1. poll, check the progress of a task
  • parameters: ID: int the command to check, wait: int wait for the process to finish executing or for wait ms to elapse. terminate: bool = false an optional parameter which triggers the command to be terminated with SIG_TERM before returning the command results
  • If poll is executed multiple times for a single process it will only return the stdout and stderr that was produced since the last call to poll (no duplicate outputs)
  • returns dictionary {"stdout": str, "stderr": str, "elapsedTime": float, "finished": bool, "exitCode": int} exitCode will only be present if finished is true. elapsedTime will be the number of milliseconds since the command started.

Requirements

  1. Must support multiple concurrent clients
  2. Each tool must have a description which is well designed to be consumed by an LLM
  3. Results should be presented in a format which is suitable for and LLM
  4. Uses the users default shell (bash, zsh, fish)

launching the MCP

This MCP is launched with uv via

uvx async-bash-mcp

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

async_bash_mcp-0.1.2.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

async_bash_mcp-0.1.2-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file async_bash_mcp-0.1.2.tar.gz.

File metadata

  • Download URL: async_bash_mcp-0.1.2.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.11

File hashes

Hashes for async_bash_mcp-0.1.2.tar.gz
Algorithm Hash digest
SHA256 5c544e8ce30d6766b2ea0017932289d949763701a6c91ff6b46943c8909a1321
MD5 8ff9da4f996baf2eb040702d011a8c78
BLAKE2b-256 4fa724b97a47cca4ca4ba5e25e809ac55adf77b1092917129e520162a7feb3d2

See more details on using hashes here.

File details

Details for the file async_bash_mcp-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for async_bash_mcp-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f4601df28a5b99d9b5f4e337cf5e3b3092bd7198b5eed4b4e6ee6d5ff1e95010
MD5 a3863ef97632dd073060aa1aedb7b338
BLAKE2b-256 b6497514515d880bbbed94c8fe8ffa56c743d8f9763ec0aa4338698a663a04ff

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page