Skip to main content

MCP Tool Kit

A comprehensive toolkit for the Model Context Protocol (MCP) with automatic tool discovery and multiple transport options.

PyPI version Python versions License

📚 Official Documentation | 🌐 Website | 💬 Community


🚀 Built by UsefulAI | 📖 From GitHub to Commercial Success

🚀 Quick Install - No Git Required!

Choose your platform and run ONE command:

🖥️ Windows (PowerShell)

irm https://raw.githubusercontent.com/getfounded/mcp-tool-kit/main/install.ps1 | iex

🍎 macOS (Terminal)

bash <(curl -s https://raw.githubusercontent.com/getfounded/mcp-tool-kit/main/install.sh)

🐧 Linux (Terminal)

bash <(wget -qO- https://raw.githubusercontent.com/getfounded/mcp-tool-kit/main/install.sh)

That's it! The installer will:

  • ✅ Download MCP Tool Kit (no Git needed!)
  • ✅ Check for Docker (helps install if missing)
  • ✅ Create desktop shortcuts
  • ✅ Set up everything automatically

📦 Alternative Installation Methods

Manual Download
  1. Download the latest release:

  2. Extract and run:

    • Windows: Run install.bat
    • Mac/Linux: Run ./install.sh
Git Installation (for developers)
  1. Clone the repository

    git clone https://github.com/getfounded/mcp-tool-kit.git
    cd mcp-tool-kit
    
  2. Run the launcher

    • Windows: Double-click launch.bat
    • Mac/Linux: Run ./launch.sh
Docker-Only Installation
docker run -it --name mcp-toolkit ghcr.io/getfounded/mcp-tool-kit:latest

🔧 Features

Dynamic Tool Registration

Tools are automatically discovered and registered at runtime - no manual configuration needed!

Multiple Transport Options

  • stdio: For Claude Desktop integration
  • SSE (Server-Sent Events): For web-based access

120+ Available Tools

  • 📁 File System: Read, write, and manage files
  • 🕐 Time Tools: Timezone conversions and time operations
  • 🌐 Web Search: Brave Search integration
  • 🤖 Browser Automation: Playwright-based browser control
  • 📊 Data Analysis: Yahoo Finance, FRED, World Bank data
  • 📄 Document Tools: PDF, Excel, PowerPoint manipulation
  • 🎯 And many more!

Easy Configuration

Control everything through a simple config.yaml file:

enabled_tools:
  filesystem: true
  time_tools: true
  brave_search: true
  # ... more tools

tool_config:
  filesystem:
    allowed_directories: ["~/Documents", "~/Downloads"]
  brave_search:
    max_results: 10

📋 Environment Setup

  1. Copy .env.template to .env
  2. Add your API keys:
    BRAVE_SEARCH_API_KEY=your_key_here
    NEWS_API_KEY=your_key_here
    FRED_API_KEY=your_key_here
    # ... other keys
    

💾 Storage Setup

MCP Tool Kit uses a dedicated storage directory for file operations:

  • Windows: C:\Users\{Username}\mcp-tool-kit-storage
  • Mac/Linux: ~/mcp-tool-kit-storage

Automatic Setup

The storage directory is automatically created when you first run the Docker container. You can also manually set it up:

Windows (PowerShell):

.\scripts\setup-storage.ps1

Mac/Linux:

./scripts/setup-storage.sh

Storage Structure

mcp-tool-kit-storage/
├── documents/     # For document files
├── downloads/     # For downloaded files
└── workspace/     # For temporary work files

All file operations through the filesystem tool will be restricted to this directory for security.

🔌 Connecting to Claude Desktop

  1. Start the server in stdio mode using the launcher
  2. Add to Claude Desktop configuration:
    {
      "mcpServers": {
        "mcp-tool-kit": {
          "command": "docker",
          "args": ["exec", "-i", "mcp-server", "python", "mcp_server_v2.py"]
        }
      }
    }
    

🌐 Using SSE Mode

  1. Start the server in SSE mode using the launcher
  2. Access the server at http://localhost:8080
  3. Use the SSE endpoints:
    • /sse - Server-Sent Events stream
    • /messages - Send messages to the server

🛠️ Creating Custom Tools

Tools now use a standardized base class system:

from app.tools.base_tool import BaseTool

class MyCustomTool(BaseTool):
    def get_name(self) -> str:
        return "My Custom Tool"
        
    def get_tools(self) -> Dict[str, Callable]:
        return {
            "my_function": self.my_function
        }
        
    async def my_function(self, param: str, ctx: Context = None) -> str:
        return f"Processed: {param}"

See the developer documentation for detailed guides.

📚 Documentation

Full documentation is available at https://docs.mcp-tool-kit.com.

To run documentation locally:

  1. cd docs
  2. npm install
  3. npm start

🐳 Docker Commands

The launcher scripts handle all Docker operations automatically.

Manual Commands

# Start server
docker-compose up -d

# View logs
docker-compose logs -f

# Stop server
docker-compose down

# Rebuild after changes
docker-compose build --no-cache

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch
  3. Add your tool to app/tools/
  4. Submit a pull request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🆘 Support

Metadata

Release files for iflow-mcp_getfounded-mcp-tool-kit 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_getfounded-mcp-tool-kit 1.0.0
File Size Uploaded
iflow_mcp_getfounded_mcp_tool_kit-1.0.0.tar.gz 108.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_getfounded-mcp-tool-kit 1.0.0
File Interpreter ABI Platform
iflow_mcp_getfounded_mcp_tool_kit-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 226.3 kB

Release files / iflow_mcp_getfounded_mcp_tool_kit-1.0.0.tar.gz

Download URL iflow_mcp_getfounded_mcp_tool_kit-1.0.0.tar.gz
Size 108.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8324e525f55f359a842bcfe3d52d2bd98d3f65d5ed02f8f0ab0c728f719d5ae8
BLAKE2b-256 checksum
How to use checksums
7c3380d87b1ac7d5d77840717d72cb2029540e7b07c1e4e6155605489ba29f49
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_getfounded_mcp_tool_kit-1.0.0-py3-none-any.whl

Download URL iflow_mcp_getfounded_mcp_tool_kit-1.0.0-py3-none-any.whl
Size 117.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
85f1d3c07fd644e9646de0fba718a7d744d52f9a70687098bc0cdcec677149da
BLAKE2b-256 checksum
How to use checksums
b3bc9d7ece4d31719ba0858615e9d0ea5f1b5c25f86571520a7efa7bd2395c75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page