Signal Desk MCP
Signal Desk
모니터링 항목을 전용 화면에서 관리하고, 정기 실행, 이력, 앱 내 알림, Web Push를 다루는 PWA입니다. ChatGPT에서는 OAuth로 보호된 MCP 도구를 사용하여 동일한 모니터링 항목을 등록·업데이트·실행할 수 있습니다.
공개 위치
GitHub Pages(로컬 시제품 모드): https://rune-markar.github.io/signal-desk/
GitHub Pages는 비밀 정보나 정기 처리를 가질 수 없으므로 브라우저 내 데모로 동작합니다. 자동 모니터링·MCP·Push를 사용하는 본운영 URL은 Cloudflare Worker를 deploy할 때 발급됩니다.
Related MCP server: GetMonitor MCP Server
동작 모드
GitHub Pages / 로컬 시제품 모드
모니터링 항목 추가, 편집, 중지, 재개, 삭제, 검색, 필터링
알림의 읽지 않음, 일괄 읽음, 스누즈
실행 이력 및 다음 예정
ChatGPT Scheduled task의 내용을 수동 입력하고 중지 상태로 마이그레이션
localStorage에 저장Worker 버전으로 전달할 비샘플 데이터 JSON 내보내기
외부 통신을 하지 않는 "데모 결과"
PWA 앱 셸의 오프라인 표시
Cloudflare Worker 연결 모드
D1을 원본으로 하는 기기 간 동기화
세션 인증 및 단일 소유자 데이터 분리
15분마다의 Cron과 실행 lease
참조 URL이 있는 모니터링을 판정하는 Cloudflare Workers AI
OpenAI Responses API를 통한 공개 웹 검색(API 키 설정 시)
HTTPS 페이지의 안전한 획득 또는 웹 검색
성공·불일치·실패 이력과 알림 중복 방지
VAPID Web Push와 조용한 시간
OAuth 2.1 + PKCE로 보호된
/mcpChatGPT에서의 목록, 생성, 업데이트, 중지·재개, 즉시 실행, 삭제
연결 전 로컬 데이터의 명시적 1회 마이그레이션
GitHub Pages 버전에서 내보낸 JSON의 검증·읽기
인증된 화면이 그대로 오프라인이 된 경우, 같은 실행 중에만 직전 서버 상태를 열람할 수 있습니다. 다시 로드할 때는 인증 확인까지 로컬 데이터만 표시하고, 로그아웃·401·미인증 확인 시에는 기기의 서버 캐시를 삭제합니다. 오프라인 중에는 서버 데이터 변경을 수행하지 않습니다.
ChatGPT와의 경계
Signal Desk를 모니터링 항목의 원본으로 삼습니다. ChatGPT에 MCP를 연결하면 대화에서 Signal Desk의 모니터링을 조작할 수 있습니다.
한편, ChatGPT Scheduled Tasks의 기존 목록이나 실행 이력을 가져오는 일반용 API는 확인할 수 없으므로 다음은 수행하지 않습니다.
기존 Scheduled Tasks의 자동 가져오기
ChatGPT 측 알림 수신처를 Signal Desk로 대체
ChatGPT 측과 Signal Desk 측의 양방향 동기화
기존 태스크는 화면의 "ChatGPT에서 마이그레이션"으로 내용을 확인하고, 중지 상태로 수동 저장합니다. Signal Desk에서 테스트 성공 후에 원래 ChatGPT 태스크를 이용자가 중지하세요.
GitHub Pages 버전과 Worker 버전은 오리진이 다르므로 브라우저 저장 데이터는 자동 공유되지 않습니다. Pages 버전의 "설정"에서 마이그레이션용 JSON을 내보내고, Worker 버전에 로그인하여 같은 "설정"에서 읽어들인 후, 건수와 URL을 확인하여 명시적으로 마이그레이션합니다. JSON에는 모니터링 조건이나 URL이 포함되므로 안전한 기기에서 다루세요.
로컬 실행
Node.js 20.19 이상(또는 22.12 이상)을 사용하세요.
GitHub Pages에 상당하는 로컬 시제품 모드:
npm install
npm run devWorker 연결 모드:
cp .dev.vars.example .dev.vars
npm run db:migrate:local
npm run dev:workerWorker 연결 모드의 앱은 http://localhost:8787/signal-desk/, MCP는 http://localhost:8787/mcp입니다. .dev.vars에 실제 비밀 값을 설정하고 Git에 추가하지 마세요. OpenAI API 키를 생략한 경우에도 참조 URL을 설정한 모니터링은 Workers AI로 실행할 수 있습니다. URL 없이 공개 웹 검색하는 모니터링에는 OpenAI API 키가 필요합니다.
품질 확인
npm run checknpm run check는 다음을 실행합니다.
Vitest의 도메인, UI, 모니터링 원본 URL, Push URL 테스트
프론트엔드 TypeScript와 Vite 프로덕션 빌드
Worker TypeScript
Wrangler의 deploy dry-run
배포
Cloudflare에 대한 D1 migration, Worker Secret, VAPID, deploy, ChatGPT MCP 연결은 배포 절차를 참조하세요. 구현상의 경계와 보안 설계는 아키텍처에 정리되어 있습니다.
주요 구성
src/
api/ PWAから同一オリジンAPIへのクライアント
components/ 共通UI、モーダル、監視カード
domain/ 型、予定計算、Reducer、ローカル保存
pages/ 概要、監視、通知、履歴、設定
state/ ローカル/サーバー両モードの状態管理
worker/
migrations/ D1 schema
api.ts Cookie認証されたPWA API
auth.ts セッション、同一オリジン、試行制限
db.ts D1 repository
runner.ts Workers AI / Responses API、外部取得、Cron、lease
push.ts VAPID Web Push
mcp.ts ChatGPT用MCPツール
oauth.ts OAuth同意フロー
index.ts Worker統合入口기술 구성
React 19 + TypeScript + Vite
Vitest + Testing Library
Vite PWA / Workbox
Cloudflare Workers + D1 + KV + Cron + Static Assets
Cloudflare Workers AI
Cloudflare Agents SDK의 stateless MCP handler
Cloudflare Workers OAuth Provider
OpenAI Responses API
Web Push / VAPID
Temporal polyfill
보안상 주의
API 키, 로그인용 패스프레이즈, VAPID private key를 프론트엔드나 Git에 두지 마세요.
모니터링 원본은 HTTPS만 가능합니다. Worker는 private network, 위험한 redirect, 비텍스트 응답, 512KB 초과를 거부합니다.
외부 페이지는 신뢰할 수 없는 데이터로 모델에 전달하며, 페이지 내 명령을 실행하지 않습니다.
이 버전의 인증은 단일 소유자용입니다. 불특정 다수에게 공개하기 전에 외부 IdP와 계정 관리를 추가하세요.
Push 수신, 알림 클릭, PWA 설치, Android/iOS 아이콘은 프로덕션 HTTPS와 실기기에서 최종 확인하세요.
Noto Sans JP의 라이선스는 public/THIRD_PARTY_NOTICES.txt에 수록되어 있습니다. 이 프로젝트 자체에는 현재 시점에서 재사용 라이선스를 부여하지 않습니다.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables unified management of maintenance windows and incidents across Atlassian Statuspage and Uptime Kuma. It allows AI assistants to schedule maintenance, update service statuses, and list monitors through a single MCP-compatible interface.9MIT

GetMonitor MCP Serverofficial
AlicenseCqualityCmaintenanceConnects AI assistants to GetMonitor status pages, monitors, incidents, and maintenance schedules via read-only tools.10017Apache 2.0- FlicenseNot gradedqualityCmaintenanceUptime, SSL, DNS and domain monitoring you can talk to: check, create and manage monitors for all your client sites from Claude, ChatGPT, or any MCP client.1
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to interact with Healthchecks.io, allowing users to list, create, update, pause, resume, and delete checks, as well as view ping history and integrations.679MIT
Related MCP Connectors
Uptime, SSL, DNS and domain monitoring you can talk to from Claude or any MCP client.
MCP connector that lets ChatGPT list, search, and run your Apple Shortcuts via a local Mac agent
AI-powered website change monitoring - manage monitors and alerts via 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/Rune-markar/signal-desk'
If you have feedback or need assistance with the MCP directory API, please join our Discord server