Skip to main content
Glama

️ TimeZest MCP Server

npm version MCP Registry CI ![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg

TimeZest のスケジュールデータを Claude に直接取り込めます。Model Context Protocol (MCP) を通じて、リアルタイムの予約検索、エンジニアのブリーフィング、チケット連携のスケジュール管理を、すべて自然言語で実行できます。

レジストリ ID: io.github.sagarkalra-tech/timezest-mcp


🌟 TimeZest MCP を選ぶ理由

TimeZestConnectWise を使用するチームを管理しているなら、この手間はよくご存じでしょう。タブを切り替えたり、誰が予約されているかを手動で確認したり、未予約のスケジュールリクエストを追跡したり、チケット番号を照合したりする作業です。

この MCP サーバーは CLaude を、次のことができるスケジュールアシスタントに変えます。

  • ️ エンジニアごとにグループ化された今日の確定予約のモーニングブリーフィングを提供

  • 🔍 チケット番号で予約を検索 — 「チケット #964400 の予約を検索して」と言うだけ

  • ️ フォローアップが必要な長期未予約リクエストを表示

  • 📊 チーム全體の集計スケジュール統計を生成

  • 🕌 グローバルな MSP チーム全體でタイムゾーン精度の高いレポートに対応


Related MCP server: Autotask MCP Server

️ 30秒で始める

前提条件

オプション 1: CLaude Desktop (推奨)

CLaude Desktop の設定ファイルに以下を追加します。

  • WIndows: %APPDATA%\CLaude\claude_desktop_config.json

  • macOS: ~/Library/Appication Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "timezest": {
      "command": "npx",
      "args": ["-y", "timezest-mcp@latest"],
      "env": {
        "TIMEZEST_API_KEY": "your-timezest-api-key-here"
      }
    }
  }
}

CLaude Desktop を再起動すれば完了です。

オプション 2: CLaude Code CLI

claude mcp add-json timezest-mcp '{
  "command": "npx",
  "args": ["-y", "timezest-mcp@latest"],
  "env": {
    "TIMEZEST_API_KEY": "your-timezest-api-key-here"
  }
}'

オプション 3: VS Code (Copilot)

.vscode/settings.json またはユーザー設定に追加します。

{
  "mcp": {
    "servers": {
      "timezest": {
        "command": "npx",
        "args": ["-y", "timezest-mcp@latest"],
        "env": {
          "TIMEZEST_API_KEY": "your-timezest-api-key-here"
        }
      }
    }
  }
}

️ 利用可能なツール

このサーバーは、CLaude が呼び出せる8つの専用ツールを提供します。

ツール

説明

主要パラメータ

get_todays_appointments

モーニングブリーフィング — エンジニアごとにグループ化された今日の確定予約と、保留中の未予約リクエスト

timezone

list_appointments

任意の日付範囲に対する柔軟なクエリ (オプションのフイルター付き)

start_date, end_date, engineer_name, status

get_engineer_schedule

特定のエンジニアの今後のすべての予約を時刻順に表示

engineer_name, days_ahead, include_ pending

list_ pending_requests

未予約の招待 (sent/new) を経過時間 (時間/日) 付きで表示

days_back, engineer_name, older_than_hours

find_appointment_by_ticket

ConnectWise のチケット番号にリンクされた予約を検索

