# 7. Thay đổi

## v2.1.0 — 25/09/2026

- **Truy vấn được toàn bộ lịch sử**: bỏ trần 8 năm theo gói — giá cổ phiếu từ 01/2013, chỉ số từ 08/2017, vĩ mô từ 1985.
- **`search` thông minh hơn**: xếp hạng BM25 + vector (Gemini), từ đồng nghĩa tiếng Việt ("lạm phát" → CPI, "nợ xấu" → dự phòng rủi ro cho vay…), sửa gõ nhầm, tên thương hiệu (Vinamilk → VNM), ưu tiên khớp đúng dấu.
- **Hàm mới `screen_stocks`**: lọc cổ phiếu theo P/E, P/B, ROE, biên lợi nhuận, tăng trưởng, lợi suất, RS, thanh khoản, khối ngoại, sàn, ngành và cờ tín hiệu.
- **Hàm mới `report_issue`**: báo lỗi / dữ liệu sai cho đội AlgolabX, máy chủ tự đính kèm lượt gọi gần nhất.
- **Tên v1 vẫn chạy**: gọi tên công cụ v1 (vd `get_stock_daily`) hoặc tham số cũ (`ticker`, `since`, `id`) → tự chuyển sang tên v2, ghi chú tên mới trong `meta.notes`.
- Lỗi hệ thống kèm gợi ý báo lỗi; máy chủ tự cảnh báo đội vận hành khi tỉ lệ lỗi tăng.

## v2.0.0 — 23/09/2026

Thiết kế lại theo chuẩn công cụ dữ liệu chuyên nghiệp: 12 công cụ gọn (thay 33), kết quả cùng một dạng `{status, data, meta}`, tìm dữ liệu bằng `search`, danh mục chuyên sâu qua `call_function`, bảng dạng cột, phân trang, mã lỗi kèm gợi ý; hạn mức chỉ tính lượt gọi công cụ; bản đồ dữ liệu và tài liệu sinh tự động.

### Việc cần làm sau khi cập nhật

- **Claude / ChatGPT**: Settings → Connectors → Algolab → **Disconnect** rồi **Connect** lại (hoặc Refresh) để AI đọc danh sách công cụ mới.
- **Claude Code / Gemini CLI / Cursor**: mở phiên mới (hoặc `/mcp` → reconnect).
- Không cần đổi URL hay khoá.

### Đổi tên công cụ

| v1 | v2 |
|---|---|
| `list_tickers` | search(kind="symbol") hoặc call_function(name="list_symbols") |
| `get_stock_daily` | `get_price_history` |
| `get_stock_realtime` | `get_quotes` |
| `get_foreign_flows` | get_market_overview (tóm tắt) hoặc call_function(name="get_foreign_flows_detail") |
| `get_market_realtime` | get_market_overview hoặc call_function(name="get_index_intraday") |
| `get_financial_statement` | `get_financial_statements` |
| `get_stock_info` | `get_company_profile` |
| `get_price_targets` | get_research_reports(symbol=…) hoặc get_company_profile(sections=["targets"]) |
| `get_report` | `get_research_reports` |
| `get_report_content` | call_function(name="get_report_content") |
| `get_technical_analysis` | `get_technical_signals` |
| `get_macro_vietnam` | get_macro(scope="vietnam") |
| `get_macro_world` | get_macro(scope="world") |
| `macro_browse` | call_function(name="browse_macro") |
| `macro_series` | call_function(name="get_macro_series") |
| `get_warrants` | call_function(name="get_warrants") |
| `get_derivatives` | call_function(name="get_derivatives_snapshot"); lịch sử: get_price_history(symbol="VN30F1M") |
| `get_quota` | call_function(name="get_quota") |
| `phan_tich_co_phieu` | lệnh /analysis (get_company_profile + get_price_history + get_technical_signals) |
| `tong_quan_thi_truong` | get_market_overview (hoặc lệnh /market) |
| `co_hoi_dau_tu` | lệnh /ideas (get_technical_signals + get_research_reports) |