Time MCP Server

·

先日のGlobal Azure 2025 で百田さんのセッションで
デモでサクッと動かされていたので自分もちょっとだけやってみました。
今年も品川まで行けなくって松本からオンラインで見ていました。(品川に行ったのは何年前?)

Time MCP Server を Windows 11のVS Code GitHub Copilot – Agent (MCPクライアント)

Global Azure 2025 – connpass
2025/05/10(土) 13:00 〜 18:30
https://jazug.connpass.com/event/348980/

Azure × MCP 入門

🗣️日本マイクロソフト Cloud Solution Architect Ryosuke HYAKUTAさん

デモ環境は Windows 11 上で構築されており、Visual Studio CodeGitHub Copilot が使用されていました。

概要としては、以下のような構成でした:

  • Docker を使用してインストールを行う
  • Docker Hub から提供されている MCP サーバーのコンテナイメージ を使用し、コンテナを実行してサーバーを起動する

また、前提として Docker Engine が起動している必要がある

という感じですかね。

ポチポチポチ。サクッと動いていました。

自分も同じようにやってサクッと動きました。

コンテナで動かしてしまうのは楽でいいですよね。
.NET Aspire がやっぱりコンテナで動かしてオーケストレーションしてくれる。
という方向ですかね。Windowsでは。?


さて、(recommended)の
uv, uvx を使う方法。
ごめんなさい。初見です。uvは。セッションではPythonを使ってMCP サーバーを…
という部分ですね
やっぱり、Pythonはさっぱりわからないのですが、やっぱり避けては通れないですよね

Using uv (recommended)(推奨)

When using uv no specific installation is needed. We will use uvx to directly run mcp-server-time.
uv を使用する場合、特別なインストールは不要です。uvx を使って mcp-server-time を直接実行します。

uv: Rust製の超高速Pythonパッケージマネージャー

パッケージマネージャー
なるほど!それでインストール不要ということですね。

自分がハマったポイント
Windows 11 環境でVS Code Dev Container UbuntuでCline という環境で使っていたので
Cline のMCPクライアントはリモートのUbuntuで動いていたんですが…

ですよね…
VS Code のGitHub Copilot Agent MCPサーバーはローカルのVS Code の動いている環境
Windows 11 で動いているんですよね…
(そんな簡単なことに気が付かなかった…)

ということで
Windows 11 のロカールにuvをインストールして動きました。
PyPI これはわかる…

mcp-server-time · PyPI
https://pypi.org/project/mcp-server-time/
ここにすでにパッケージがあるんですね。
ということで
PyPIレジストリからmcp-server-time Pythonパッケージをインストールし、
パッケージが提供するエントリポイントをuvxコマンドで実行する
という流れですね。

ローカルはなるべく使わずにコンテナ使っていましたが
uv だけ入れてOKでした。


※さて、丸投げだとClineさんはDev ContainerのUbuntuにがっつりインストールして動かしてくれました。pipで。それからWindsurfさんは自分でさらからtime MCPサーバーを公式ドキュメントを見て作成して動かそうとしてくれました。(動かなかったですが)


WindowsはやっぱりLinuxやMaxOS(FreeBSD ベース)とはちょっと違うので(なのでコンテナを使いますが。あるいはWSL2)
そのままでは動かないのですよね…
いきなりのエラー。

引数をちょっと増やして対応しました…

zoneinfo._common.ZoneInfoNotFoundError: ‘No time zone found with key 東京 (標準時)’

Windowsのローカルタイムゾーン名(東京 (標準時))がIANAタイムゾーン名(例: Asia/Tokyo)ではなく日本語表記になっている。
zoneinfo(Python 3.9+ 標準)はIANA形式のタイムゾーン名のみサポート。
Windowsの環境ではtime.tznameやOSの設定がIANA名でなく「東京 (標準時)」等になる場合があるため、zoneinfoがマッピングできずエラーとなります。

ちゃんと動きました。

この対応を行わないと、こんな感じに失敗してしまう…
Windowsだとやっぱりいろいろと気を使わないと…(WSL2は偉大ですね)

もうこの文字化けのエラーが出てみた瞬間に…

ちなみにWSLでも同じですね。(まあVS CodeはWindowsで動いているので…)


ちなみにVS Code + Cline の場合は、同じくDev Container でコンテナのUbuntuの環境で、
Cline, MCPクライアントはUbuntu(リモート)で動いていて、
普通にLinuxでの環境と同じで動いていますね。

普通に定義だけ書いて(このUbuntuのコンテナはPtyhon3環境でuvも入ってます)
ちゃんと登録されて、VS Code GitHub Copilot はローカルのWindows環境ではなくて
(リモートのUbuntuで動く)ClineのMCPクライアントのUbuntu環境で動いていますね。

最初にこっちで動かしてしまったのでGitHub Copilotでははまってしまった…



servers/src/time/README.md at main · modelcontextprotocol/servers https://github.com/modelcontextprotocol/servers/blob/main/src/time/README.md

Time MCP Server

A Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.

Available Tools

  • get_current_time – Get current time in a specific timezone or system timezone.
    • Required arguments:
      • timezone (string): IANA timezone name (e.g., ‘America/New_York’, ‘Europe/London’)
  • convert_time – Convert time between timezones.
    • Required arguments:
      • source_timezone (string): Source IANA timezone name
      • time (string): Time in 24-hour format (HH:MM)
      • target_timezone (string): Target IANA timezone name

Time MCP サーバー

時間およびタイムゾーンの変換機能を提供する Model Context Protocol(MCP)サーバー です。このサーバーにより、LLM(大規模言語モデル)は現在時刻の取得や、IANA タイムゾーン名を使用したタイムゾーン変換を、システムのタイムゾーンを自動的に検出しながら実行できます。


利用可能なツール

get_current_time – 特定のタイムゾーンまたはシステムのタイムゾーンにおける現在時刻を取得します。

必要な引数:

  • timezone(文字列):IANA タイムゾーン名(例:America/New_York, Europe/London

convert_time – タイムゾーン間で時刻を変換します。

必要な引数:

  • source_timezone(文字列):変換元の IANA タイムゾーン名
  • time(文字列):24時間形式の時刻(HH:MM)
  • target_timezone(文字列):変換先の IANA タイムゾーン名


Installation

Using uv (recommended)(推奨)

When using uv no specific installation is needed. We will use uvx to directly run mcp-server-time.
uv を使用する場合、特別なインストールは不要です。uvx を使って mcp-server-time を直接実行します。

Using PIP

Alternatively you can install mcp-server-time via pip:
代わりに、pip を使って mcp-server-time をインストールすることもできます:

pip install mcp-server-time

After installation, you can run it as a script using:
インストール後は、以下のようにスクリプトとして実行できます:

python -m mcp_server_time

Docker コンテナで動かす

Docker Hubにイメージ(mcp-server-time)が公開されているので、そのイメージをもとにコンテナを起動して実行します

mcp/time
Verified Publisher
By mcp
Time (Reference) MCP Server
Time and timezone conversion capabilities
https://hub.docker.com/r/mcp/time


Cline も GitHub Copilot もDev Container 側にも入っていたんですけどね…


“Time MCP Server” への2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です