Skip to main content

tools-executor

tools-executor is a lightweight FastMCP driver that discovers every MCP tool exposed by your configured backends, prints Python-like signatures, and lets you invoke them either from the command line or through a minimal FastMCP server.

Why use it?

  • 📋 Discoverability: Generate readable signatures for every tool so you know which arguments to pass.
  • Fast iteration: Jump between running the HTTP/stdio server and issuing one-off tool calls without reconfiguring clients.
  • 🧰 Batteries included: Ships with a uv-first workflow for building, testing, and publishing to PyPI.

Installation

pip install tools-executor

or, if you prefer the uv toolchain:

uv tool install tools-executor

Configuration

Point the CLI at an MCP client definition. Copy mcp.json.example into your workspace, adjust the upstream server definitions, and pass the path with -c/--config.

cp mcp.json.example ~/.config/tools-executor/mcp.json

Usage

List available tools and inspect their signatures:

tools-executor list -c ~/.config/tools-executor/mcp.json

Call a tool directly:

tools-executor call -c ~/.config/tools-executor/mcp.json weather --arg city="Lisbon"

Run the FastMCP server (HTTP by default):

tools-executor serve -c ~/.config/tools-executor/mcp.json --transport http --host 0.0.0.0 --port 23456

Every command shares the --config option so you can point at different MCP client definitions per invocation.

Local development

uv venv --seed
uv sync
uv run tools-executor list -c mcp.json.example

The repository still ships main.py so you can run ./main.py list ... directly with uv run if you prefer scripting locally.

Releasing with uv

  1. Bump version inside pyproject.toml.
  2. Build and verify the artifacts:
    uv build
    uv run python -m tools_executor.cli --help
    
  3. Publish to PyPI with an API token (create one under your PyPI account and store it securely):
    export PYPI_API_TOKEN="pypi-xxxxxxxxxxxxxxxxxxxxxxxx"
    uv publish --token "$PYPI_API_TOKEN"
    
  4. Tag the release in git and push (git tag v0.1.1 && git push --tags).

GitHub Action publish workflow

The repository includes .github/workflows/publish.yml, which builds the wheel and sdist via uv build and calls uv publish --token $PYPI_API_TOKEN. Add a PYPI_API_TOKEN secret (scoped to “Publish to PyPI”) in your repository settings and trigger the workflow from the Actions tab or by creating a GitHub Release.

Download files

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

Source Distribution

tools_executor-0.1.0.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

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

tools_executor-0.1.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file tools_executor-0.1.0.tar.gz.

File metadata

  • Download URL: tools_executor-0.1.0.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.0

File hashes

Hashes for tools_executor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8274623de7d9645004fdd74e66b4a7723a6ae921cd21c735700e3b68318ee8cf
MD5 1c19519f85d8352a39bc3a079a64cf96
BLAKE2b-256 86587f4a2dbca3f7ef4b39cecdb7fba1f8bb9cb0a80e0499b3aa2aae5991c5e1

See more details on using hashes here.

File details

Details for the file tools_executor-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for tools_executor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f51c6eb528e3ef4b316be231ab416c17c03888c0e9dfaf6fc0a254734176ff3
MD5 9baf54cdffad83d97c94dd9154c469e4
BLAKE2b-256 0210e14aeddf040c032d1eb18e8c7986b00c8735c70ee3fec1a89a02dc7a1817

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Supported by

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