MyLinedChart
ProTải về
Trang chủBảng giáTải vềBài viết

Cấu hình kết nối trực tiếp trong VS Code: dùng servers thay vì mcpServers

Đăng ngày 2026-08-05 · Cập nhật 2026-08-05 · Đọc bản tiếng Anh

Bạn sao chép một cấu hình đang chạy tốt từ Claude hoặc Cursor, dán vào VS Code, khởi động lại, và không có gì xảy ra. Không có lỗi, không có cảnh báo, không có máy chủ nào trong danh sách. Tệp là JSON hợp lệ và VS Code hoàn toàn hài lòng với nó. Vấn đề nằm ở một từ, và là từ ngoài cùng.

Điểm chính
  • VS Code bọc các máy chủ trong khóa servers. Claude, Cursor và hầu hết ứng dụng khác dùng mcpServers.
  • Khóa sai không tạo ra lỗi nào, đó là lý do chuyện này làm người ta mất cả tiếng.
  • Định nghĩa máy chủ bên trong giống hệt nhau giữa các ứng dụng khách. Chỉ lớp bọc khác nhau.

Sự khác biệt, đặt cạnh nhau

Cùng một máy chủ, cùng lệnh, cùng tham số. Thứ duy nhất thay đổi là khóa bọc.

VS Code là trường hợp khác biệt, và cũng là nơi thất bại trong im lặng.
Ứng dụng kháchTệp cấu hìnhKhóa bọc
GitHub Copilot trong VS Code.vscode/mcp.jsonservers
Cursor~/.cursor/mcp.jsonmcpServers
Claude Desktopclaude_desktop_config.jsonmcpServers
Hầu hết ứng dụng khách khác dựa trên tệp cấu hìnhtùy ứng dụngmcpServers

VS Code muốn gì

Trong .vscode/mcp.json, ở thư mục gốc của không gian làm việc. Lấy trình kết nối của MyLinedChart làm ví dụ:

{ "servers": { "mylinedchart": { "command": "npx", "args": ["-y", "@mylinedchart/mcp-chart-context"] } } }

Thay bằng lệnh và tham số của máy chủ bạn. Hình dạng của đối tượng bên trong không đổi giữa các ứng dụng khách.

Mọi thứ khác muốn gì

Cùng máy chủ đó, cho Claude hoặc Cursor:

{ "mcpServers": { "mylinedchart": { "command": "npx", "args": ["-y", "@mylinedchart/mcp-chart-context"] } } }

Nếu bạn mở cả hai trình soạn thảo, bạn thực sự cần cả hai tệp. Hai trình soạn thảo không thể dùng chung một cấu hình.

Vì sao nó thất bại mà không có lỗi

VS Code đọc tệp, thấy JSON hợp lệ và tìm khóa servers. Tệp không có khóa servers, nên VS Code thấy không có máy chủ nào để khởi động. Không có máy chủ nào không phải là điều kiện lỗi. Theo góc nhìn của VS Code, bạn chưa cấu hình gì cả, và đó là điều hoàn toàn hợp lệ.

Vì vậy không có gạch đỏ, không có thông báo và không có mục nào trong bất kỳ nhật ký nào nói khóa bị sai. Thất bại trông y hệt máy chủ bị lỗi khi khởi động, đó là lý do mọi người lao vào gỡ lỗi máy chủ.

  • Tệp là JSON hợp lệ, nên không có lỗi phân tích nào xuất hiện.
  • Khóa cấp cao nhất không nhận ra bị bỏ qua thay vì bị từ chối.
  • Không có máy chủ nào được cấu hình là trạng thái bình thường, nên VS Code không báo lỗi.

Cách xác nhận bạn đang gặp vấn đề nào

