Skip to main content
Glama
noOldBoy

Xiaoman Message Center

by noOldBoy

Xiaoman Message Center

简体中文

A self-hosted notification relay for scheduled AI workflows. Your task generates the final content; Xiaoman authenticates, routes, delivers, retries, and audits it across QQ and Telegram.

The relay does not call a paid LLM API. Your ChatGPT, Cloudflare, Gmail, QQ, and Telegram accounts may still have their own plans, quotas, and limits.

Why Xiaoman

  • One stable route can deliver to one or many destinations.

  • Send through REST, MCP, or Gmail plus Google Apps Script.

  • Split long messages for QQ and Telegram automatically.

  • Prevent duplicate delivery with optional idempotency keys.

  • Retry only destinations that did not succeed.

  • Review routes, destinations, and recent delivery status in the dashboard.

  • Keep channel credentials in the runtime environment—not in the database or repository.

Related MCP server: notify-hub

Architecture

Scheduled task / Gmail / MCP / REST
                 │
                 ▼
       authentication + validation
                 │
                 ▼
           route resolution
             │         │
             ▼         ▼
          QQ bot   Telegram bot
                 │
                 ▼
        D1 delivery audit + retry

Five-minute local setup

Prerequisite: Node.js 22.13 or newer.

npm ci
cp .env.example .env.local
npm run build
npm run db:local:init
npm run dev

For local or standalone use, set AUTH_MODE=basic, choose a strong ADMIN_BASIC_USER and ADMIN_BASIC_PASSWORD, and generate independent random values for NOTIFICATION_API_TOKEN and MCP_BEARER_TOKEN. Then add at least one QQ or Telegram adapter credential.

See the English quickstart or 中文快速开始 before sending a real message.

Two safe examples

Both examples include REST, MCP, and Gmail subject patterns. No production route, destination, email address, personal location, or health record is included.

Gmail relay

The copy-paste Google Apps Script integration lives in integrations/google-apps-script. It stores credentials in Script Properties, uses Gmail message IDs as idempotency keys, and supports both subject formats:

小慢消息中心 每日通勤计划|2026-09-16
Xiaoman Message Center Daily Commute Plan | 2026-09-16

Deployment paths

Sites deployment URLs are production URLs. Review the source and configuration before deploying or changing access.

Documentation

Topic

English

简体中文

Quickstart

Guide

指南

Architecture

Guide

指南

Configuration

Reference

参考

Sites deployment

Guide

指南

Cloudflare deployment

Guide

指南

QQ and Telegram

Guide

指南

REST and MCP

Reference

参考

Privacy and security

Guide

指南

Development

npm run lint
npm run verify

Tests mock the message workflow and never send to a real QQ group or Telegram chat. Read CONTRIBUTING.md before opening a pull request.

License

MIT. The name and bundled mascot assets may be used with this repository under the same license; they do not imply endorsement of a modified deployment.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables sending messages and scheduling reminders through multiple platforms including Telegram and Feishu. Supports real-time messaging and cron-based scheduled notifications with comprehensive logging and error handling.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Unified notification MCP server with 36 tools to send messages across 23 channels — Email, SMS, Slack, Telegram, Discord, Teams, WhatsApp, Firebase Push, and more.
    5
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables sending real-time and webhook notifications when AI agents complete tasks, with support for Discord, Slack, Teams, Feishu, Ntfy, and custom webhooks.
    6
    MIT