
MCP Tools
Author: f
Description: Swiss Army Knife CLI for interacting with MCP (Model Context Protocol) servers: discover/list tools/resources/prompts, call them, run interactive shell and web UI, plus mock/proxy/guard server modes. Supports stdio and HTTP (streamable HTTP + legacy SSE) transports and multiple output formats.
Stars: 1.5k
Forks: 116
License: MIT License
Category: Open Source
Overview
Installation
brew tap f/mcptools
brew install mcpgo install github.com/f/mcptools/cmd/mcptools@latestFAQs
How do I use MCP Tools to debug an MCP server that hangs during initialization?
Run mcp tools followed by your server command to trigger the handshake and schema verification before launching a full AI client. This surfaces initialization problems immediately at the terminal. If the hang persists, check that npx is in your system PATH and verify your server's transport configuration matches MCP Tools expectations for stdio or HTTP.
What is the difference between MCP Tools proxy mode and building a full MCP server with FastMCP or FastAPI-MCP?
Proxy mode wraps existing shell scripts or CLI utilities into MCP-callable tools without requiring code changes, making it ideal for quick prototypes or bridging legacy tooling. In contrast, FastMCP and FastAPI-MCP require writing server code but provide structured frameworks for complex logic, type safety, error handling, state management, and production features like logging and authentication that proxy mode cannot deliver.
Can MCP Tools be integrated into a CI/CD pipeline for automated MCP server validation, and how?
Yes, MCP Tools integrates into CI/CD pipelines through its CLI-first design and JSON output format. Use mcp tools and mcp call commands in test scripts to verify server initialization and tool responses, pipe JSON output to validation tools like jq, and configure exit codes to fail builds on MCP protocol errors or unexpected schemas.
How does MCP Tools handle streamable HTTP vs legacy SSE transport, and when should I use each?
MCP Tools handles both as HTTP-based transports but does not document selection criteria in the README or releases. Streamable HTTP uses chunked transfer encoding for real-time responses, while legacy SSE uses server-sent events over persistent connections. Choose streamable HTTP for modern MCP servers with chunked response support; use legacy SSE when connecting to older servers or infrastructure requiring event-stream compatibility.
What are the main differences between tools, resources, and prompts in MCP?
Tools execute actions like API calls or data modifications, requiring model-initiated invocation and potentially altering external state. Resources deliver read-only data or documentation that the AI consumes without modification, reducing context bloat. Prompts are user-invoked instruction templates that establish workflow rules, boundaries, or routing logic, shifting from knowledge dumps to high-level directives.
Can I use Docker to deploy an MCP server?
Yes, Docker fully supports MCP server deployment through containerization. Use the Docker MCP Toolkit for 300+ pre-built servers, Docker Compose for multi-service setups, or custom Dockerfiles for Python-based servers. Benefits include cross-platform portability, automatic credential handling in Docker Desktop, and security through sandboxing, though you'll need to manually refresh tool lists after container changes.