{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "name": "PortfolioWatcher",
  "version": "1.0.0",
  "description": "PortfolioWatcher WebMCP tools for investment tracking, stock quotes, technical analysis, and research notes.",
  "endpoint": "/mcp",
  "tools": [
    {
      "name": "get_stock_quote",
      "description": "Get current price, intraday change, and valuation metrics for a stock ticker symbol.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {
            "type": "string",
            "description": "Ticker symbol (e.g. NVDA, AAPL)"
          }
        },
        "required": ["symbol"]
      }
    },
    {
      "name": "list_accounts",
      "description": "List all investment accounts and portfolios in FolioWatcher.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    },
    {
      "name": "get_account_holdings",
      "description": "Get all stock holdings for a specific portfolio account.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "integer",
            "description": "Account ID"
          }
        },
        "required": ["account_id"]
      }
    },
    {
      "name": "get_stock_notes",
      "description": "Retrieve research notes and decisions recorded for a specific stock.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {
            "type": "string",
            "description": "Ticker symbol (e.g. NVDA)"
          }
        },
        "required": ["symbol"]
      }
    },
    {
      "name": "save_stock_note",
      "description": "Create or update a research note for a stock symbol.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {
            "type": "string",
            "description": "Ticker symbol"
          },
          "title": {
            "type": "string",
            "description": "Note title"
          },
          "content": {
            "type": "string",
            "description": "Markdown or text content"
          },
          "note_id": {
            "type": "integer",
            "description": "Optional note ID to edit existing note"
          }
        },
        "required": ["symbol", "title", "content"]
      }
    },
    {
      "name": "delete_stock_note",
      "description": "Delete a stock note by its integer ID.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {
            "type": "string",
            "description": "Ticker symbol"
          },
          "note_id": {
            "type": "integer",
            "description": "Note ID to delete"
          }
        },
        "required": ["symbol", "note_id"]
      }
    },
    {
      "name": "get_market_sentiment",
      "description": "Fetch overall market sentiment index and Polymarket odds summary.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
  ]
}
