osm-ui-puca について
osm-ui-pucaは、Púca MCPサーバー向けのStreamlitウェブインターフェースで、チャットからOpenStreetMap関連ツールを利用できます。画面から問い合わせたい人や、MCPクライアントおよびPydantic AIでサーバーを使う人を対象としています。
主な機能
- 01Streamlitチャットインターフェース
- 02OpenStreetMap関連ツール
- 03Docker Compose設定
- 04Pydantic AIのサンプル
活用シーン
- 01ウェブ画面でのOpenStreetMap関連情報の検索
- 02Pydantic AIでのPúcaツール利用
MCP 対応
Púca MCPサーバーは、ジオコーディング、距離計算、周辺施設、アイルランドの通り名、空きビル、Overpassの結果を扱うツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
osm-ui-puca
このリポジトリには、Púca のウェブインターフェース用の Python Streamlit UI コードが含まれています。このウェブインターフェースは、OpenAI と Púca MCP サーバーを使用して、OpenStreetMap 関連のツールを提供します。
使い方
この MCP サーバーは、MCP に対応したクライアントと統合できます。

Docker
このリポジトリに含まれる docker-compose.yaml ファイルを使うと、Púca UI と MCP サーバーの両方が起動し、UI にクエリを入力できます。
そのためには、.env ファイルにご自身の OpenAI API キーを追加してから、次のコマンドでコンテナを起動します。
docker compose up -d
問題がないかログを確認し、http://your.ip.address:3301 でウェブインターフェースにアクセスしてください。
Pydantic AI
この MCP サーバーを Python の pydantic_ai で使用する方法については、サンプルファイル client.py をご覧ください。
Claude
Anthropic の Claude は、次のファイルを編集すると MCP サーバーの追加に対応します。
vi ~/Library/Application\ Support/Claude/claude_desktop_config.json
次の内容を追加し、URL を変更してください。
{
"mcpServers": {
"puca": {
"command": "npx",
"args": [
"mcp-remote",
"http://192.168.1.40:3300/sse"
]
}
}
}
ツール
以下は、MCP サーバー経由で利用できるツールの一覧です。
- get_coordinates_for_address
- get_address_by_coordinates
- get_defibrillators
- get_distance_between_addresses
- get_distance_between_coords
- get_parking
- get_toilets
- get_post_offices
- get_cafes
- get_fast_food_places
- get_irish_street_names
- get_vacant_buildings
- get_overpass_results
謝辞
この MCP サーバーでは、OSRM、Overpass、Nominatum が無料で公開している API を利用しています。 OpenStreetMap のデータは、私のようなボランティアが提供しています。忘れずに出典を明記してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。