Trước khi cho rằng máy chủ bị hỏng, hãy chứng minh VS Code có từng thử khởi động nó.

  • Kiểm tra khóa bọc trước. Việc kiểm tra mất năm giây và phần lớn thời gian chính là đáp án.
  • Chạy lệnh của máy chủ bằng tay trong terminal. Nếu máy chủ khởi động được, vấn đề nằm ở chỗ khác.
  • Tìm máy chủ trong danh sách máy chủ MCP của VS Code. Không thấy nghĩa là chưa từng được cấu hình; có mặt nhưng lỗi nghĩa là có lỗi khởi động thật.
  • Nếu bạn cài qua liên kết một cú nhấp thay vì bằng tay, cả nhóm vấn đề này không áp dụng.

Hai cái bẫy liên quan

Nhân tiện đang ở đây, có hai thứ khác thất bại theo cùng cách im lặng.

Thứ nhất, các liên kết cài đặt máy chủ một cú nhấp mang dữ liệu của chúng dưới dạng JSON mã hóa URL thuần. Base64 được trình phân tích URL chấp nhận rồi âm thầm không làm gì, đó là kiểu thất bại tệ nhất có thể: một nút trông như đã hoạt động.

Thứ hai, tên máy chủ đi bên trong dữ liệu cho VS Code, thay vì là một tham số truy vấn riêng như cách Cursor làm. Một liên kết xây theo dạng của Cursor sẽ không cài đúng trong VS Code dù nó vẫn mở ra.

MyLinedChart nằm ở đâu

MyLinedChart có sẵn một trình kết nối trực tiếp, cho một tác tử AI biết biểu đồ trực tiếp của bạn: các mã, nét vẽ, giá trị chỉ báo và các thanh nến trên màn hình. Trình kết nối chạy trên máy của bạn và dữ liệu không đi qua máy chủ của chúng tôi.

Ứng dụng có nút Add to VS Code một cú nhấp tự ghi đúng khóa cho bạn, đó là lý do nên dùng nó thay vì sửa tay. Thiết lập và các ứng dụng khách khác: /resources/articles/ibkr-chart-data-github-copilot-vs-code.

Bước tiếp theo

Sửa khóa, khởi động lại VS Code và máy chủ sẽ xuất hiện. Nếu máy chủ vẫn không xuất hiện, giờ bạn biết vấn đề nằm ở máy chủ chứ không phải cấu hình, một danh sách ngắn hơn nhiều để xử lý.

Kết nối AI của bạn tại /mcp.

Câu hỏi thường gặp

Vì sao VS Code dùng servers thay vì mcpServers?
Khóa servers là một lựa chọn đặt tên trong định dạng cấu hình riêng của VS Code, được đưa ra độc lập với quy ước Claude Desktop đã thiết lập. Không cái nào đúng hơn. Khác biệt chỉ thành vấn đề vì hai cái trông có vẻ thay thế được cho nhau và một trong hai thất bại mà không nói gì.
VS Code có cảnh báo nếu tôi dùng sai khóa không?
Không, và đó chính là điểm khó. Tệp là JSON hợp lệ, khóa cấp cao nhất không nhận ra bị bỏ qua thay vì bị từ chối, và không có máy chủ nào được cấu hình là trạng thái bình thường. Không có gì ở đó trông giống một lỗi.
Tôi có thể dùng một tệp cấu hình cho cả VS Code và Cursor không?
Không. Chúng đọc các đường dẫn khác nhau và mong đợi các khóa bọc khác nhau, nên bạn cần cả hai tệp. Định nghĩa máy chủ bên trong giống hệt nhau, nên đó chỉ là một bản sao đổi một từ.
Điều này có áp dụng cho Copilot của Windows không?
Không. Copilot ở đây là GitHub Copilot trong VS Code, hỗ trợ máy chủ MCP. Trợ lý trên thanh tác vụ Windows là một sản phẩm riêng dùng chung tên và không dùng các tệp cấu hình này.

Dùng thử MyLinedChart

MyLinedChart lưu nét vẽ, ghi chú và giá trị chỉ báo của bạn thành dữ liệu để bạn xuất, xem lại và dùng lại.

Khám phá MyLinedChart

Bài viết khác