dispatch-mcp

dispatch-mcp

MCP server for tier-based dispatch delegation via OmniRoute, enabling message dispatching to various AI model tiers and health monitoring.

Category
访问服务器

README

<!-- AI-DD-META:START --> <!-- This repository is planned, maintained, and managed by AI Agents only. --> <!-- Slop issues are expected and intentionally present as part of an HITL-less --> <!-- /minimized AI-DD metaproject of learning, refining, and building brute-force --> <!-- training for both agents and the human operator. --> Downloads GitHub release License AI-Slop AI-Only-Maintained HITL-less

⚠️ AI-Agent-Only Repository

This repo is planned, maintained, and managed exclusively by AI Agents. Slop issues, rough edges, and AI artifacts are expected and intentionally present as part of an HITL-less / minimized AI-DD metaproject focused on learning, refining, and brute-force training both the agents and the human operator. Bug reports and contributions are still welcome, but please expect AI-generated code, comments, and documentation throughout. <!-- AI-DD-META:END -->

Work State

Field Value
Last commit 2026-06-08 16:14:41 -0700
Open issues 0
Open PRs 3
Focus omniroute-dispatch

Progress: ████████░░ 80%

dispatch-mcp

MCP server for tier-based dispatch delegation via OmniRoute.

Tools

Per-tier dispatch tools

Tool name Tier
dispatch_worker worker
dispatch_main main
dispatch_codeman codeman
dispatch_freetier freetier
dispatch_kimi kimi
dispatch_kimi_thinking kimi_thinking
dispatch_minimax minimax
dispatch_opus opus
dispatch_haiku haiku
dispatch_gemini gemini

Each accepts a single message: str argument and dispatches it to the configured OmniRoute backend under the corresponding tier.

Custom dispatch

dispatch_custom(tier: str, message: str) — dispatch to any tier from VALID_TIERS above.

Health

  • dispatch_health() — probe the OmniRoute backend health endpoint. Requires OMNIROUTE_URL to be set.
  • dispatch_liveness() — returns server liveness status without contacting OmniRoute.

Health module (production)

dispatch_mcp.health exposes three pure-Python functions intended for production probes and observability:

Function Purpose I/O
liveness() Cheap process-liveness probe (kubelet livenessProbe). None
readiness(*, check_omniroute=False, timeout=2.0) Readiness probe. Validates OMNIROUTE_URL config; opt-in upstream check via check_omniroute=True. Optional HTTP GET /health
metrics() Prometheus text exposition placeholder with dispatch_mcp_up, dispatch_mcp_uptime_seconds, and dispatch counter gauges. None

Wire them into FastMCP tools, an HTTP wrapper, or invoke them directly from tests. Default readiness() is config-only to avoid stampeding the backend.

Configuration

Variable Required Default Description
OMNIROUTE_URL Yes Base URL of the OmniRoute dispatch backend (e.g. http://localhost:8080). Must use http:// or https:// scheme.
LOG_LEVEL No (root logger) Logging verbosity. Accepted values: DEBUG, INFO, WARNING, ERROR, CRITICAL. Invalid values fall through to the root logger's level.

Constraints

  • message must not exceed 4096 bytes (UTF-8 encoded).
  • tier must be one of the known tiers listed above.
  • OMNIROUTE_URL must use http:// or https:// scheme. Other schemes (e.g. file://, javascript:) are rejected at startup with a ValueError.
  • HTTP redirects are not followed — only direct requests to OMNIROUTE_URL are made.

Build

Install the package in editable mode with the dev extras (pulls in pytest, pytest-cov):

python -m pip install -e ".[dev]"

The runtime dependencies are fastmcp>=3.2.4 and httpx>=0.27.0. Requires Python 3.13+.

Test

# Run the full test suite with coverage (uses pyproject.toml addopts)
pytest

# Or with an explicit report
pytest --cov-report=term-missing

The default addopts (see [tool.pytest.ini_options]) enables branch coverage, missing-line reporting, and fails the run if coverage drops below 80%.

Lint & type check

# Format
ruff format .

# Lint
ruff check .

# Strict type check
mypy src/ --strict

The same checks run in CI (see .github/workflows/ci.yml).

Run

# Set the backend URL
export OMNIROUTE_URL=http://localhost:20128

# Via entry point
dispatch-mcp

# Or directly
python -m dispatch_mcp.server

推荐服务器

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 模型以安全和受控的方式获取实时的网络信息。

官方
精选