Omega Tools MCP

Omega Tools MCP

A production-grade MCP server that provides a centralized microservice toolkit for LLM agents, enabling web search and extensible tool integration.

Category
访问服务器

README

Omega Tools MCP 🌌

A production-grade, highly modular Model Context Protocol (MCP) server that acts as a centralized microservice toolkit for LLM agents (Cline, Cursor, Custom Agents, etc.).

Omega is architected to decouple business logic, external clients, configuration parsing, and semantic AI tool abstractions, allowing you to seamlessly integrate new tools without restructuring your core application footprint. It supports both standard local stdio streams and scalable, production-grade SSE (Server-Sent Events) network deployment.


🏗️ Architectural Overview

The project uses a clean infrastructure layer separation pattern:

src/omega_mcp/
├── core/         # Unified system configurations, log pipelines, and constants
├── clients/      # Infrastructure connectors (Pure APIs, Databases, Web Scrapers)
├── tools/        # Semantic AI-facing interfaces decorated with @mcp.tool()
└── server.py     # Central service orchestrator and protocol router

🛠️ Current Tool Registry

  • omega_web_search: Live internet search functionality powered by optimized, lightweight web parsers.

🧱 System Architecture & Data Flow (Production SSE Mode)

In a production environment, Omega runs inside an isolated Docker container communicating via Server-Sent Events (SSE) over HTTP. This decouples it from your IDE and transforms it into a global tool mesh accessible by local editors and remote agents simultaneously.

  ┌──────────────────────┐      ┌───────────────────────────────┐
  │   VS Code Client     │      │   External Python Agent       │
  │   (Cline Panel)      │      │     (Google Gen AI SDK)       │
  └──────────┬───────────┘      └───────────────┬───────────────┘
             │                                  │
             ▼ [HTTP/SSE Network Connection]     ▼ [HTTP POST JSON-RPC]
  ┌─────────────────────────────────────────────────────────────┐
  │                 NEXUS TOOLS MCP (Docker Container)          │
  │                                                             │
  │  ┌───────────┐      ┌───────────────────────────────┐       │
  │  │ server.py │ ───> │ tools/web.py                  │       │
  │  └───────────┘      │ (Semantic AI Function Layer)  │       │
  │                     └───────────────┬───────────────┘       │
  │                                     │                       │
  │                                     ▼                       │
  │                     ┌───────────────────────────────┐       │
  │                     │ clients/web_search_client.py  │       │
  │                     │ (Raw DDGS API Layer)          │       │
  │                     └───────────────┬───────────────┘       │
  └─────────────────────────────────────┼───────────────────────┘
                                        │
                                        ▼ [HTTPS Network Request]
                               ┌─────────────────┐
                               │  DuckDuckGo API │
                               └─────────────────┘


🐳 Production Deployment via Docker

1. Build the Docker Image Locally

Run this command inside the omega-tools-mcp project directory to lock down your dependencies and build the isolated engine image:

docker build -t omega-mcp .

2. Integrate with Your Multi-Container Stack (docker-compose.yml)

To add this tool hub to your primary agent project stack (alongside ChromaDB, Neo4j, etc.), map it into your orchestration layout using port 8080 to avoid port collisions with your vector databases:

services:
  omega-mcp:
    image: omega-mcp
    container_name: nexus-tools-mcp
    ports:
      - "8080:8000" # Maps host Mac port 8080 to container internal port 8000
    environment:
      - OMEGA_ENV=production
      - OMEGA_SEARCH_MAX_RESULTS=5
    restart: unless-stopped
    depends_on:
      - redis

Boot the entire ecosystem container grid together:

docker compose up -d


🔌 Connecting to AI Clients

1. IDE Client Setup (Cline / VS Code Extension)

Once the Docker stack is active on port 8080, your IDE does not need to manage local Python runtime subprocesses. Simply swap your configuration profile inside cline_mcp_settings.json to look up the live web endpoint:

{
  "mcpServers": {
    "omega-tools-docker": {
      "url": "http://localhost:8080/sse"
    }
  }
}

2. External Project Integration (Google Gen AI SDK Agent)

To consume this microservice inside an independent custom Python Agent framework without writing complex setup commands or parameter duplications, define a clean HTTP network pass-through function:

import httpx
from google import genai

ai_client = genai.Client()

def web_search(query: str) -> str:
    """
    Executes a web search by sending an HTTP POST directly to the containerized microservice.
    """
    CONTAINER_URL = "http://localhost:8080/tools/omega_web_search/call"
    try:
        response = httpx.post(
            CONTAINER_URL, 
            json={"arguments": {"query": query}},
            timeout=30.0
        )
        response.raise_for_status()
        return response.json()["content"][0]["text"]
    except Exception as e:
        return f"Tool Error: Could not reach container server. Details: {str(e)}"

# Register straight to your Agent tool array
research_agent = Agent(
    name="ResearchAgent",
    model=ai_client,
    tools=[graph_rag_retrieval, web_search],
    instruction="Your system compliance laws here..."
)


🚀 Local Development (Non-Docker Setup)

1. Cline (VS Code Extension)

Open your global cline_mcp_settings.json and append the server into your configuration schema:

{
  "mcpServers": {
    "omega-tools": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/omega-tools-mcp",
        "run",
        "src/omega_mcp/server.py"
      ],
      "env": {
        "OMEGA_SEARCH_MAX_RESULTS": "5",
        "OMEGA_ENV": "dev"
      }
    }
  }
}

2. Cursor or Windsurf

Navigate to Settings -> Features -> MCP, click + Add New MCP Server, select command mode, and set the invocation signature to:

uv --directory /absolute/path/to/your/omega-tools-mcp run omega-tools

Prerequisites

This project relies on uv for lightning-fast environment isolation. Install it on macOS using:

curl -LsSf [https://astral.sh/uv/install.sh](https://astral.sh/uv/install.sh) | sh

Setup & Diagnostic Verification

  1. Synchronize your virtual environment:
uv sync

  1. Run the standalone diagnostic validation check script:
PYTHONPATH=src uv run tests/test_search.py


📈 Scaling Up: Adding More Tools

Omega is built to expand gracefully. To introduce a new tool domain (e.g., database queries or file synchronization actions):

  1. Add Configuration Properties: Declare environment variables inside src/omega_mcp/core/config.py.
  2. Build the Infrastructure Core: Write the pure functional driver code inside src/omega_mcp/clients/.
  3. Draft Semantic Descriptions: Create the interface under src/omega_mcp/tools/ documenting parameters clearly in the docstrings so the LLM understands when to call it.
  4. Link to Orchestration Registry: Anchor it to the service endpoint inside src/omega_mcp/server.py:
from omega_mcp.tools.new_module import execute_action
mcp.tool(name="omega_new_action")(execute_action)


🔒 Security & Logging Guardrails

  • Stdout Safety: Standard print() streams interfere with JSON-RPC. All telemetry or debug trace tracking must use the custom logger omega_mcp.core.logger routing pipeline, which channels output strictly to sys.stderr.
  • Layer Isolation: Keep AI-specific framework concepts out of the clients/ folder to ensure your infrastructure layers remain simple and testable independently.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选