ticket_number (例: 964400 または #964400)

get_appointment_types

TimeZest で設定されているすべての予約タイプ定義を一覧表示

get_appointment_stats

集計サマリー: ステータス別・エンジニア別の件数、本日の負荷、最古の保留中リクエスト

days_back, days_forward

list_cancelled_appointments

再予約用のスケジュール URL 付きのキャンセル済みリクエスト

days_back, engineer_name


💬 プロンプト例

接続後は、自然な言葉で CLaude に話しかけるだけです。

"Who are my top engineers today and what are they booked for?"

"Find any TimeZest requests for ticket #964400."

"Give me a morning briefing of today's confirmed vs. unbooked requests."

"Show me all pending scheduling requests older than 48 hours."

"What's the scheduling volume breakdown for the last two weeks?"

"Pull up Sarah's schedule for the next 5 days."

"List all cancelled appointments from last week — any we should rebook?"

️ 設定

環境変数

必須

デフォールト

目的

TIMEZEST_API_KEY

はい

あなたの TimeZest Bearer トークン (Settings → API)

TIMEZEST_ DEFAULT_TZ

いいえ

America/Chicago

ローカライズ済み表示文字列に使用するデフォールトの IANA タイムゾーン

TIMEZEST_WINDOW_DAYS_BACK

いいえ

14

スケジュールリクエストを取得到る遡り日数

TIMEZEST_WINDOW_DAYS_FORWARD

いいえ

30

スケジュールリクエストを取得到る先読み日数


️ アーキテクチャ

┌─────────────────────────────────────────────────────────────────┐
│                        MCP CLIENT (Claude)                      │
│        Desktop App  •  Claude Code CLI  •  IDE Plugin           │
└──────────────────────────┬──────────────────────────────────────┘
                           │ Stdio (JSON-RPC)
┌──────────────────────────▼──────────────────────────────────────┐
│                     TIMEZEST MCP SERVER                         │
│                                                                 │
│  ┌──────────────┐  ┌──────────────┐                             │
│  │ Tool Handler │  │  MCP SDK     │  (index.ts)                 │
│  │ (8 Tools)    │  │  Registry    │                             │
│  └──────┬───────┘  └──────────────┘                             │
│         │                                                       │
│  ┌──────▼────────────────────────────────────────────────────┐  │
│  │                 TIMEZEST API CLIENT                        │  │
│  │  Pagination • Retry Logic • Rate Limit Management         │  │
│  └──────────────────────┬────────────────────────────────────┘  │
│                         │ (client.ts)                            │
│  ┌──────────────────────▼────────────────────────────────────┐  │
│  │               DATA TRANSFORMATION LAYER                    │  │
│  │  Timezone Math • Engineer Mapping • Ticket Linking         │  │
│  └────────────────────────────────────────────────────────────┘  │
│                         │ (utils/)                               │
└─────────────────────────┼────────────────────────────────────────┘
                          │ HTTPS / REST
┌─────────────────────────▼──────────────────────────────────────┐
│                      TIMEZEST API (v1)                          │
│       Scheduling Requests • Appointment Types • Resources       │
└─────────────────────────────────────────────────────────────────┘

主要な設計上の決定

  • 読み取り専用: 意図的に読み取り専用にしています — スケジュールデータへの変更は一切行いません

  • 回復力のあるクラアント: 429/5xx エラーに対して Retry-After ヘッダーを自動サポートする指数バックオフ

  • ディープページネーション: すべてのページを再帰的に巡回し (50件単位)、完全なデータセットを構築

  • タイムゾーン精度: Unix タイムスタンプを厳密な ISO 形式に変換し、IANA タイムゾーン識別子を使用したローカライズ済み表示文字列を生成

  • エンジニア解決: 「最も信頼度の高い」検索を使用 — 最初に scheduled_agents を確認し、次に resources にフォールバック

  • ウォームキャッシュ: 予約タイプは最初の取得後にキャッシュされ、API オーバーヘッドを削減


️ テスト

このサーバーには包括的な Vitest テストスイートが同梱されています — 3つのファイルに22件のテストです。

テストファイル

テスト数

カバレッジ

transtorm.test.ts

8

エンジニア解決、チケット抽出、タイムゾーン変換、欠落フィールドのグレースフルな処理

filter.test.ts

6

大文字小文字を区別しない部分一致、チーム名の一致、日付範囲フィルタリング

client.test.ts

8

予約タイプのキャッシュ、ページネーション、429/5xx でのリトライ、4xx ではリトライなし

すべてのテストはモック化された API レスポンスを使用します — ライブ API 呼び出しはなく、シークレットも不要です。

npm test            # Single run
npm run test:watch  # Re-runs on file save

🔒 セキュリティと信頼性

  • NPM 来歴証明: すべてのリリースは GitHub Actions OIDC を通じて暗号的に署ンされています

  • CI/CD パイプライン: タグ付きリリースで自動的に build → test → publish を実行 (手動の npm publish は不要)

  • CI にシークレットなし: テストに API キーは不要 — モック化されたレスポンスで完全に決定的

  • Node.js マトリックス: Node 20 (LTS) と 22 (Current) でテスト済み


📦 配布


🤝 コントリビューション

  1. リポジトリをフォークします

  2. フィーチャーブランチを作成します (git checkout -b feat/my-feature)

  3. 変更を加え、テストが通ることを確認します (npm test)

  4. プルリクエストを送信します

データフロー、コンポーネント設計、変換ロジックの詳細は ARCHITECTURE.md を参照してください。


📄 ライセンス

MIT © 2026 Sagar Kalra

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
4Releases (12mo)
Commit activity

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

View all related MCP servers

Related MCP Connectors

  • Manage projects, tasks, time tracking, and team collaboration through natural language.

  • Timezone tools for agents: convert, world clock, offset, lookup, date math, holidays, slots. x402

  • Streamline your Attio workflows using natural language to search, create, update, and organize com…

View all MCP Connectors

Latest Blog Posts

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/sagarkalra-tech/TimeZest-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server