oh-my-mcp

oh-my-mcp

A powerful MCP server with 116 practical tools across 9 categories including compression, web, file system, data processing, text, system, utilities, subagent AI, and browser automation.

Category
Visit Server

README

oh-my-mcp

A powerful Model Context Protocol (MCP) server with 116 practical tools across 9 categories, built using FastMCP.

Build and Release Tests Lint Python 3.12+ License: MIT Platform

๐Ÿš€ Features

oh-my-mcp provides tools for:

  • ๐Ÿ“ฆ Compression (5 tools): ZIP/TAR compression and extraction with security features
  • ๐ŸŒ Web & Network (18 tools): Web search, page fetching, HTML parsing, downloads, HTTP API client, DNS lookup
  • ๐Ÿ“ File System (12 tools): Read, write, search files and directories, file comparison
  • ๐Ÿ“Š Data Processing (15 tools): JSON, CSV, XML, YAML, TOML parsing and manipulation
  • ๐Ÿ“ Text Processing (9 tools): Regex, encoding, email/URL extraction, text similarity
  • ๐Ÿ’ป System (8 tools): System info, CPU/memory monitoring, environment variables
  • ๐Ÿ› ๏ธ Utilities (10 tools): UUID, hashing, date/time operations, math, password generation
  • ๐Ÿค– Subagent AI (6 tools): Delegate subtasks to external AI models (OpenAI/Anthropic), parallel execution, conditional branching, persistent config
  • ๐ŸŒ Browser Automation (33 tools): Selenium-based browser control, page navigation, element interaction, screenshots, JavaScript execution, multi-tab management

Note: Python Development, UV Package Manager, and Pylance/Pyright tools have been removed from the packaged version as they require external Python interpreters and package managers. All remaining tools work completely standalone.

๐Ÿ“š Documentation

โšก ๅฟซ้€Ÿๅฎ‰่ฃ…ไธŽ้…็ฝฎ

  1. ๅฎ‰่ฃ…ไพ่ต–ๅนถๅผ€ๅ‘ๆจกๅผๅฎ‰่ฃ…๏ผš
pip install -e .
  1. ่ฟ่กŒไบคไบ’ๅผ้…็ฝฎๅ‘ๅฏผ๏ผˆๆŽจ่๏ผ‰๏ผš
uv run configure.py

ๆˆ–็›ดๆŽฅไธบClaude Desktop็”Ÿๆˆ้…็ฝฎ๏ผš

python -m mcp_server.cli.config --claude

ๆˆ–ๅฏๅŠจHTTP้…็ฝฎๆœๅŠก๏ผš

python -m mcp_server.cli.config --http-server --port 8765

่ฏฆ็ป†้…็ฝฎ่ฏดๆ˜Ž่ง๏ผšdocs/zh/SETUP_GUIDE.md

  1. ๅฏๅŠจMCPๆœๅŠก๏ผš
python -m mcp_server.main

ๅฏๅŠจๅŽๅฏ้€š่ฟ‡Claude Desktopๆˆ–MCPๅฎขๆˆท็ซฏ่ฟžๆŽฅไฝฟ็”จใ€‚

๐Ÿ“ฆ Installation

Prerequisites

  • Python 3.12 or higher
  • pip package manager


๐Ÿ“š Tool Reference

For the full list of tools, usage examples, and API details, see docs/en/TOOL_REFERENCE.md.

๐Ÿ”ง Configuration

Logging

Logs are configured in mcp_server/utils.py. You can adjust:

  • Log level (INFO, DEBUG, WARNING, ERROR)
  • Output destinations (console, file)
  • Log format

File Size Limits

File operations have safety limits:

  • read_file: 10MB max file size
  • safe_write_file: Creates parent directories automatically

Security Features

  • Path validation: Prevents path traversal attacks
  • Safe evaluation: Math expressions only allow safe operations
  • Masked values: Sensitive environment variables are masked
  • Confirmation required: File deletion requires confirm=True
  • Retry logic: Network operations retry up to 3 times

