{
  "id": "surf.prediction-market.correlations",
  "object": "tool",
  "name": "Market Correlations",
  "summary": "Returns 30-day Pearson price correlation pairs between Polymarket markets within a category.",
  "description": "Returns 30-day Pearson price correlation pairs between Polymarket markets within a category. Correlation data covers the top 100 markets by 7-day volume globally; lower-volume markets may not have correlation data. Filter by condition_id to find all markets correlated with a specific market, or set min_correlation to control the threshold. The category parameter is required. Data refresh: ~5 minutes.\n\nRaw surf#prediction-market/correlations endpoint: input is { body, queryParams, pathParams } as the provider documents them (https://docs.asksurf.ai/data-api/prediction-market/correlations).",
  "category": "lookup",
  "hosted_by": "Surf",
  "runtime": "partner",
  "side_effects": false,
  "status": "live",
  "credits": 0,
  "price": null,
  "providers": [
    {
      "id": "surf",
      "name": "Surf",
      "price": null,
      "own_key_only": true
    }
  ],
  "mcp_name": "surf_prediction-market_correlations",
  "input_schema": {
    "type": "object",
    "properties": {
      "queryParams": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "enum": [
              "crypto",
              "culture",
              "economics",
              "financials",
              "politics",
              "stem",
              "sports"
            ],
            "description": "Category (correlations are within-category only)."
          },
          "condition_id": {
            "type": "string",
            "minLength": 1,
            "description": "Filter to pairs involving this market."
          },
          "min_correlation": {
            "default": 0.5,
            "type": "number",
            "description": "Minimum absolute correlation. Defaults to 0.5."
          },
          "limit": {
            "default": 20,
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "Results per page. Defaults to 20."
          },
          "offset": {
            "default": 0,
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991,
            "description": "Pagination offset. Defaults to 0."
          }
        },
        "required": [
          "category"
        ],
        "additionalProperties": false
      }
    },
    "required": [
      "queryParams"
    ],
    "additionalProperties": false
  },
  "kind": "endpoint"
}