AgentStack
MCP verified Apache-2.0 Self-run

Claude Code Available Tools

mcp-andreabonn-claude-code-available-tools · by AndreaBonn

Your Claude Code setup is powerful, but hard to see at a glance. This tool fixes that. A fast, interactive TUI that scans your global and project configurations, showing every slash command, subagent, skill, MCP server, hook, and env variable with live filtering and auto-refresh. Zero config required.

No reviews yet
0 installs
4 views
0.0% view→install

Install

$ agentstack add mcp-andreabonn-claude-code-available-tools

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Claude Code Available Tools? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

English | [Italiano](README.it.md)

Claude Code Available Tools by Bonn

Interactive explorer for Claude Code tools and configuration. Scans and displays slash commands, subagents, skills, MCP servers, hooks, and environment variables from both global (~/.claude/) and project-level (.claude/) configurations.

[](https://github.com/AndreaBonn/claude-code-available-tools/actions/workflows/ci.yml) [](https://github.com/AndreaBonn/claude-code-available-tools/actions/workflows/ci.yml) [](https://github.com/AndreaBonn/claude-code-available-tools/actions/workflows/ci.yml) [](https://github.com/astral-sh/ruff) [](LICENSE) [](SECURITY.md)

Features

  • Three display modes: full-screen TUI (Textual), inline text report (Rich), and external terminal window
  • Scans global and project-level Claude Code configurations
  • Visual scope indicators: green for global, yellow for project resources
  • Live filtering and auto-refresh (3s interval) in TUI mode
  • Minimal YAML frontmatter parser with no external YAML dependency
  • Cross-platform: Linux, macOS, Windows
  • Integrates as /tools slash command inside Claude Code sessions

Screenshots

| Slash Commands | Subagents | |:-:|:-:| | | |

| Skills | MCP Servers | |:-:|:-:| | | |

Architecture

%%{init: {'theme': 'default'}}%%
graph LR
    classDef core fill:#2563eb,stroke:#1d4ed8,color:#fff
    classDef engine fill:#059669,stroke:#047857,color:#fff
    classDef data fill:#d97706,stroke:#b45309,color:#fff
    classDef ext fill:#6b7280,stroke:#4b5563,color:#fff

    cli["cli.pyEntry Point"]:::core

    subgraph display["Display Backends"]
        direction TB
        tui["tui.pyTextual TUI"]:::core
        inline_mod["inline.pyRich Report"]:::core
    end

    terminal["terminal.pyTerminal Detection"]:::ext
    ext_term(["External Terminal"]):::ext

    scanner["scanner.pyDiscovery Engine"]:::engine

    subgraph config["Configuration Sources"]
        direction TB
        global_cfg["~/.claude/Global Config"]:::data
        project_cfg[".claude/Project Config"]:::data
    end

    cli --> tui
    cli --> inline_mod
    cli --> terminal
    terminal -.-> ext_term

    tui --> scanner
    inline_mod --> scanner

    scanner --> global_cfg
    scanner --> project_cfg

For detailed diagrams (scanner discovery, CLI dispatch, CI pipeline) see [Architecture docs](docs/ARCHITECTURE.md).

Installation

Requires Python 3.10+ and one of: pipx, uv, or pip.

# Clone the repository
git clone https://github.com/AndreaBonn/claude-code-available-tools.git
cd claude-code-available-tools

# Run the universal installer (auto-detects OS)
./install.sh

# Or use platform-specific installers
./installers/install_linux.sh       # Linux
./installers/install_macos.sh       # macOS
.\install.bat                       # Windows

The installer does four things:

  1. Checks for Python 3.10+
  2. Installs the cctools package (via pipx, uv, or pip)
  3. Copies the /tools slash command to ~/.claude/commands/tools.md
  4. Runs a smoke test

Manual installation:

pip install .
# or
pipx install .
# or
uv tool install .

Platform support

| OS | TUI | Inline | External | Installer | |----|-----|--------|----------|-----------| | Linux | Yes | Yes | gnome-terminal, konsole, xfce4-terminal, xterm | install_linux.sh | | macOS | Yes | Yes | Terminal.app via osascript | install_macos.sh | | Windows | Yes | Yes | Not available | install_windows.ps1 |

Usage

# Auto mode (TUI if terminal >= 80 columns, otherwise inline)
cctools

# Explicit modes
cctools --mode tui
cctools --mode inline
cctools --mode external

# Filter resources by name or description
cctools --mode inline --filter mcp

From within a Claude Code session:

/tools                  # Opens TUI in external terminal
/tools inline           # Prints report in chat
/tools tui              # Opens TUI in current terminal
/tools inline mcp       # Filtered inline report

TUI keybindings

| Key | Action | |-----|--------| | / | Open filter bar | | Escape | Close filter, clear filter text | | r | Manual refresh | | q | Quit |

Configuration

cctools reads existing Claude Code configuration files. No additional configuration is required.

The only optional environment variable is CLAUDE_CONFIG_DIR, which overrides the default ~/.claude/ config directory. The scanner also detects CLAUDE_* and ANTHROPIC_* variables from the shell environment.

Custom hook descriptions

Claude Code hooks don't natively include a display description. You can add an optional description field to any hook definition, and cctools will use it as the display text instead of the raw command:

{
  "hooks": {
    "PreToolUse": [{
      "matcher": "Bash",
      "hooks": [{
        "type": "command",
        "command": "./scripts/validate.sh",
        "description": "Validate input before Bash execution"
      }]
    }]
  }
}

Without description, cctools shows [command] ./scripts/validate.sh. With it, the human-readable text is displayed instead.

Custom MCP server descriptions

Similarly, MCP server entries don't include a display description. You can add an optional description field to any server definition:

{
  "mcpServers": {
    "my-server": {
      "type": "stdio",
      "command": "npx",
      "args": ["@mcp/my-server"],
      "description": "Project knowledge base and search"
    }
  }
}

Without description, cctools shows [stdio] npx @mcp/my-server. With it, the human-readable text is displayed instead. Claude Code ignores unknown fields, so this does not affect MCP functionality.

Testing

uv sync --dev
uv run pytest tests/ -v --cov=cctools
uv run ruff check src/ tests/
uv run ruff format src/ tests/

Contributing

Contributions are welcome via pull request. Before submitting:

  1. Run tests and ensure they pass
  2. Run ruff check and ruff format
  3. Run mypy for type checking
  4. Keep commits focused and descriptive

Security

For vulnerability reports, see the [security policy](SECURITY.md).

License

Released under the Apache License 2.0 -- see [LICENSE](LICENSE).

Author

Andrea Bonacci -- @AndreaBonn

Support the project

Claude Code Available Tools is free to use. If it helps you and you want to give something back, you can leave a tip via PayPal. The amount is up to you and it is entirely optional.

[](https://paypal.me/AndreaBonacci19)


If this project is useful to you, a star on GitHub is appreciated.

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.