Skip to main content
Glama

⏰ TimeZest MCP Server

npm version MCP Registry CI License: MIT

TimeZest 예약 데이터를 Claude에 직접 가져오세요 — Model Context Protocol(MCP)을 통해. 실시간 예약 조회, 엔지니어 브리핑, 티켓 연결 일정 관리를 모두 자연어로 수행할 수 있습니다.

Registry ID: io.github.sagarkalra-tech/timezest-mcp


🌟 왜 TimeZest MCP인가?

TimeZestConnectWise와 함께 사용하는 팀을 관리한다면 이런 불편함을 알고 있을 것입니다: 탭을 오가며 누가 예약되었는지 수동으로 확인하고, 예약되지 않은 일정 요청을 추적하고, 티켓 번호를 대조하는 일이요.

이 MCP 서버는 Claude를 다음과 같은 작업을 할 수 있는 일정 관리 어시스턴트로 바꿔줍니다:

  • 🗓️ 엔지니어별로 그룹화된 오늘의 확정 예약 아침 브리핑 제공

  • 🔍 티켓 번호로 예약 찾기 — "ticket #964400에 대한 예약을 찾아줘"라고 말하기만 하면 됩니다

  • ⏳ 후속 조치가 필요한 오래된 미예약 요청 표시

  • 📊 팀 전체의 집계 일정 통계 생성

  • 🕐 글로벌 MSP 팀을 위한 시간대 정확한 리포트 처리


Related MCP server: Autotask MCP Server

🚀 30초 만에 시작하기

사전 요구사항

옵션 1: Claude Desktop(권장)

이 내용을 Claude Desktop 구성 파일에 추가하세요:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application 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가지 특화 도구를 제공합니다:

Tool

Description

Key Parameters

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

시간/일 단위 경과 추적이 포함된 미예약 초대장(발송됨/새로움)

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?"

⚙️ 구성

Environment Variable

Required

Default

Purpose

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개 테스트:

Test File

Tests

Coverage

transform.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 Provenance: 모든 릴리스는 GitHub Actions OIDC를 통해 암호화 서명됩니다.

  • CI/CD 파이프라인: 태그가 지정된 릴리스에서 자동 빌드 → 테스트 → 게시가 실행됩니다(수동 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