Redstone Markets

Performance, risk, comparisons, backtests and screening for US stocks and ETFs, with charts.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
91%
命名质量
85%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~3,922token 数(工具定义)
~9.1 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 3.06%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "redstone": {
      "url": "https://redstonemarkets.com/api/mcp"
    }
  }
}

远程端点

https://redstonemarkets.com/api/mcpstreamable-http

它能做什么

工具清单

工具(4)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢get_security_metrics(ticker)

Use this when the user asks how a single US stock or ETF has performed or how risky it is: YTD, 1-year and 5-year annualized returns, max drawdown, Sharpe, Sortino, beta and alpha, with a 1Y/5Y chart. End-of-day data for US large and mid caps, major foreign stocks and US ETFs. Not for intraday quotes, news, earnings, fundamentals or price targets.

输入模式

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "minLength": 1,
      "maxLength": 12,
      "description": "US ticker symbol, e.g. AAPL, VOO or BRK.B"
    }
  },
  "required": [
    "ticker"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

输出模式

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "security": {
      "type": "object",
      "properties": {
        "return1dPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "returnYtdPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return1yPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return5yAnnualizedPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "maxDrawdown1yPct": {
          "description": "Worst peak-to-trough fall over the past year (negative)",
          "type": [
            "number",
            "null"
          ]
        },
        "sharpe1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "sortino1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "beta1y": {
          "description": "Versus SPY, from daily returns over the past year",
          "type": [
            "number",
            "null"
          ]
        },
        "alpha1yPct": {
          "description": "Annualized, versus SPY",
          "type": [
            "number",
            "null"
          ]
        },
        "ticker": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "stock",
            "etf"
          ]
        },
        "sector": {
          "description": "GICS sector for stocks, category for ETFs",
          "type": [
            "string",
            "null"
          ]
        },
        "price": {
          "description": "Latest close in USD",
          "type": [
            "number",
            "null"
          ]
        },
        "url": {
          "type": "string",
          "description": "Redstone page for this security"
        }
      },
      "required": [
        "return1dPct",
        "returnYtdPct",
        "return1yPct",
        "return5yAnnualizedPct",
        "maxDrawdown1yPct",
        "sharpe1y",
        "sortino1y",
        "beta1y",
        "alpha1yPct",
        "ticker",
        "name",
        "type",
        "sector",
        "price",
        "url"
      ],
      "additionalProperties": false
    },
    "comparisons": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "label",
          "url"
        ],
        "additionalProperties": false
      },
      "description": "Popular Redstone comparisons for this ticker"
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "asOf",
    "security",
    "comparisons",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢compare_securities(tickers)

Use this when the user wants to compare 2 to 5 US stocks or ETFs side by side (e.g. "VOO vs QQQ", "SCHD or VYM?"): returns, drawdown, Sharpe, beta and how correlated they are, with an overlaid 1Y/5Y chart. End-of-day data for US large and mid caps, major foreign stocks and US ETFs. Not for intraday quotes or recommendations on what to buy.

输入模式

