Time について
Time MCP Server は、AI アシスタントやその他の MCP クライアントに日時操作のツールを提供する MCP サーバーです。自然言語による相対時間の解釈、タイムゾーン変換、時刻比較に対応し、stdio と HTTP stream の両方のトランスポートで動作します。
主な機能
- 01任意のタイムゾーンと形式での現在時刻の取得
- 02next month などの相対時間表現の解析
- 03IANA タイムゾーン間の時刻変換
- 04期間の加減算と二つの時刻の比較
活用シーン
- 01都市ごとの現在時刻に関する質問にAI アシスタントが回答する
- 02基準日の前後の日時を計算する
- 03タイムゾーンを含む二つの時刻の前後関係を確認する
MCP 対応
本プロジェクトは MCP サーバーであり、current_time、relative_time、convert_timezone、add_time、compare_time などのツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ホスト型デプロイ
Frontier AIでホスト型デプロイを利用できます。
概要
Time MCP サーバーは、AI アシスタントやその他の MCP クライアントに、時間や日付に関する操作を実行するための標準化されたツールを提供するModel Context Protocol(MCP)サーバーです。このサーバーは、AI ツールと堅牢な時間処理バックエンドをつなぐ役割を果たし、自然言語でのやり取りを通じて複雑な時間操作を可能にします。
機能
- ⏰ 時間操作 - 現在時刻の取得、タイムゾーンの変換、時間の加算や減算ができます
- 🗣️ 自然言語の解析 - 「昨日」や「来月」などの相対的な時間表現を理解します
- ⚖️ 時間の比較 - 2つの異なる時刻を簡単に比較できます
- 🎨 柔軟なフォーマット - 多様な事前定義フォーマットとカスタムフォーマットに対応しています
- ✅ MCP 準拠 - Model Context Protocol 標準に完全に準拠しています
- 🔄 複数のトランスポート - ローカル連携用の
stdioとネットワークアクセス用のHTTP streamに対応しています
インストール
この MCP サーバーは、Cursor、Claude Desktop、Claude Code、その他多数など、Model Context Protocol に対応するさまざまな AI アシスタントクライアントと連携できます。
🚀 ワンクリックインストール(Cursor)
下のボタンをクリックすると、Cursor環境で Docker を使って MCP サーバーが自動的に設定されます。
npx を使う(JavaScript/Node.js)
この方法では npxを使って MCP サーバーを実行します。Node.js のインストールが必要です。以下の JSON 設定を MCP クライアントの設定にコピーしてください。
{
"mcpServers": {
"mcp-time": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@theo.foobar/mcp-time"
]
}
}
}
Docker を使う
分離されたコンテナ内で MCP サーバーを実行します。Dockerのインストールが必要です。この JSON 設定を MCP クライアントの設定にコピーしてください。
{
"mcpServers": {
"mcp-time": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"theo01/mcp-time:latest"
]
}
}
}
バイナリを使う
mcp-timeバイナリをシステムに直接インストールします。以下のインストール方法から選び、バイナリが PATH 内のディレクトリに配置されるようにしてください。その後、この JSON 設定を MCP クライアントの設定に追加してください。
{
"mcpServers": {
"mcp-time": {
"type": "stdio",
"command": "mcp-time"
}
}
}
オプション 1:リリースからダウンロード
リリースページから最新のビルド済みバイナリをダウンロードします。
# Replace OS-ARCH with your platform (e.g., linux-amd64, darwin-arm64, windows-amd64)
curl -Lo mcp-time https://github.com/TheoBrigitte/mcp-time/releases/latest/download/mcp-time.OS-ARCH
install -D -m 755 ./mcp-time ~/.local/bin/mcp-time
オプション 2:Go でインストール
Go 開発者は、go install を使って直接インストールできます。
go install github.com/TheoBrigitte/mcp-time/cmd/mcp-time@latest
バイナリは $GOPATH/bin ディレクトリにインストールされます。
オプション 3:ソースからビルド
make を使ってプロジェクトをクローンし、ビルドします。
git clone https://github.com/TheoBrigitte/mcp-time.git
cd mcp-time
make install
バイナリは ~/.local/bin/mcp-time にインストールされます。
使用方法
基本的な使い方
stdio トランスポートで起動(デフォルト、MCP クライアント向け):
mcp-time
HTTP ストリームトランスポートで起動(ネットワークアクセス向け):
mcp-time --transport stream --address "http://localhost:8080/mcp"
コマンドラインオプション
サーバーは、高度な設定に対応する以下のフラグをサポートしています。
$ mcp-time --help
An MCP (Model Context Protocol) server which provides utilities to work with time and dates.
Usage:
mcp-time [flags]
Flags:
--address string Listen address for Stream HTTP Server (only for --transport stream) (default "http://localhost:8080/mcp")
-h, --help help for mcp-time
--log-file string Path to log file (logs is disabled if not specified)
-t, --transport string Transport layer: stdio, stream. (default "stdio")
--version Print version information and exit
利用可能なツール
current_time
任意のタイムゾーンと形式で現在の時刻を取得します。
パラメーター:
format(省略可能) - 出力形式(RFC3339やKitchenなどの定義済み形式、またはカスタムの Go レイアウト)timezone(省略可能) - IANA 形式の対象タイムゾーン(例:America/New_York)。デフォルトは UTC です。
例:「東京は今何時ですか?」
relative_time
相対的な自然言語表現に基づいて時刻を取得します。
パラメーター:
text(必須) - 自然言語表現(例:yesterday、5 minutes ago、next month)time(省略可能) - 表現の基準時刻。デフォルトは現在の時刻です。timezone(省略可能) - 出力の対象タイムゾーンformat(省略可能) - 時刻の出力形式
例:「3 週間前の日付は何ですか?」
convert_timezone
指定した時刻をタイムゾーン間で変換します。
パラメーター:
time(必須) - 入力時刻文字列(さまざまな形式に対応)input_timezone(省略可能) - 入力時刻のタイムゾーンoutput_timezone(省略可能) - 出力の対象タイムゾーンformat(省略可能) - 時刻の出力形式
例:「午後 2 時 30 分(EST)を東京時間に変換してください」
add_time
指定した時刻に時間を加算または減算します。
パラメーター:
time(必須) - 入力時刻文字列duration(必須) - 加算または減算する時間(例:2h30m、-1h、24h)timezone(省略可能) - 出力の対象タイムゾーンformat(省略可能) - 時刻の出力形式
例:「45 分後は何時になりますか?」
compare_time
2 つの時刻を比較し、その関係を判定します。タイムゾーンを考慮した比較に対応しています。
パラメーター:
time_a(必須) - 比較する最初の時刻time_a_timezone(省略可能) - IANA 形式のtime_aのタイムゾーン(例:America/New_York)time_b(必須) - 比較する 2 番目の時刻time_b_timezone(省略可能) - IANA 形式のtime_bのタイムゾーン(例:Europe/London)
戻り値:
time_aがtime_bより前の場合は-1time_aがtime_bと等しい場合は0time_aがtime_bより後の場合は1
例:「午後 3 時(EST)は午後 8 時(GMT)より前ですか?」
コントリビューション
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。大きな変更を加える場合は、まず issue を作成し、変更したい内容についてご相談ください。
ライセンス
このプロジェクトは MIT License の下でライセンスされています。詳細は LICENSE ファイルをご覧ください。
クレジット
以下の優れたライブラリを使用して構築されています。
- araddon/dateparse - 形式がわからなくても日付を解析
- tj/go-naturaldate - 自然言語による日付解析
- mark3labs/mcp-go - Go 向け Model Context Protocol SDK
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。