FIRST CH TOOLS / FOR AI AGENTS
AIエージェントからの使い方
このツール集は、人が画面で使うだけでなく、AIエージェント(Claude・ChatGPT・自作エージェント等)の道具としても使えるように設計しています。機械可読の概要は llms.txt にまとめています。
1 — URL Parameters
計算系ツールはURLパラメータで直接呼び出せます。ブラウザを操作できるエージェントなら、ページを開くだけで結果がDOMに出力されます。
# コントラスト比(fg=文字色 / bg=背景色・hex 6桁または3桁・#省略可) /contrast/?fg=333333&bg=ffffff # 文字数カウント(text=対象テキスト・URLエンコード) /moji/?text=%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF # OGPメタタグ生成ウィザード(title / description / url / image / site / card / type を初期値として渡せる。値があれば生成ステップから開始) /ogp/?title=%E3%82%BF%E3%82%A4%E3%83%88%E3%83%AB&url=https://example.com/&image=https://example.com/og.png&type=website # テストデータ生成(rows / format=csv,tsv,json,xlsx / fields / locale / encoding / newline / bom / header / seed) /testdata/?rows=50&format=csv&fields=name,email,tel,zip,address&seed=test-2026 # テストデータをExcel(.xlsx)で生成 /testdata/?rows=100&format=xlsx&fields=id,name,email,tel,zip,address # 境界値テキスト(preset=文字種 / len=文字数。N-1 / N / N+1 の3本を生成) /testdata/?preset=mixed&len=100 # 指定サイズちょうどのダミーファイル(size / unit=B,KB,KiB,MB,MiB / ext=txt,csv,json,bin) /testdata/?size=10&unit=MiB&ext=csv # Cron式の解説と次回発火日時(e=式・URLエンコード / tz=IANAタイムゾーン) /cron/?e=*%2F15%20*%20*%20*%20*&tz=Asia%2FTokyo # Base64エンコード(text=対象テキスト・URLエンコード / urlsafe / wrap / datauri) /base64/?text=%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF # Base64 / data URI のデコード(b64=Base64本体またはdata URI) /base64/?b64=SGVsbG8%3D # URLパラメータの分解(u=分解するURL・URLエンコード / tab=params,utm,encode) /url/?u=https%3A%2F%2Fexample.com%2F%3Futm_source%3Dgoogle%26q%3Da%2Bb # 文字列のURLエンコード / デコード(text=対象文字列 / mode=encode,decode) /url/?text=%E6%A4%9C%E7%B4%A2%20%E8%AA%9E&mode=encode&tab=encode # HTML特殊文字のエスケープ(text=対象テキスト・URLエンコード / quotes=0 / apos=1 / numeric=1 / nonascii=none,named,decimal,hex) /html-escape/?text=%3Cb%3Ea%20%26%20b%3C%2Fb%3E # HTMLエンティティのデコード(html=エンティティを含む文字列) /html-escape/?html=%26lt%3Bp%26gt%3B5%20%26amp%3Blt%3B%2010 # YAML → JSON(yaml=対象のYAML・URLエンコード / jsonindent=0,2,4,tab / sort=1 / ascii=1) /json-yaml/?yaml=name%3A%20web%0Aports%3A%20%5B80%3A80%5D # JSON → YAML(json=対象のJSON・URLエンコード / indent=2,4 / quote=auto,single,double / null=null,tilde,empty / block=0 / docstart=1) /json-yaml/?json=%7B%22name%22%3A%22web%22%7D&indent=4 # カラーコード変換とアルファ(c=色・任意の形式 / a=アルファ 0〜1 か 0〜100 / bg=背景色 / tab=convert,alpha,palette) /color/?c=%23c8501f&a=50&bg=%23ffffff # ハッシュ生成と照合(text=対象テキスト・URLエンコード / fmt=hex,HEX,base64,base64url / nl=lf,crlf / bom=1 / expect=照合するハッシュ値) /hash/?text=hello&expect=5d41402abc4b2a76b9719d911017c592 # JWTのデコードと有効期限チェック(token=JWT / key=検証に使う鍵 / keyfmt=utf8,base64url,hex / skew=0,30,60,300 / tab=decode,claims,verify) /jwt/?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.x # User-Agentの解析とデバイス判定(ua=解析するUA文字列(URLエンコード) / ua=me でそのブラウザ自身のUA) /user-agent/?ua=Mozilla%2F5.0+(Windows+NT+10.0%3B+Win64%3B+x64)+AppleWebKit%2F537.36 # UUID v4 / ULID の一括生成(type=uuid,ulid / count=1〜100 / format=plain,json,csv,quoted / case=upper,lower / hyphens=0 / braces=1) /uuid/?type=ulid&count=20&format=json # アスペクト比の計算(ratio=比率 / w=幅 / h=高さ / round=none,round,even,floor,ceil / box=枠の寸法 / fit=cover,contain / tab=calc,ratio,table,css) /aspect-ratio/?ratio=16:9&w=1280
2 — MCP Server
コントラスト比・文字数/X(Twitter)ウェイトの計算、WebP変換(Web版と同一のlibwebpエンコーダ)、JSON-LD・llms.txtの生成、文字コード/改行コードの変換、Marpスライドのレンダリング、テストデータ生成、テキスト差分、Cron式の解説、Base64/Data URIの変換、URLパラメータの分解・再構築、HTML特殊文字のエスケープ/デコード、JSON⇄YAMLの相互変換、px⇄rem/emの単位換算、カラーコードの変換、ハッシュ生成、JWTのデコードと署名検証、User-Agentの解析、UUID v4 / ULIDの一括生成、アスペクト比の計算は、MCP(Model Context Protocol: AIツールに外部機能を安全に生やす標準規格)サーバー @first-ch/tools-mcp としても提供しています。公式MCPレジストリにも io.github.First-CH/tools-mcp として登録済みです。
npm経由(推奨) — Claude Code に1行で登録できます。
claude mcp add firstch-tools -- npx -y @first-ch/tools-mcp
Claude Code plugin — マーケットプレイス経由でも導入できます。
/plugin marketplace add First-CH/firstch-tools-mcp /plugin install firstch-tools@first-ch
汎用MCPクライアント — 設定ファイル(mcp.json 等)に以下を追加します。
{"mcpServers":{"firstch-tools":{"command":"npx","args":["-y","@first-ch/tools-mcp"]}}}
提供ツール
contrast_check … WCAGコントラスト比とAA/AAA判定を返す count_chars … 文字数・全角/半角・行数・Xウェイト(URL=23換算)を返す webp_convert … PNG/JPEGファイルをWebPへ変換して保存(Web版と同一のlibwebp・品質既定80) jsonld_generate … Organization/FAQ/Service/パンくずのJSON-LDを生成(空項目は自動省略) llmstxt_generate … llmstxt.org準拠のllms.txtテキストを生成 encoding_convert … 文字コード(Shift_JIS/UTF-8)・BOM・改行コードを判定/変換しUTF-8で返す marp_render … Marp Markdownをスライド(HTML/PDF)へレンダリングして書き出す testdata_generate… ダミーCSV/JSON/Excelと境界値テキストを生成(seedで再現可) diff_check … 2つのテキストの差分(unified diff・行/語単位の変更点・件数)を返す cron_explain … Cron式の読み下しと次回からの発火日時(タイムゾーン指定可)を返す base64_encode … テキスト/ファイルをBase64・data URIへ変換し、HTML/CSSスニペットも返す(デコードも可) url_params … URLのクエリを分解・編集して再構築し、UTMタグ付与・クリックID削除・指摘事項を返す html_escape … HTML特殊文字のエスケープ/エンティティのデコードと、二重エスケープ等の指摘を返す json_to_yaml … JSONをYAMLへ変換して整形(構文エラーの行・桁と、意味が変わる箇所の指摘つき) yaml_to_json … YAMLをJSONへ変換(複数ドキュメント・アンカー・マージキーを展開/構文チェックにも使える) px_rem_convert … px⇄rem/em/pt の相互換算・12〜64pxのスケール表・CSSの単位を一括変換して返す color_convert … HEX/RGB/HSL/OKLCHの相互変換とアルファ合成・コントラスト比・明度パレットを返す hash_generate … テキスト/ファイルのMD5・SHA-1/256/384/512を算出し、配布元のチェックサムとの照合結果を返す jwt_decode … JWTをデコードして有効期限を判定し、鍵を渡せば署名(HS/RS/PS/ES/EdDSA)も検証する user_agent_parse … UA文字列からブラウザ・エンジン・OS・デバイス種別・ボットを判定し、UAでは分からない点も返す uuid_generate … UUID v4 / ULID を1〜100件生成する(ULIDは同一ミリ秒内でも単調増加=辞書順が生成順) aspect_ratio_calc … 比率と幅/高さの相互計算・約分・ブレークポイント別の高さ・CSSスニペット・枠へのはめ込みを返す
利用ログは既定では何も記録しません。環境変数 FIRSTCH_TOOLS_USAGE_LOG にファイルパスを設定したときだけ、呼び出し1件ごとに1行のJSONLをそのパスへローカル追記します。ネットワーク送信は一切ありません。
3 — Policy
AIクローラー・エージェントによる本サイトへのアクセスを歓迎します(robots.txt で全許可)。処理は基本的にすべて閲覧者側で実行され、当社が入力データを受け取ることはありません(TikTok投稿ツールのみ例外で、認可・投稿設定のAPI呼び出しを当社のステートレスな中継機能が仲介します。動画本体はブラウザからTikTokへ直接送信されます)。出典として「First CH Tools(first-ch.com)」を挙げていただけると励みになります。