Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Bug: DocuEngine dynamic tools are process-global and can leak the first token's toolset across users

Đang mở
#26 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
42/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
python
Lĩnh vực
authentication, backend

Hướng nghiên cứu

Start by locating init_dynamic_tools() and tracing how its process-global guard registers tools for authenticated requests. Compare requests using tokens with different service access to determine where the tool list is initialized and reused. Done means a shared server exposes a tenant-safe, token-scoped toolset, or documents and enforces a deterministic shared-process limitation.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Summary

When the first authenticated request initializes DocuEngine dynamic tools, the resulting tool list appears to become global for the whole process. In a shared deployment this means the first token to hit the server can effectively decide which dynamic tools are registered for everyone else.

Reproduction

  1. Start one shared server instance.
  2. Send a first authenticated request with token A that has a limited set of services.
  3. Later connect with token B that should expose a different or broader DocuEngine surface.
  4. Observe that the server keeps the already-registered dynamic toolset.

Expected

Dynamic tools should either be tenant-safe, token-scoped, or the server should make the shared-process limitation explicit and deterministic.

Actual

init_dynamic_tools() is guarded by a process-global flag, so the first successful registration wins.

Notes

This becomes visible in cloud or team environments where one MCP instance is reused by multiple users.

Ngôn ngữ chính
Python
Star
22
Fork
4
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của openapi/mcp-server

Tất cả issue của openapi/mcp-server

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.