Product Admin by Nova (CIVAI)

I manage your Nova products, create/update/delete, payment & logistics config, icons, webhook secre…

使うべきか

品質と安全性

A
説明の品質
88%
スキーマの完全性
74%
命名の品質
95%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(6)

  • LOWTool 'get_webhook_secret' description lacks action verbget_webhook_secret 内
  • LOWTool 'rotate_webhook_secret' description lacks action verbrotate_webhook_secret 内
  • LOWTool 'assign_bank_credit' description lacks action verbassign_bank_credit 内
  • LOWTool 'dismiss_bank_credit' description lacks action verbdismiss_bank_credit 内
  • LOWTool 'list_audience_resolver_projects' name length outside 3-30 rangelist_audience_resolver_projects 内
  • LOWTool 'list_audience_resolver_calendars' name length outside 3-30 rangelist_audience_resolver_calendars 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~2,653トークン数(ツール定義)
~822 B一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 2.07%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "product-admin": {
      "url": "https://nova.civai.co/mcp/agents/product-admin"
    }
  }
}

リモートエンドポイント

https://nova.civai.co/mcp/agents/product-adminstreamable-http

できること

ツール一覧

ツール(30)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢list_products

List all products for the signed-in owner.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🟢get_product(product_id)

Return full product detail including payment/logistics/mobile-push config.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id"
  ]
}
🟡list_twitter_accounts

List connected X/Twitter accounts available to use as an x_post publish destination.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
⚪connect_audience_resolver(product_id, publisher_token)

Connect an Audience Resolver publisher token to this product, so it can push content to an AR project's calendar. The token must be minted by hand from the Audience Resolver dashboard first — there's no way to generate one here.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "publisher_token": {
      "type": "string"
    }
  },
  "required": [
    "product_id",
    "publisher_token"
  ]
}
🟢list_audience_resolver_projects(product_id)

List the Audience Resolver projects reachable by this product's connected publisher token.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id"
  ]
}
🟢list_audience_resolver_calendars(product_id, project_id)

List the content calendars within an Audience Resolver project.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "project_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id",
    "project_id"
  ]
}
🟡create_product(id, name, site_url, default_country, content_enabled, ...)

Create a new product.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Lowercase product id (letters, digits, hyphen, underscore)."
    },
    "name": {
      "type": "string"
    },
    "site_url": {
      "type": "string"
    },
    "default_country": {
      "type": "string"
    },
    "content_enabled": {
      "type": "boolean",
      "description": "Enable/disable the content pipeline for this product."
    },
    "pipeline_type": {
      "type": "string",
      "enum": [
        "seo_intent",
        "reward_intent"
      ]
    },
    "opportunity_system": {
      "type": "string",
      "description": "System context for generation prompts: what this product is, in the product's own voice."
    },
    "opportunity_rules": {
      "type": "string",
      "description": "What counts as a worthwhile trend/opportunity for this product — used when picking seeds and expanding opportunities."
    },
    "article_intent_rules": {
      "type": "string",
      "description": "Structure/intent guidance for generated articles."
    },
    "intent_creative_direction": {
      "type": "string",
      "description": "Free-form style/voice guidance for generated content."
    },
    "seed_picker_rules": {
      "type": "string",
      "description": "Guidance for the seed-selection step specifically."
    },
    "content_posting_frequency": {
      "type": "string",
      "enum": [
        "daily",
        "3x_week",
        "weekly",
        "off"
      ],
      "description": "How often this product's connected X account posts autonomous trend tweets. Defaults to 3x_week (Mon/Wed/Fri)."
    },
    "publish_destinations": {
      "type": "array",
      "description": "Where generated content publishes to. Each entry is one of {type: 'webhook', webhook_url, webhook_secret?}, {type: 'x_post', twitter_account_id}, or {type: 'ar_calendar', audience_resolver_project_id, audience_resolver_calendar_id} (requires audience_resolver_publisher_token to be connected first).",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "webhook",
              "x_post",
              "ar_calendar"
            ]
          },
          "webhook_url": {
            "type": "string"
          },
          "webhook_secret": {
            "type": "string"
          },
          "twitter_account_id": {
            "type": "string"
          },
          "audience_resolver_project_id": {
            "type": "string"
          },
          "audience_resolver_calendar_id": {
            "type": "string"
          }
        },
        "required": [
          "type"
        ]
      }
    },
    "audience_resolver_publisher_token": {
      "type": "string",
      "description": "Publisher JWT minted from the Audience Resolver dashboard, connecting this product to an AR account so content can be pushed to its calendars. Set via connect_audience_resolver, not directly."
    },
    "payment_config": {
      "type": "object"
    },
    "logistics_config": {
      "type": "object"
    },
    "mobile_push": {
      "type": "object"
    }
  },
  "required": [
    "id",
    "name",
    "site_url"
  ]
}
🟡update_product(id, name, site_url, default_country, content_enabled, ...)

