{"name":"io.github.luno-cms/mcp","slug":"luno-cms-mcp","title":null,"description":"LUNO — AI Backend Platform. Build, operate, and govern production backends with AI agents.","url":"https://mcp.market/server/luno-cms-mcp","rating":null,"grade":"B","score":82,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":30,"stars":0,"forks":0,"downloads_week":851,"last_push_at":"2026-09-12T13:27:24.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/luno-cms/mcp","website":null,"version":"0.2.50","remotes":[],"packages":[{"registryType":"npm","identifier":"@luno-cms/mcp","version":"0.2.50","transport":{"type":"stdio"},"environmentVariables":[{"description":"LUNO admin API base URL, e.g. https://api.luno.rest/admin","isRequired":true,"format":"string","name":"LUNO_API_URL"},{"description":"Required secret. Agent API key (sk-agent-…) from LUNO Console → MCP / API / Hook → API / MCP","isRequired":true,"format":"string","isSecret":true,"name":"LUNO_AGENT_KEY"}]}],"tools":[{"name":"add_console_login_ip_allowlist","description":"管理画面ログイン IP 許可ルールを追加（Business+・tenant スコープ）。必須: projectId（プロジェクト UUID）, cidr。","write_action":false,"price_micros":0,"input_schema":null},{"name":"apply_builtin_form_template","description":"Builtin フォームテンプレから新規 Form Set を作成（schema/full）。必須: slug, name。テンプレ指定は templateSlug（list_builtin_form_templates の slug・推奨。purposeLabels で選ぶ）または templateId（DB テンプレ UUID）のどちらか必須。任意: description, dryRun, idempotencyKey。create のみ（既存 slug の migrate/update は apply_form_blueprint）。お問い合わせには使わない。返却 id を formSetId に使う。詳細: agent.builtin-form-templates。","write_action":false,"price_micros":0,"input_schema":null},{"name":"apply_form_blueprint","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"apply_master_blueprint","description":"Master Blueprint を一括 upsert（schema/full）。必須: entities。任意: dryRun, publish（true でサイトに反映し公開マスタ API に載る。省略時は未反映）。各 record の並びは sort_order / sortOrder。任意 color は #RRGGBB（省略は既存色を維持、null で消す）。エージェントキーでは update_master_record 不可のためここで正しい sort_order / color を渡す。詳細: agent.master-blueprint-mcp, luno://content/schema-guide","write_action":false,"price_micros":0,"input_schema":null},{"name":"archive_form_set","description":"Form Set をアーカイブ（soft-delete / deleted_at。schema/full）。hard delete ではない。必須: formSetId。エージェントは先に dryRun: true で slug / entryCount / confirmToken / restore を取得し、本実行で confirmToken を渡す（トークンなしは 400）。型変更のために使わない。復元は人間の JWT のみ（POST /admin/v1/form-sets/{id}/restore。エージェントは 403 restore_requires_human_jwt）。返却の restore に consolePath / restoreApi / helpId / constraints（ウィジェットは戻らない）。人間の Console DELETE は従来どおり。Co","write_action":false,"price_micros":0,"input_schema":null},{"name":"ask_admin_help","description":"LUNO の使い方を自然言語で質問（RAG）。必須: question。任意: locale。snapshot / 公開 API / Blueprint は category agent を参照。502 / truncated はリトライ可。繰り返すなら search_admin_help / get_admin_help_article。本ツールはホスト LLM 依存で不安定なことがある。","write_action":false,"price_micros":0,"input_schema":null},{"name":"bulk_create_entries","description":"Form Set 内にエントリを最大 50 件一括作成（slug のみ。本文は save_revision）。必須: formSetId, items[{ slug }]。任意: idempotencyKey（バッチ全体の冪等リプレイ）。各 item は独立に成功/失敗（slug 衝突は当該 item のみ failed）。N×create_entry の代わりに 1 ツールコール。削除の一括は不可（agent.mcp-security-permissions）。","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_contact_form","description":"お問い合わせ / contact / inquiry 用。Contact Form を新規作成（schema/full。削除は不可）。Form Set テンプレや apply_form_blueprint は使わない。必須: slug, name, recipient_email（ユーザーから聞く）。任意: fields, autoreply_*, email_signature, dryRun, idempotencyKey。fields は Form Set の fieldKey 形ではない。各要素は { key, type, label:{ja,en}, required }。必ず先に dryRun: true（作成せず status/wouldSucceed）。slug 衝突は dryRun なら unsupported + existing、execute は 409。同じ sl","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_entry","description":"エントリを新規作成（本文は含めない。続けて save_revision → get_pub_preview_url → publish_revision）。必須: formSetId（UUID）, slug（エントリの URL スラッグ）。任意: idempotencyKey（同一キー再送で同じ id）。返却 id を entryId に使う。","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_master_record","description":"マスタレコードを新規作成（content 可）。必須: entityId, label（string または locale map）。任意: value, sortOrder, parentRecordId, data, color（#RRGGBB）。並び・色の一括投入は apply_master_blueprint 推奨。","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_console_login_ip_allowlist","description":"管理画面ログイン IP 許可ルールを削除（Business+）。必須: ruleId（list_console_login_ip_allowlists の id）。","write_action":true,"price_micros":0,"input_schema":null},{"name":"end_agent_run","description":"Agent Run を終了（schema/full）。必須: runId, status（completed / failed / cancelled）。start_agent_run の agentRun.id を渡す。メトリクス（auditLogCount 等）を返す。","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_admin_help_article","description":"管理画面ヘルプ記事 1 件の本文。必須: articleId（search_admin_help の id。例: content.publish-workflow, agent.publish-revision）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_agent_run","description":"Agent Run の状態・メトリクスを取得（schema/full）。必須: runId。自分が開始した run のみ（他キーは 403）。","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_change_plan","description":"Change Plan の状態を取得（schema/full）。必須: planId（propose_change の changePlan.id）。自分が提案した plan のみ。承認・却下・実行は Human Console のみ。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_entry","description":"エントリ 1 件。必須: formSetId, entryId（いずれも UUID）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_form_set_schema","description":"1 つの Form Set のスキーマ + save_revision 用 snapshotShape。select/radio/multiselect には masterEntityKey・sampleValues・公開 records URL を付与。保存前に必ず確認する。必須: formSetId（UUID。Form Set の slug ではない。list_form_sets / apply_* の id）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_funnel_status","description":"MCP Private Beta 計測ファネルを再構成。任意: funnelId（省略時は当セッション / LUNO_FUNNEL_ID）。詳細: agent.measurement-funnel","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_login_appearance","description":"管理画面ログインの見た目設定を取得（認証要・引数なし）。背景=Standard+、WL=Business+。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_login_branding","description":"管理画面ログイン用ブランド取得（認証不要）。任意: projectId（省略時はエージェントキーのプロジェクト）。branding_tier / login_background / hide_* を返す。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_master_entity","description":"マスタエンティティ 1 件。必須: entityId（UUID。list_master_entities の id）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_mcp_runtime","description":"この MCP パッケージの実行時情報（引数なし・LUNO API は呼ばない）。mcpVersion / toolCount / contract（tool→Admin API）。ツールが載っていてもホスト API が未デプロイのことがある。404 なら API が古い。代替 mutation を発明しない。詳細: luno://mcp/runtime。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_project_content_locales","description":"サイトのコンテンツ多言語設定を取得（引数なし）。有効/無効・content_locales・content_default_locale。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_project_overview","description":"既存プロジェクト再開時の最初の一手。intentCapabilities（ユーザー意図→プロダクト。お問い合わせは create_contact_form。お知らせ/ブログは purposeLabels で templateSlug）・nextMoves・hints.intent・Form Sets・Contact Forms・Masters・quota・locales・公開 API ベースを返す。空プロジェクトでも Contact を Form Set テンプレに落とさない。権限不足は available:false。MCP パッケージ版と API 契約は get_mcp_runtime（引数なし・LUNO 非呼び出し。ツール一覧 ≠ API デプロイ済み）。詳細: agent.discover。引数なし。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_pub_preview_url","description":"下書き/承認待ちリビジョンのプレビュー URL を取得（POST pub-preview-url）。必須: formSetId, entryId, revisionRowId（= save_revision の id）。任意: target（external=外部サイトテンプレ優先・既定, luno=LUNO ホスト）。返却 url を人間がブラウザで開いて確認。続けて publish_revision（can_publish=false なら pendingHumanApproval で人間承認）。未公開は Standard 以上プラン。詳細: luno://publishing-guide / agent.publish-revision。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_public_api_info","description":"エージェントキーのプロジェクト向け公開 API ベース URL を返す。引数なし。ローカルでは /public/p/{projectId}/v1 を使う（Host ベース /public/v1 は DEFAULT_TENANT_ID に落ちる）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_tenant_schema","description":"操作中プロジェクトのフォームセット・フィールド定義を一括取得する。引数なし。","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_builtin_form_templates","description":"LUNO 公式 Form Set スターター一覧（引数なし）。purposeLabels（ja/en。お知らせ・ブログ等）で用途をマッチし、返却 slug を apply_builtin_form_template の templateSlug に使う。slug を暗記しない。お問い合わせはここに無い。create_contact_form / get_project_overview.intentCapabilities を使う。詳細: agent.builtin-form-templates","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_console_login_ip_allowlists","description":"管理画面ログイン IP 許可リスト一覧（Business+・引数なし）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_entries","description":"Form Set 内のエントリ一覧。必須: formSetId（UUID）。返却 item.id を entryId に使う。","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_form_sets","description":"Form Set 一覧を取得する。引数なし。各 item の id（UUID）を他ツールの formSetId に使う（slug ではない）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_master_entities","description":"マスタエンティティ一覧（引数なし。key / hierarchical / record_count 含む）。item.id を entityId に使う。","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_master_records","description":"マスタレコード一覧（label は locale map。階層時は parent_record_id）。必須: entityId。任意: q（検索）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_media","description":"アップロード済みメディア（アセット）一覧。任意: limit（1–100、既定 30）。","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_revisions","description":"エントリのリビジョン一覧。必須: formSetId, entryId。各 item の id / revision を publish_revision に渡す。","write_action":false,"price_micros":0,"input_schema":null},{"name":"migrate_field_to_master_reference","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"patch_project_content_locales","description":"サイトのコンテンツ多言語設定を更新（tenant_admin JWT のみ。エージェントキー不可）。任意: contentLocalesEnabled, contentDefaultLocale, contentLocales。","write_action":true,"price_micros":0,"input_schema":null},{"name":"propose_change","description":"複数ステップの構造変更を Change Plan として提案（schema/full）。必須: goal, risk, steps（各 step に dry_run + mutation.body）。本ツールは mutations を実行しない。Human が Console で承認するまで pending_approval。先に apply_* / migrate_field_to_master_reference / rename_master_record_slug を dryRun: true で呼び、返却を steps[].dry_run.raw に格納し、本実行用 body を mutation.body に入れる。action は apply_form_blueprint / apply_builtin_form_template / apply_master_bluepri","write_action":false,"price_micros":0,"input_schema":null},{"name":"publish_revision","description":"リビジョンを公開（1 回で draft→submit→approve。サーバー /publish が中間 revision +1 を吸収）。必須: formSetId, entryId, revisionRowId（= save_revision の id）, revision（= save_revision の revision。save 直後の番号で可）。任意: publishAt（予約公開 ISO8601）。can_publish=false のキーは submit までで止まり pendingHumanApproval: true を返す（人間が Console で承認）。詳細: agent.publish-revision / agent.mcp-security-permissions","write_action":true,"price_micros":0,"input_schema":null},{"name":"rename_master_record_slug","description":"Master Record の公開 identifier（slug。互換キー value）をリネームするプレビュー（schema/full）。必須: masterEntityKey, dryRun（true のみ）, slug または value, recordId または currentSlug/currentValue。このツールは書き込まない。dryRun: false / 省略は拒否し API を呼ばない。実行は propose_change(action: rename_master_record_slug)。update_master_record の value PATCH は使わない（snapshot が切れ、エージェントキーは 401）。承認後は master_records.value と参照 Field の snapshot を同時に書き換える。execute（Cha","write_action":false,"price_micros":0,"input_schema":null},{"name":"save_revision","description":"エントリ本文を新しい下書きリビジョンとして保存。必須: formSetId, entryId, snapshot。snapshot は { [formKey]: { [fieldKey]: value } }（フォームキー配下にネスト）。フラットな field_key トップレベルは 400。任意: idempotencyKey。返却の id → publish_revision の revisionRowId、revision → publish_revision の revision。形は get_form_set_schema または luno://content/schema-guide。","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_admin_help","description":"ヘルプ KB 検索。必須: q。任意: locale（ja|en）, limit（既定 20）。category agent（snapshot / Form Blueprint / 公開 API / publish_revision）もヒット。","write_action":false,"price_micros":0,"input_schema":null},{"name":"start_agent_run","description":"エージェントタスクの Run を開始（schema/full）。必須: goal。任意: clientLabel（cursor / claude-code / mcp 等）。返却 agentRun.id を以降のツール呼び出しに X-Agent-Run-Id として自動付与（本 MCP セッション内）。詳細: settings.agent-activity / agent.mcp-security-permissions","write_action":true,"price_micros":0,"input_schema":null},{"name":"submit_entry_for_review","description":"指定リビジョンを承認申請する（公開まで一括したい場合は publish_revision を優先）。必須: formSetId, entryId, revisionRowId（= save_revision の id）, revision（= save_revision の revision）。","write_action":true,"price_micros":0,"input_schema":null},{"name":"translate_entry_locales","description":"text/textarea/tiptap をソース言語から他ロケールへ AI 翻訳（Standard+・AI チケット 1/回）。必須: sourceLocale, targetLocales（1–3）, fields（各 formKey/fieldKey/type/sourceText）。返却 items を snapshot にマージして save_revision。","write_action":false,"price_micros":0,"input_schema":null},{"name":"update_contact_form","description":"Contact Form を更新（PUT・schema/full。GET した全フィールドを body に含める）。必須: formId（Contact Form UUID）, slug, name, recipient_email, fields。任意: autoreply_*, email_signature。fields は { key, type, label:{ja,en}, required }[]（Form Set の fieldKey ではない）。詳細: agent.contact-form-mcp。","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_entry","description":"エントリの slug を更新。必須: formSetId, entryId, slug。","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_login_appearance","description":"管理画面ログインの見た目を更新。任意（1 つ以上推奨）: adminLoginBackground（cosmic|gradient|plain|none・Standard+）, adminLoginHideLunoLogo, adminLoginHidePoweredBy（Business+）。","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_master_record","description":"マスタレコードを更新。必須: entityId, recordId。任意: label, value, sortOrder, parentRecordId, data, color（#RRGGBB。null で消す）。**エージェント API キーでは不可**（401 — ユーザ JWT + 編集権限が必要）。identifier（slug / value）の変更は rename_master_record_slug → propose_change。並び替え・色の一括は apply_master_blueprint を使う。","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_master_tree","description":"階層マスタの親子・並び順を一括更新。必須: entityId, updates（全レコードを含める配列。各要素に id, parent_record_id, sort_order）。エージェントキーでは 403。","write_action":true,"price_micros":0,"input_schema":null},{"name":"upload_media","description":"メディアライブラリへ画像/ファイルをアップロード（POST /v1/media）。必須（いずれか一方）: sourceUrl / base64 / filePath（ローカルパス推奨）。任意: filename, mimeType, folderId。返却 id（UUID）を image / image_gallery に入れる（luno://content/schema-guide）。外部 URL を snapshot に直書きしない。stg/prod へローカル画像を上げるときは filePath（sourceUrl の 127.0.0.1 は届かない）。","write_action":true,"price_micros":0,"input_schema":null},{"name":"validate_master_blueprint","description":"Master Blueprint を検証（schema/full）。必須: entities（1 件以上の配列）。各 entity: key, name, records[{ value, label, sort_order }]。適用はしない。詳細: agent.master-blueprint-mcp, luno://content/schema-guide。","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":82,"grade":"B","scanned_at":"2026-09-19T21:08:24.826Z","report":{"scannerVersion":"0.1.8","scannedAt":"2026-09-19T21:08:24.786Z","components":{"code":{"score":25,"max":25,"notes":["79 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 7 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@luno-cms/mcp","version":"0.2.50","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-09-12T13:29:14.260Z","repositoryUrl":"git+https://github.com/luno-cms/mcp.git","weeklyDownloads":851}],"repo":{"found":true,"owner":"luno-cms","repo":"mcp","archived":false,"pushedAt":"2026-09-12T13:27:24Z","stars":0,"forks":0,"openIssues":2,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/282400233?v=4","ownerCreatedAt":"2026-05-06T23:23:41Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/282400233?v=4&s=128","source":"registry","width":128,"height":128},"presence":{"stars":0,"forks":0,"downloadsWeek":851,"license":"MIT","lastPushAt":"2026-09-12T13:27:24.000Z","score":30}}}},"grade_history":[],"reviews":[]}