oh-my-mcp
oh-my-mcp
A powerful Model Context Protocol (MCP) server with 116 practical tools across 9 categories, built using FastMCP.
๐ 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
๐ Documentation Index - Complete documentation hub (ไธญๆ)
๐๏ธ Project Structure - Detailed project organization
๐ฏ Setup Guide - Interactive configuration wizard guide
๐ฆ Build Guide - Package for Windows/Linux distribution
๐๏ธ Architecture Guide - System architecture and design
๐งช Subagent Guide - AI orchestration features
โก ๅฟซ้ๅฎ่ฃ ไธ้ ็ฝฎ
ๅฎ่ฃ ไพ่ตๅนถๅผๅๆจกๅผๅฎ่ฃ ๏ผ
pip install -e .่ฟ่กไบคไบๅผ้ ็ฝฎๅๅฏผ๏ผๆจ่๏ผ๏ผ
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
ๅฏๅจ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 sizesafe_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=TrueRetry 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
๐ Documentation Hub - Complete documentation index (ไธญๆ)
๐๏ธ Project Structure - Project organization guide
๐๏ธ Architecture - System architecture and design
๐ Test Report - Test suite
Configuration & Setup
โ๏ธ Configuration Guide (CN) - Complete configuration reference
๐ฏ Setup Guide - Step-by-step setup instructions
Build & Deploy
๐ฆ Build Guide - Package for Windows/Linux
๐ Installation Guide - Installation details
Advanced Features
๐ค Subagent Configuration - AI task delegation setup
๐ง Subagent Guide - AI orchestration features
๐ Advanced Search - Search functionality details
Developer Resources
๐๏ธ Architecture Guide - System architecture and design
๐ค Contributing Guide - How to contribute
๐ Changelog - Version history
๐ง 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-configConfiguration Server Endpoints
When running with --http-server:
Endpoint | Description |
| Returns MCP configuration JSON |
| Returns server information and paths |
| 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/infoEnjoy oh-my-mcp! ๐
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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