Skip to main content
Glama
uedayou

loa-mcp-server

by uedayou

住所の位置(ポリゴン/ポイント)を取得

get_address_location

Retrieves a Japanese address's polygon or point as GeoJSON, handling notation variations and offering polygon simplification for map display.

Instructions

住所LODから、指定した住所のポリゴンまたはポイントをGeoJSON Featureとして取得する。住所LODの .ttl(Turtle)を取得し、クライアント側(このサーバー)でGeoJSONに変換する (住所LOD側のサーバー負荷軽減のため、.geojsonではなく.ttlを使う)。「〇〇郡△△町」の郡名、政令指定都市の市名の省略、「ケ/ヶ/ヵ」等の異体字表記ゆれは自動補完を試みる。simplify でポリゴンの座標点数を間引ける(市区町村レベル以上は数千点になることがあり、必要精度が低い用途では指定を推奨)。都道府県・市区町村・一部の町丁目レベルは住所LODが代表点(lat/long)を持たないため、その場合はポリゴンの重心(MultiPolygonは最大面積のポリゴンの重心)で自動的に補完する(properties.point_source: 'centroid'で判別可能)。戻り値のgeometryは標準的なGeoJSON(RFC 7946)。地図に表示する場合はLeafletのL.geoJSON()やMapLibre GL JS、deck.gl等のGeoJSON対応の地図ライブラリにそのまま渡せばよく、座標変換やSVGでの手動描画を自前で行う必要はない。複数の住所(例: 23区すべて)をまとめて取得したい場合は、1件ずつこのToolを呼ぶ代わりに get_address_locations を使う。dropSmallIslands(都道府県のみ指定可)で、点数の大半を占める極小の離島を除外して大幅に軽量化できる。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
addressYes住所文字列(例: '東京都千代田区永田町1丁目')、または住所LODのURI (例: 'https://uedayou.net/loa/東京都千代田区永田町1丁目')。都道府県〜丁目まではポリゴン、番地は代表点(ポイント)のみが返る。号(建物番号)は特定できない。「〇〇郡△△町」の郡名や、政令指定都市の市名(例: '神奈川県南区'←'神奈川県横浜市南区')を省略しても自動的に補完を試みる。「ケ/ヶ/ヵ」等の異体字表記ゆれも自動的に試行する。複数の住所をまとめて取得したい場合は get_address_locations を使う。
simplifyNoポリゴンの座標点数を間引くレベル(既定 'none' = 間引かない)。必要性は住所のレベルによって大きく異なる: 丁目・丁目なし町レベル(例: 永田町1丁目、歌舞伎町)は元々数十〜100点程度しかなく、simplifyの効果はほぼないため通常は指定不要。市区町村レベル(例: 新宿区、約1,277点)は数百〜数千点になることが多く、'low'(軽微)または'medium'(標準)を検討する価値がある。都道府県レベル(例: 東京都、約40,428点)は数万点になり、そのままだと1回の会話で扱いきれないことがある。'high'(積極的)は形状の崩れが大きく見た目が実用に耐えないことが多いため、都道府県レベルなど点数が極端に多く 'low'/'medium' でも収まらない場合の最終手段として使うこと(理由なく既定選択にしない)。Point(番地の代表点)には効果がない。
dropSmallIslandsNo既定false(何も除外しない=正確な形状を保つ)。trueにすると、実面積が約0.01km^2(概ね100m四方)未満の離島(岩礁・洲を含む)をポリゴンから丸ごと除外する。**addressが都道府県そのもの(例: '東京都'、'沖縄県'。市区町村以下は不可)である場合のみ指定できる**。都道府県レベルは1件で数万点になり得るが、その大半は既に最小限(4点)の構成の離島パーツが占めるため、simplifyだけでは大きく削減できない。小さい離島を除外することで大幅に削減できる(失われる面積は都道府県の面積のごく一部)。47都道府県すべてを結合した日本地図のような用途は get_address_locations の同名パラメータを使う。
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and does so excellently. It discloses that the tool fetches TTL and converts to GeoJSON client-side to reduce server load, auto-completes omitted county/city names and variant characters, uses centroid fallback when LOD lacks representative points (with point_source property), returns RFC 7946 GeoJSON compatible with mapping libraries, and explains simplify/dropSmallIslands side effects. This goes far beyond a basic action statement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but every sentence delivers actionable information. It is front-loaded with the core purpose, then systematically covers conversion, auto-completion, centroid fallback, GeoJSON compatibility, alternative tools, and parameter usage nuances. There is no redundancy or filler; despite its length, it remains efficiently organized and directly relevant to tool selection and invocation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity—three parameters with nuanced behavior, no output schema, and no annotations—the description is remarkably complete. It explains the return format (GeoJSON Feature), the point_source marker for centroids, how to use with mapping libraries, limitations (e.g., banchi points only, no building numbers), and when to use sibling tools. It leaves no practical gaps for an agent deciding whether and how to call this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Even though schema coverage is 100%, the description adds substantial meaning beyond the schema. For 'address' it explains levels (prefecture to chome polygon, banchi point, gou not possible), URI example, and auto-completion. For 'simplify' it provides concrete point counts for different administrative levels and warns against 'high' as default. For 'dropSmallIslands' it explains the area threshold, applicability only to prefectures, and rationale. These details are not in the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: '住所LODから、指定した住所のポリゴンまたはポイントをGeoJSON Featureとして取得する' (retrieves polygon or point for a specified address from Address LOD as a GeoJSON Feature). It clearly distinguishes from sibling get_address_locations by explicitly stating that for multiple addresses, one should use get_address_locations instead of calling this tool multiple times.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool vs alternatives: for single addresses use this, for multiple use get_address_locations. It also gives detailed usage conditions for parameters: simplify recommended at city/prefecture levels with specific point counts, dropSmallIslands only for prefectures, and 'high' simplify as a last resort. These are clear when/when-not and alternative recommendations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/uedayou/loa-mcp-server'

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