MCPサーバー / 公開API

本サービスが公開している変更ログ(承認済みのみ)を、AIエージェントやプログラムから そのまま参照できる形で無料公開しています。認証は不要です。

MCPツール 4 種 / RESTエンドポイント 4 本 / データは JSON(UTF-8)/ 認証 不要

MCPエンドポイント

MCP(Model Context Protocol)クライアントからは、次のURLに Streamable HTTP トランスポートで接続します。

https://fh-watch.com/mcp
トランスポートStreamable HTTP(POST のみ)
レスポンスJSON(application/json)。SSEストリーミングは使いません
セッションセッションレス。Mcp-Session-Id は発行しません
プロトコル版2025-06-18 / 2025-03-26(初期化時にネゴシエート)
認証不要(公開データのみを返す参照系ツールのため)
提供機能tools のみ(resources / prompts は提供しません)

提供ツール(4種)

ツール内容引数
list_changes 承認済み変更ログを新しい順に一覧する category(カテゴリ名で完全一致)/ visa_type(在留資格タグで完全一致)/ since(ISO 8601。この日時以降の公開分)/ limit(1〜100、既定20)/ offset(既定0)
get_change 変更ログを ID 単体で取得する id(必須・整数)
search_changes タイトル・変更点・要約を対象に部分一致検索する q(必須・検索語)/limit(1〜100、既定20)
list_sources 監視対象の公式ソース一覧と最終巡回日時・掲載件数を返す なし

各ツールは content[0].text(JSON文字列)と structuredContent の両方で同じデータを返します。該当IDが無い・検索語が空などのデータ起因のエラーは、 JSON-RPCエラーではなく isError: true の結果として返します。

接続例

Claude Code から追加する場合:

claude mcp add --transport http fhw https://fh-watch.com/mcp

設定ファイル(.mcp.json)に直接書く場合:

{
  "mcpServers": {
    "fhw": {
      "type": "http",
      "url": "https://fh-watch.com/mcp"
    }
  }
}

生の JSON-RPC で確認する場合:

curl -s https://fh-watch.com/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

REST API(4エンドポイント)

エンドポイント内容レスポンス
GET /api/logs 変更ログ一覧。クエリ: category / visa_type / since / limit(1〜100、既定20)/ offset { generated_at, total, count, limit, offset, items }
GET /api/logs/{id} 変更ログ単体(安定ID)。存在しない場合は 404 変更ログ1件のJSON
GET /api/search 部分一致検索。クエリ: q(必須)/ limit { query, total, count, items }
GET /api/sources 監視対象ソース一覧(最終巡回日時・掲載件数つき) { generated_at, count, items }

全応答は Content-Type: application/json; charset=utf-8Cache-Control: public, max-age=300Access-Control-Allow-Origin: * を返します(ブラウザから直接呼べます)。 全件のスナップショットは https://fh-watch.com/api/logs.json としても配信しています。

# 最新5件
curl -s 'https://fh-watch.com/api/logs?limit=5'

# 特定技能に絞って取得
curl -s 'https://fh-watch.com/api/logs?category=特定技能&limit=10'

# 2026-07-01 以降の公開分
curl -s 'https://fh-watch.com/api/logs?since=2026-07-01'

# 単体取得
curl -s 'https://fh-watch.com/api/logs/1'

# 検索
curl -s 'https://fh-watch.com/api/search?q=告示'

# 監視ソース一覧
curl -s 'https://fh-watch.com/api/sources'

データスキーマ

変更ログ1件(items[] の各要素)は次のフィールドを持ちます。

フィールド内容
idinteger安定ID。/changes/{id}/ に対応し、変更されません
source_idstring監視ソースID(/api/sourcesid に対応)
item_keystringソース内での項目キー(同一項目の同定用)
change_typestring変更の種別(例: new_item
detected_atstring (ISO 8601)変更を検知した日時(UTC)
published_atstring (ISO 8601) | null本サービスで公開した日時(UTC)
titlestring変更のタイトル(事実ベース)
what_changedstring | null何が変わったか(差分の記述)
effective_datestring | null施行日 / 適用日。未確定は null
categoriesstring[]カテゴリ(固定語彙5種)
visa_typesstring[]対象の在留資格タグ(固定語彙)
summarystring | null要約(AI生成+人間確認済み)
source_urlstring | null一次情報(公式)のURL
urlstring本サービスの安定URL(https://fh-watch.com/changes/{id}/
correctionsobject[]訂正履歴。各要素は { at, note }

内部の運用項目(AIモデル名・確認メモ・スナップショット参照・承認ステータス)は公開しません。 返るのは承認済み(approved)のエントリのみです。

更新頻度

公式ソースの巡回は日次で行い、検知した変更は人間が一次情報と突合して承認した ものだけを公開します。API・MCPが返すデータは、承認後の日次ビルドで更新される静的スナップショットです (generated_at が生成時刻)。したがって、承認から API 反映までは最大1日程度の遅れがあります。 レスポンスは最大5分間キャッシュされます。

各ソースの巡回状況(最終巡回日時・掲載件数)は情報ソース一覧/api/sources で公開しています。

利用条件

詳細は利用規約および免責事項をご確認ください。 掲載情報の正確性・完全性・最新性は保証されません。実際の手続・判断にあたっては、 必ず一次情報(公式情報)をご確認ください。