Update product fields (partial patch — only send fields to change).

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Lowercase product id (letters, digits, hyphen, underscore)."
    },
    "name": {
      "type": "string"
    },
    "site_url": {
      "type": "string"
    },
    "default_country": {
      "type": "string"
    },
    "content_enabled": {
      "type": "boolean",
      "description": "Enable/disable the content pipeline for this product."
    },
    "pipeline_type": {
      "type": "string",
      "enum": [
        "seo_intent",
        "reward_intent"
      ]
    },
    "opportunity_system": {
      "type": "string",
      "description": "System context for generation prompts: what this product is, in the product's own voice."
    },
    "opportunity_rules": {
      "type": "string",
      "description": "What counts as a worthwhile trend/opportunity for this product — used when picking seeds and expanding opportunities."
    },
    "article_intent_rules": {
      "type": "string",
      "description": "Structure/intent guidance for generated articles."
    },
    "intent_creative_direction": {
      "type": "string",
      "description": "Free-form style/voice guidance for generated content."
    },
    "seed_picker_rules": {
      "type": "string",
      "description": "Guidance for the seed-selection step specifically."
    },
    "content_posting_frequency": {
      "type": "string",
      "enum": [
        "daily",
        "3x_week",
        "weekly",
        "off"
      ],
      "description": "How often this product's connected X account posts autonomous trend tweets. Defaults to 3x_week (Mon/Wed/Fri)."
    },
    "publish_destinations": {
      "type": "array",
      "description": "Where generated content publishes to. Each entry is one of {type: 'webhook', webhook_url, webhook_secret?}, {type: 'x_post', twitter_account_id}, or {type: 'ar_calendar', audience_resolver_project_id, audience_resolver_calendar_id} (requires audience_resolver_publisher_token to be connected first).",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "webhook",
              "x_post",
              "ar_calendar"
            ]
          },
          "webhook_url": {
            "type": "string"
          },
          "webhook_secret": {
            "type": "string"
          },
          "twitter_account_id": {
            "type": "string"
          },
          "audience_resolver_project_id": {
            "type": "string"
          },
          "audience_resolver_calendar_id": {
            "type": "string"
          }
        },
        "required": [
          "type"
        ]
      }
    },
    "audience_resolver_publisher_token": {
      "type": "string",
      "description": "Publisher JWT minted from the Audience Resolver dashboard, connecting this product to an AR account so content can be pushed to its calendars. Set via connect_audience_resolver, not directly."
    },
    "payment_config": {
      "type": "object"
    },
    "logistics_config": {
      "type": "object"
    },
    "mobile_push": {
      "type": "object"
    }
  },
  "required": [
    "product_id"
  ]
}
🔴delete_product(product_id)

Permanently delete a product.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id"
  ]
}
🟡set_payment_config(product_id, payment_config)

Set/merge the product's payment_config (enable payments, catalog_mode, skus, discount, custom_fields, webhook URLs, return URLs, sandbox).

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "payment_config": {
      "type": "object"
    }
  },
  "required": [
    "product_id",
    "payment_config"
  ]
}
🟡set_logistics_config(product_id, logistics_config)

Set the product's logistics_config.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "logistics_config": {
      "type": "object"
    }
  },
  "required": [
    "product_id",
    "logistics_config"
  ]
}
🟡set_mobile_push_config(product_id, mobile_push)

Set the product's mobile_push config.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "mobile_push": {
      "type": "object"
    }
  },
  "required": [
    "product_id",
    "mobile_push"
  ]
}
🟡upload_product_icon(product_id, image_base64, content_type)

