MCP server: silent wrong matches on ambiguous/near-miss names, noisy query_graph, misleading list_prs error
Maintainer thường phản hồi trong vòng 1 ngày
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Lĩnh vực
- backend-api-design, devtools
Hướng nghiên cứu
Start by reproducing the listed calls against the explicit graph.json, then trace the MCP tool entry points get_node, query_graph, get_community, list_prs, get_pr_impact, and get_neighbors. Done means ambiguous and non-exact labels are explicit, graph results are relevance-aware, communities are labelled, repository errors explain repo=, and neighbor truncation preserves incoming edges.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Version: graphifyy 0.9.71 (installed via uv tool), graphify-mcp over stdio, started with an explicit graph.json path.
Codebase: PHP / Symfony bundle, ~11k nodes / ~33k edges, 614 communities.
1. get_node silently picks one match for an ambiguous name
- Steps:
get_node(label="edit")on a graph where several classes defineedit(). - Actual: returns a single node (
Controller/VisitController.php L427) with no hint that other candidates exist. - Expected: a list of the candidates (path + line), or an explicit "ambiguous, N matches" error. The caller can't tell whether the answer is the right
edit().
2. get_node silently resolves a non-existent name to a different node
- Steps:
get_node(label="MailController")when noMailControllerexists in the codebase. - Actual: returns
EmailControlleras if it were an exact match. - Expected: "no exact match", optionally followed by fuzzy suggestions clearly labelled as such.
Side note: the path::symbol form works (Controller/VisitController.php::edit → found). get_node(node_id=...) does not find a generated-looking id for a non-existent symbol, which is correct.
3. query_graph is dominated by god nodes
- Steps:
query_graph(question="who sends the convocation emails?"), default depth 3. - Actual: BFS starts from 5 seeds and reaches 2,708 nodes. The output is TRUNCATED and mostly made of the highest-degree nodes (framework interfaces, core entities, enums). With
token_budget=8000it is still truncated (240 of 2,708). Withcontext_filter=['call']only 20 nodes remain, all unrelated test helpers. - Expected: rank results by relevance or distance to the seeds rather than degree, or damp hubs during traversal (similar to
exclude_hubs_percentileingod_nodes).
4. get_community returns no community label
get_community(3) returns "Community 3 (205 nodes)" with no name or summary. A generated label (e.g. dominant class or directory) would make the output usable.
5. list_prs reports "gh CLI not found" when the real issue is repo detection
- Steps:
list_prs()with norepoargument, the server started on agraph.jsonoutside any git repo. - Actual:
Error: gh CLI not found or not authenticated. Run: gh auth login. gh is installed and authenticated. Passingrepo=owner/namemakes it work.get_pr_impactwith the samerepoworks too. - Expected: an error such as "could not detect repository; pass
repo=".
6. Minor: get_neighbors truncation hides incoming edges
With the default budget, outgoing edges are listed first, so all incoming edges (callers) are cut off on high-degree nodes. Listing incoming edges first, or balancing both directions, would help.
- Ngôn ngữ chính
- Python
- Star
- 124k
- Fork
- 11.9k
- 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
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Graphify-Labs/graphify
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Graphify-Labs/graphify#4860 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Cache the claude backend system prompt via Anthropic prompt cachingCó thể đã có người làm @Jvxoq đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Graphify-Labs/graphify#4835 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
extract --out <dir>: semantic cache never saved, docs missing from manifest (relative source_file resolved against --out)Có thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Graphify-Labs/graphify#4831 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 75/100
Graphify-Labs/graphify#4829 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
hooks: last-resort `python3` probe launches the Microsoft Store redirector on Windows (visible console flash, exit 9009)Có thể đã có người làm @Deepjyoti-Sarmah đã nhận 10 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Graphify-Labs/graphify#4563 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của Graphify-Labs/graphify
Issue tương tự
-
changelog investigate
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
ramnes/notion-sdk-py#433 ·
-
docs pkg:core
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 84/100
pydantic/pydantic-ai#11929 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
intake/intake-esm#789 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
MemMachine/MemMachine#1877 ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
openedx/openedx-authz#579 ·
Maintainer thường phản hồi trong vòng 1 ngày