{
  "type": "object",
  "properties": {
    "tickers": {
      "minItems": 2,
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 12,
        "description": "US ticker symbol, e.g. AAPL, VOO or BRK.B"
      },
      "description": "Tickers to compare, in the order the user named them"
    }
  },
  "required": [
    "tickers"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

输出模式

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "securities": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "return1dPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "returnYtdPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return1yPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return5yAnnualizedPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "maxDrawdown1yPct": {
            "description": "Worst peak-to-trough fall over the past year (negative)",
            "type": [
              "number",
              "null"
            ]
          },
          "sharpe1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "sortino1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "beta1y": {
            "description": "Versus SPY, from daily returns over the past year",
            "type": [
              "number",
              "null"
            ]
          },
          "alpha1yPct": {
            "description": "Annualized, versus SPY",
            "type": [
              "number",
              "null"
            ]
          },
          "ticker": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stock",
              "etf"
            ]
          },
          "sector": {
            "description": "GICS sector for stocks, category for ETFs",
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "description": "Latest close in USD",
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": "string",
            "description": "Redstone page for this security"
          }
        },
        "required": [
          "return1dPct",
          "returnYtdPct",
          "return1yPct",
          "return5yAnnualizedPct",
          "maxDrawdown1yPct",
          "sharpe1y",
          "sortino1y",
          "beta1y",
          "alpha1yPct",
          "ticker",
          "name",
          "type",
          "sector",
          "price",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "correlation": {
      "type": "object",
      "properties": {
        "tickers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "matrix": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of daily returns over the past year, in the order of `tickers`"
        },
        "matrix5y": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of weekly returns over the past five years, in the order of `tickers`; null where a ticker has less history. One year can be far from the usual relationship, so mention both when they differ much"
        }
      },
      "required": [
        "tickers",
        "matrix",
        "matrix5y"
      ],
      "additionalProperties": false
    },
    "url": {
      "description": "Redstone compare page (pairs only)",
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "asOf",
    "securities",
    "correlation",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢backtest_portfolio(positions)

Use this when the user describes a portfolio of US stocks and ETFs with weights (e.g. "60% VTI, 40% BND", "equal parts AAPL, MSFT, NVDA") and wants to know how it would have done or how risky it is: returns over YTD, 1 year and 5 years (rebalanced quarterly), max drawdown, Sharpe, beta vs SPY and the correlation between holdings, charted against SPY. 2 to 20 holdings. Not for live brokerage accounts, trading or allocation advice.

输入模式

{
  "type": "object",
  "properties": {
    "positions": {
      "minItems": 2,
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "ticker": {
            "type": "string",
            "minLength": 1,
            "maxLength": 12,
            "description": "US ticker symbol, e.g. AAPL, VOO or BRK.B"
          },
          "weight": {
            "type": "number",
            "exclusiveMinimum": 0,
            "description": "Relative weight, e.g. 60 for 60%. Weights are rescaled to sum to 100%, so equal weights can all be 1"
          }
        },
        "required": [
          "ticker",
          "weight"
        ]
      }
    }
  },
  "required": [
    "positions"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

输出模式

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "portfolio": {
      "type": "object",
      "properties": {
        "return1dPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "returnYtdPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return1yPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return5yAnnualizedPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "maxDrawdown1yPct": {
          "description": "Worst peak-to-trough fall over the past year (negative)",
          "type": [
            "number",
            "null"
          ]
        },
        "sharpe1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "sortino1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "beta1y": {
          "description": "Versus SPY, from daily returns over the past year",
          "type": [
            "number",
            "null"
          ]
        },
        "alpha1yPct": {
          "description": "Annualized, versus SPY",
          "type": [
            "number",
            "null"
          ]
        }
      },
      "required": [
        "return1dPct",
        "returnYtdPct",
        "return1yPct",
        "return5yAnnualizedPct",
        "maxDrawdown1yPct",
        "sharpe1y",
        "sortino1y",
        "beta1y",
        "alpha1yPct"
      ],
      "additionalProperties": false,
      "description": "Backtest of the weights, rebalanced back to them every quarter"
    },
    "holdings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "return1dPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "returnYtdPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return1yPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return5yAnnualizedPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "maxDrawdown1yPct": {
            "description": "Worst peak-to-trough fall over the past year (negative)",
            "type": [
              "number",
              "null"
            ]
          },
          "sharpe1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "sortino1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "beta1y": {
            "description": "Versus SPY, from daily returns over the past year",
            "type": [
              "number",
              "null"
            ]
          },
          "alpha1yPct": {
            "description": "Annualized, versus SPY",
            "type": [
              "number",
              "null"
            ]
          },
          "ticker": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stock",
              "etf"
            ]
          },
          "sector": {
            "description": "GICS sector for stocks, category for ETFs",
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "description": "Latest close in USD",
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": "string",
            "description": "Redstone page for this security"
          },
          "weightPct": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "return1dPct",
          "returnYtdPct",
          "return1yPct",
          "return5yAnnualizedPct",
          "maxDrawdown1yPct",
          "sharpe1y",
          "sortino1y",
          "beta1y",
          "alpha1yPct",
          "ticker",
          "name",
          "type",
          "sector",
          "price",
          "url",
          "weightPct"
        ],
        "additionalProperties": false
      }
    },
    "benchmark": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "return1dPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "returnYtdPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "return1yPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "return5yAnnualizedPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "maxDrawdown1yPct": {
              "description": "Worst peak-to-trough fall over the past year (negative)",
              "type": [
                "number",
                "null"
              ]
            },
            "sharpe1y": {
              "type": [
                "number",
                "null"
              ]
            },
            "sortino1y": {
              "type": [
                "number",
                "null"
              ]
            },
            "beta1y": {
              "description": "Versus SPY, from daily returns over the past year",
              "type": [
                "number",
                "null"
              ]
            },
            "alpha1yPct": {
              "description": "Annualized, versus SPY",
              "type": [
                "number",
                "null"
              ]
            },
            "ticker": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "type": {
              "type": "string",
              "enum": [
                "stock",
                "etf"
              ]
            },
            "sector": {
              "description": "GICS sector for stocks, category for ETFs",
              "type": [
                "string",
                "null"
              ]
            },
            "price": {
              "description": "Latest close in USD",
              "type": [
                "number",
                "null"
              ]
            },
            "url": {
              "type": "string",
              "description": "Redstone page for this security"
            }
          },
          "required": [
            "return1dPct",
            "returnYtdPct",
            "return1yPct",
            "return5yAnnualizedPct",
            "maxDrawdown1yPct",
            "sharpe1y",
            "sortino1y",
            "beta1y",
            "alpha1yPct",
            "ticker",
            "name",
            "type",
            "sector",
            "price",
            "url"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "description": "SPY, for comparison"
    },
    "correlation": {
      "type": "object",
      "properties": {
        "tickers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "matrix": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of daily returns over the past year, in the order of `tickers`"
        },
        "matrix5y": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of weekly returns over the past five years, in the order of `tickers`; null where a ticker has less history. One year can be far from the usual relationship, so mention both when they differ much"
        }
      },
      "required": [
        "tickers",
        "matrix",
        "matrix5y"
      ],
      "additionalProperties": false
    },
    "url": {
      "type": "string",
      "description": "Where to build and save this portfolio on Redstone"
    }
  },
  "required": [
    "asOf",
    "portfolio",
    "holdings",
    "benchmark",
    "correlation",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢screen_securities(type, sector, sortBy, order, filters, ...)

Use this when the user wants a ranked list of US stocks or ETFs by a performance or risk metric, optionally within a sector or ETF category (e.g. "lowest volatility dividend ETFs", "highest Sharpe tech stocks this year", "energy stocks with the smallest drawdown"). Covers about 1,100 US-listed stocks and about 480 US ETFs, end-of-day. Not for fundamentals (P/E, revenue), news or buy recommendations.

输入模式

{
  "type": "object",
  "properties": {
    "type": {
      "default": "all",
      "description": "Limit to stocks, ETFs, or both",
      "type": "string",
      "enum": [
        "stock",
        "etf",
        "all"
      ]
    },
    "sector": {
      "description": "Case-insensitive match on a stock's GICS sector (e.g. Information Technology, Health Care, Energy, Financials) or an ETF's category (e.g. Dividend, Bonds, Treasury, Large Cap Growth, Emerging Markets, Gold)",
      "type": "string",
      "maxLength": 40
    },
    "sortBy": {
      "default": "return1yPct",
      "description": "Metric to rank by. For lowest risk, sort maxDrawdown1yPct descending (closest to 0) or beta1y ascending",
      "type": "string",
      "enum": [
        "return1dPct",
        "returnYtdPct",
        "return1yPct",
        "return5yAnnualizedPct",
        "maxDrawdown1yPct",
        "sharpe1y",
        "sortino1y",
        "beta1y",
        "alpha1yPct"
      ]
    },
    "order": {
      "default": "desc",
      "type": "string",
      "enum": [
        "desc",
        "asc"
      ]
    },
    "filters": {
      "description": "Optional bounds in each metric's own units, e.g. {metric: 'beta1y', max: 1}. maxDrawdown1yPct is negative, so a drawdown smaller than 20% is {metric: 'maxDrawdown1yPct', min: -20}",
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "metric": {
            "type": "string",
            "enum": [
              "return1dPct",
              "returnYtdPct",
              "return1yPct",
              "return5yAnnualizedPct",
              "maxDrawdown1yPct",
              "sharpe1y",
              "sortino1y",
              "beta1y",
              "alpha1yPct"
            ]
          },
          "min": {
            "type": "number"
          },
          "max": {
            "type": "number"
          }
        },
        "required": [
          "metric"
        ]
      }
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

输出模式

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "totalMatches": {
      "type": "number"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "return1dPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "returnYtdPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return1yPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return5yAnnualizedPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "maxDrawdown1yPct": {
            "description": "Worst peak-to-trough fall over the past year (negative)",
            "type": [
              "number",
              "null"
            ]
          },
          "sharpe1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "sortino1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "beta1y": {
            "description": "Versus SPY, from daily returns over the past year",
            "type": [
              "number",
              "null"
            ]
          },
          "alpha1yPct": {
            "description": "Annualized, versus SPY",
            "type": [
              "number",
              "null"
            ]
          },
          "ticker": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stock",
              "etf"
            ]
          },
          "sector": {
            "description": "GICS sector for stocks, category for ETFs",
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "description": "Latest close in USD",
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": "string",
            "description": "Redstone page for this security"
          }
        },
        "required": [
          "return1dPct",
          "returnYtdPct",
          "return1yPct",
          "return5yAnnualizedPct",
          "maxDrawdown1yPct",
          "sharpe1y",
          "sortino1y",
          "beta1y",
          "alpha1yPct",
          "ticker",
          "name",
          "type",
          "sector",
          "price",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "url": {
      "type": "string",
      "description": "Redstone screener with every column and filter"
    }
  },
  "required": [
    "asOf",
    "totalMatches",
    "results",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本4 个工具