Skip to main content
Glama

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.



๐Ÿ“– 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! ๐Ÿš€

Install Server
A
license - permissive license
B
quality
C
maintenance

Maintenance

โ€“Maintainers
โ€“Response time
1dRelease cycle
3Releases (12mo)

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/quyansiyuanwang/oh-my-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server