Upload a product icon/logo (base64-encoded JPEG/PNG/WebP, max 2MB).

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "image_base64": {
      "type": "string"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "image/jpeg",
        "image/jpg",
        "image/png",
        "image/webp"
      ]
    }
  },
  "required": [
    "product_id",
    "image_base64",
    "content_type"
  ]
}
🔴remove_product_icon(product_id)

Remove the product's icon/logo.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id"
  ]
}
🟢get_webhook_secret(product_id)

Return the product's fulfillment webhook signing secret.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id"
  ]
}
⚪rotate_webhook_secret(product_id)

Rotate the product's fulfillment webhook signing secret.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id"
  ]
}
🟢get_onboarding_status(product_id)

Bank-transfer onboarding status (merchant bank, alert inbox, auto-approve).

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    }
  }
}
🟡save_merchant_bank(bank_name, account_name, account_number, auto_approve_enabled, product_id, ...)

Save the merchant bank account used to receive bank-transfer payments.

入力スキーマ

{
  "type": "object",
  "properties": {
    "bank_name": {
      "type": "string"
    },
    "account_name": {
      "type": "string"
    },
    "account_number": {
      "type": "string",
      "description": "10-digit NUBAN account number."
    },
    "auto_approve_enabled": {
      "type": "boolean"
    },
    "product_id": {
      "type": "string"
    },
    "alert_source_emails": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "bank_name",
    "account_name",
    "account_number"
  ]
}
🟡save_alert_sources(alert_source_emails)

Save the allowlist of bank-alert source email addresses.

入力スキーマ

{
  "type": "object",
  "properties": {
    "alert_source_emails": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "alert_source_emails"
  ]
}
⚪rotate_inbox

Rotate the bank-alert forwarding inbox address.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🟢list_bank_alert_guides

List supported banks and their alert-forwarding setup guides.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🟢test_parse_bank_alert(from_addr, subject, text, html)

Test-parse a bank alert email (debug the alert parser).

入力スキーマ

{
  "type": "object",
  "properties": {
    "from_addr": {
      "type": "string"
    },
    "subject": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "html": {
      "type": "string"
    }
  },
  "required": [
    "from_addr",
    "text"
  ]
}
🟢list_deposits(product_id, status, limit, offset)

List payment deposits for a product.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "approved",
        "rejected",
        "expired"
      ]
    },
    "limit": {
      "type": "integer"
    },
    "offset": {
      "type": "integer"
    }
  },
  "required": [
    "product_id"
  ]
}
⚪approve_deposit(product_id, deposit_id)

Approve a pending/expired deposit and run fulfillment.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "deposit_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id",
    "deposit_id"
  ]
}
⚪reject_deposit(product_id, deposit_id, reason)

Reject a deposit.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "deposit_id": {
      "type": "string"
    },
    "reason": {
      "type": "string"
    }
  },
  "required": [
    "product_id",
    "deposit_id"
  ]
}
🟡set_deposit_refund_status(product_id, deposit_id, refund_status, note)

Set the refund_status on an approved deposit.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "deposit_id": {
      "type": "string"
    },
    "refund_status": {
      "type": "string"
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "product_id",
    "deposit_id",
    "refund_status"
  ]
}
⚪resend_deposit_fulfillment(product_id, deposit_id)

Resend/retry fulfillment for an approved deposit.

入力スキーマ

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string"
    },
    "deposit_id": {
      "type": "string"
    }
  },
  "required": [
    "product_id",
    "deposit_id"
  ]
}
🟢list_bank_credits(status)

List unmatched/review bank credits for reconciliation.

入力スキーマ

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "unmatched",
        "review",
        "matched",
        "dismissed"
      ]
    }
  }
}
⚪assign_bank_credit(credit_id, deposit_id)

Assign an unmatched bank credit to a pending deposit.

入力スキーマ

{
  "type": "object",
  "properties": {
    "credit_id": {
      "type": "string"
    },
    "deposit_id": {
      "type": "string"
    }
  },
  "required": [
    "credit_id",
    "deposit_id"
  ]
}
⚪dismiss_bank_credit(credit_id)

Dismiss a bank credit as not a sale.

入力スキーマ

{
  "type": "object",
  "properties": {
    "credit_id": {
      "type": "string"
    }
  },
  "required": [
    "credit_id"
  ]
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 30 件