๐Ÿ›ก๏ธ Error Handling

All tools include comprehensive error handling:

  • ValidationError: Invalid input parameters
  • NetworkError: Network request failures
  • FileOperationError: File system errors
  • DataProcessingError: Data parsing/conversion errors

Errors are returned as JSON with descriptive messages.


๐Ÿ“ Development

Project Structure

oh-my-mcp/
โ”œโ”€โ”€ pyproject.toml               # Dependencies
โ”œโ”€โ”€ configure.py                 # Interactive setup wizard
โ”œโ”€โ”€ README.md                    # Documentation
โ””โ”€โ”€ src/
    โ””โ”€โ”€ mcp_server/
        โ”œโ”€โ”€ __init__.py              # Package init
        โ”œโ”€โ”€ main.py                  # Server entry point
        โ”œโ”€โ”€ utils.py                 # Infrastructure & utilities
        โ”œโ”€โ”€ command_executor.py      # Secure command execution
        โ”œโ”€โ”€ cli/
        โ”‚   โ””โ”€โ”€ config.py            # Configuration generator
        โ””โ”€โ”€ tools/                   # Tool plugins (9 categories)
            โ”œโ”€โ”€ __init__.py          # Plugin auto-discovery
            โ”œโ”€โ”€ registry.py          # @tool_handler & ToolPlugin
            โ”œโ”€โ”€ search_engine.py     # Web search backend
            โ”œโ”€โ”€ subagent_config.py   # Subagent config manager
            โ”œโ”€โ”€ compression/         # Compression tools (5)
            โ”œโ”€โ”€ web/                 # Web & Network tools (18)
            โ”œโ”€โ”€ file/                # File System tools (12)
            โ”œโ”€โ”€ data/                # Data Processing tools (15)
            โ”œโ”€โ”€ text/                # Text Processing tools (9)
            โ”œโ”€โ”€ system/              # System tools (8)
            โ”œโ”€โ”€ utility/             # Utility tools (10)
            โ””โ”€โ”€ subagent/            # AI Orchestration tools (6)

Adding New Tools

Create a new tool in the appropriate plugin's handlers.py:

from mcp_server.tools.registry import tool_handler

@tool_handler
def your_tool(param: str) -> str:
    """Tool description.

    Args:
        param: Parameter description

    Returns:
        Return value description
    """
    try:
        # Your implementation
        return result
    except Exception as e:
        logger.error(f"Tool failed: {e}")
        return f"Error: {str(e)}"

Testing

Start the server and test tools using an MCP client or the FastMCP testing utilities.


๐Ÿค Contributing

Contributions are welcome! Areas for improvement:

  • Additional tool categories
  • Enhanced error handling
  • Performance optimizations
  • More comprehensive tests
  • Additional external API integrations

๐Ÿ“„ License

This project is provided as-is for educational and practical use.


๐Ÿ”— Links


๐Ÿ“– Additional Resources

Documentation

Configuration & Setup

Build & Deploy

Advanced Features

Developer Resources


๐Ÿ”ง Configuration Management

Configuration Generator Tool

The python -m mcp_server.cli.config command provides multiple ways to configure MCP clients:

# Quick install to Claude Desktop
python -m mcp_server.cli.config --claude

# Run HTTP server on custom port
python -m mcp_server.cli.config --http-server --port 9000

# Generate config file with custom server name
python -m mcp_server.cli.config --server-name my-tools --output config.json

# Show configuration in console
python -m mcp_server.cli.config --show-config

Configuration Server Endpoints

When running with --http-server:

Endpoint Description
GET /config Returns MCP configuration JSON
GET /info Returns server information and paths
GET /health Health check endpoint

Example usage:

# Start server on port 8765
python -m mcp_server.cli.config --http-server

# Get configuration
curl http://localhost:8765/config

# Get server info
curl http://localhost:8765/info

Enjoy oh-my-mcp! ๐Ÿš€

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured