Skip to content

getfounded/mcp-tool-kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

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

Using the Launcher (Recommended)

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

About

Agentic abstraction layer for building high precision vertical AI agents written in python for Model Context Protocol.

Topics

Resources

License

Stars

Watchers

Forks