{
  "catalog": "keyxe-demo-mcp-tools",
  "mode": "synthetic_demo",
  "note": "Read-only demonstration tools. They run in the browser simulator only; no hosted MCP server exists.",
  "tools": [
    {
      "name": "accounts_list",
      "title": "List connected accounts",
      "description": "Lists the fictional demo connections. In the demo, no real Amazon account is ever connected.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none. Future production: KEYXE login + organization scope.",
      "live_status": "Demo only — live Amazon connections await approval",
      "error_codes": [
        "INVALID_ARGUMENT"
      ],
      "example_arguments": {
        "kind": "all"
      },
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "kind": {
            "default": "all",
            "type": "string",
            "enum": [
              "all",
              "sp_api_seller",
              "ads_api_profile"
            ]
          }
        },
        "additionalProperties": false
      }
    },
    {
      "name": "datasets_search",
      "title": "Search datasets",
      "description": "Finds sample datasets by keyword and source category.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none.",
      "live_status": "Demo only",
      "error_codes": [
        "INVALID_ARGUMENT"
      ],
      "example_arguments": {
        "query": "acos",
        "source": "all"
      },
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "query": {
            "default": "",
            "type": "string",
            "maxLength": 100
          },
          "source": {
            "default": "all",
            "type": "string",
            "enum": [
              "all",
              "seller",
              "advertising",
              "inventory"
            ]
          }
        },
        "additionalProperties": false
      }
    },
    {
      "name": "dataset_schema_get",
      "title": "Get dataset schema",
      "description": "Returns column names, types and the permission a production equivalent would need.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none.",
      "live_status": "Demo only",
      "error_codes": [
        "INVALID_ARGUMENT"
      ],
      "example_arguments": {
        "dataset": "sample_ads_campaign_daily"
      },
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "dataset": {
            "type": "string",
            "enum": [
              "sample_seller_sales_daily",
              "sample_ads_campaign_daily",
              "sample_inventory_daily"
            ]
          }
        },
        "required": [
          "dataset"
        ],
        "additionalProperties": false
      }
    },
    {
      "name": "analytics_query",
      "title": "Run an analytics query",
      "description": "Runs a whitelisted aggregate query (no free-form SQL). Validates dataset, metrics, grouping, marketplace, date range and limit.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none. Future production: scoped read permission per dataset.",
      "live_status": "Demo only",
      "error_codes": [
        "INVALID_ARGUMENT",
        "UNSUPPORTED_METRIC",
        "UNSUPPORTED_GROUPING",
        "INVALID_DATE_RANGE"
      ],
      "example_arguments": {
        "dataset": "sample_ads_campaign_daily",
        "metrics": [
          "spend",
          "attributed_sales",
          "acos"
        ],
        "group_by": "campaign",
        "marketplace": "US",
        "date_range": {
          "preset": "30d"
        },
        "limit": 5
      },
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "dataset": {
            "type": "string",
            "enum": [
              "sample_seller_sales_daily",
              "sample_ads_campaign_daily",
              "sample_inventory_daily"
            ]
          },
          "metrics": {
            "minItems": 1,
            "maxItems": 6,
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "group_by": {
            "type": "string"
          },
          "marketplace": {
            "default": "US",
            "type": "string",
            "enum": [
              "US",
              "CA",
              "UK",
              "DE"
            ],
            "description": "Sample marketplace code"
          },
          "date_range": {
            "default": {
              "preset": "30d"
            },
            "type": "object",
            "properties": {
              "preset": {
                "default": "30d",
                "type": "string",
                "enum": [
                  "7d",
                  "30d",
                  "90d",
                  "custom"
                ]
              },
              "start": {
                "description": "YYYY-MM-DD, on or after 2026-04-04",
                "type": "string"
              },
              "end": {
                "description": "YYYY-MM-DD, on or before 2026-09-30",
                "type": "string"
              }
            }
          },
          "limit": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 100
          },
          "sort_direction": {
            "default": "desc",
            "type": "string",
            "enum": [
              "desc",
              "asc"
            ]
          }
        },
        "required": [
          "dataset",
          "metrics"
        ],
        "additionalProperties": false
      }
    },
    {
      "name": "reports_create",
      "title": "Create a report job",
      "description": "Creates a simulated report job in this browser tab. No file leaves your browser and no network call is made.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none.",
      "live_status": "Demo only (simulated job)",
      "error_codes": [
        "INVALID_ARGUMENT",
        "INVALID_DATE_RANGE"
      ],
      "example_arguments": {
        "dataset": "sample_seller_sales_daily",
        "marketplace": "US",
        "date_range": {
          "preset": "30d"
        },
        "format": "csv"
      },
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "dataset": {
            "type": "string",
            "enum": [
              "sample_seller_sales_daily",
              "sample_ads_campaign_daily",
              "sample_inventory_daily"
            ]
          },
          "marketplace": {
            "default": "US",
            "type": "string",
            "enum": [
              "US",
              "CA",
              "UK",
              "DE"
            ],
            "description": "Sample marketplace code"
          },
          "date_range": {
            "default": {
              "preset": "30d"
            },
            "type": "object",
            "properties": {
              "preset": {
                "default": "30d",
                "type": "string",
                "enum": [
                  "7d",
                  "30d",
                  "90d",
                  "custom"
                ]
              },
              "start": {
                "description": "YYYY-MM-DD, on or after 2026-04-04",
                "type": "string"
              },
              "end": {
                "description": "YYYY-MM-DD, on or before 2026-09-30",
                "type": "string"
              }
            }
          },
          "format": {
            "default": "csv",
            "type": "string",
            "enum": [
              "csv",
              "json"
            ]
          }
        },
        "required": [
          "dataset"
        ],
        "additionalProperties": false
      }
    },
    {
      "name": "reports_status_get",
      "title": "Get report job status",
      "description": "Returns the simulated job state. Each check advances queued → processing → completed.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none.",
      "live_status": "Demo only (simulated job)",
      "error_codes": [
        "INVALID_ARGUMENT",
        "NOT_FOUND"
      ],
      "example_arguments": {
        "job_id": "demo-job-0001"
      },
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "job_id": {
            "type": "string",
            "pattern": "^demo-job-\\d{4}$"
          }
        },
        "required": [
          "job_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "name": "audit_events_list",
      "title": "List audit events",
      "description": "Lists demo audit events, including the tool calls you made in this tab.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none.",
      "live_status": "Demo only",
      "error_codes": [
        "INVALID_ARGUMENT"
      ],
      "example_arguments": {
        "limit": 10
      },
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "limit": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          }
        },
        "additionalProperties": false
      }
    },
    {
      "name": "usage_status_get",
      "title": "Get usage status",
      "description": "Shows how many simulated tool calls were made in this tab.",
      "annotations": {
        "readOnlyHint": true
      },
      "auth": "Demo: none.",
      "live_status": "Demo only",
      "error_codes": [],
      "example_arguments": {},
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
  ]
}