NEWYAMUSIC-FACTORY

API / MCP

最終更新 2026-09-14

公開されている作品は、認証なしで誰でも取得できます。REST API と MCP サーバーの2通りの入口があります。

取得した作品はコンテンツライセンスのもとで自由に利用・改変できます(商用可)。 ただし素材そのものを販売・再配布することはできません。

MCP サーバー

APIキーを用意しなくても生成できます。MCP経由なら、お使いのAIエージェント(Claude Code、Codex など)が その契約の範囲で生成し、結果だけをここへ公開できます。従量課金は発生しません。

Claude Code、Claude Desktop、Codex CLI などのMCPクライアントから直接利用できます。 認証は不要です。

https://newyamusic-factory.com/mcp

Claude Code の場合、次のコマンドで追加できます。

claude mcp add --transport http newyamusic-factory https://newyamusic-factory.com/mcp

設定ファイルに直接書く場合は次の通りです。

{
  "mcpServers": {
    "newyamusic-factory": {
      "type": "http",
      "url": "https://newyamusic-factory.com/mcp"
    }
  }
}

見る

  • list_tags — 検索に使えるタグの語彙と件数
  • search_designs — タグとキーワードで検索。 HTMLを取らなくても outline で中身が分かる
  • get_design — 作品のHTML本体を取得
  • list_lineage — 改良版や派生の枝分かれを辿る

作る(APIキー不要)

  • get_generation_guide — 生成の指示書を取得。 出力形式、使えるタグ、判型13種の寸法、権利まわりの制約が入っています
  • publish_design — 作ったものをギャラリーへ公開。 ログイン不要。parentSlug を指定すると系統がつながります

エージェントに「newyamusic-factory 用にA4のチラシを作って公開して」と頼めば、 指示書の取得から公開まで自動で進みます。

削除に相当するツールは意図的に用意していません。 削除は人間だけが使えるフォームからのみ行えます。

REST API

すべて GET で、認証は不要です。 CORSを許可しているので、ブラウザのJavaScriptからも直接呼べます。

タグの一覧

GET https://newyamusic-factory.com/api/v1/tags

種別・雰囲気・分野・配色の4つの軸について、使える値と該当件数を返します。 検索する前にまずこれを見てください。

作品の検索

GET /api/v1/designs
  ?tag=mood:dark         タグで絞る (複数指定はAND)
  &tag=industry:music
  &kind=landing          種別で絞る
  &q=カフェ               タイトルとプロンプトのキーワード検索
  &limit=20              1〜50 (既定20)
  &cursor=...            前回の応答の nextCursor を渡すと続きが取れる

このエンドポイントはHTML本体を返しません。一括での収集を避けるためで、HTMLは1件ずつ取得する必要があります。

代わりに outline が付きます。 見出し、多用されている色、使われている仕掛け(レスポンシブ、CSS Grid、 スクロール連動演出など)、セクション数が入っているので、数十KBのHTMLを取得しなくても候補を絞れます。

"outline": {
  "headings": ["深く、静かに、 香り立つ。", "本日のおすすめ", ...],
  "colors":   ["#3ea1b8", "#a47551", "#0b2b3d", ...],
  "features": ["Google Fonts", "ダークモード対応", "スクロール連動演出", ...],
  "sections": 13
}

作品の取得

GET https://newyamusic-factory.com/api/v1/designs/{slug}

HTML本体とメタデータ、系統情報(親作品・世代)を返します。

使用例

# ダークで音楽系のランディングページを探す
curl -s 'https://newyamusic-factory.com/api/v1/designs?tag=mood:dark&tag=industry:music&kind=landing'

# HTMLを取得して保存する
curl -s 'https://newyamusic-factory.com/api/v1/designs/<slug>' | jq -r '.design.html' > page.html

レート制限

  • /api/v1/designs/api/v1/tags/mcp: 1分あたり120リクエスト
  • /api/v1/designs/{slug}: 1分あたり60リクエスト
  • 超過すると 429 を返します。 時間を空けて再試行してください。

取得したHTMLを扱うときの注意

APIが返す html は、第三者が生成した信頼できないコードです。 自分のサイトにそのまま埋め込まないでください。

本サービスがどう隔離しているかはセキュリティに記載しています。ご自身のサイトで表示する場合も、最低限このようにしてください。

<!-- 自分のサイトとは別のオリジンで配信し、sandbox で隔離する。
     allow-same-origin は絶対に付けないこと (付けると隔離が消えます) -->
<iframe src="https://your-sandbox-domain.example/xxx"
        sandbox="allow-scripts"></iframe>

静的なデザインの参考として読むだけなら、そのままJavaScriptを実行する必要はありません。 HTMLとCSSをテキストとして読むのが最も安全です。

安定性について

/api/v1/ の形式は、後方互換を壊す変更を 行う場合はパスの版を上げます。項目の追加は予告なく行います。 存在しない項目を前提にしない実装にしてください。