mcp 2.x compatibility for splunklib.ai
Chưa có ai nhận issue nà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
- 30/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- python
- Lĩnh vực
- backend-api-design
Hướng nghiên cứu
Start by reading splunklib/ai/registry.py and splunklib/ai/tools.py, then compare their current mcp 1.x usage with the 2.x APIs described in the issue. Validate both local stdio and remote streamable HTTP paths under Python 3.13. The issue is complete only when maintainers decide the target release and compatibility policy, then define an accepted migration scope.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Roadmap question: mcp 2.x compatibility for splunklib.ai (ToolRegistry still relies on the 1.x Server.list_tools / Server.call_tool decorators)
Disclosure: this issue was researched and drafted with AI assistance (Claude Code) and is opened on behalf of Guilhem Marchand, TrackMe Limited, who reviewed and approved its content. TrackMe is a Splunk application that builds its AI Advisor features on
splunklib.ai(splunk-sdk3.0.0).
Summary
splunk-sdk 3.0.0 and 3.0.1 are only compatible with mcp 1.x, and there is no public signal about whether or when splunklib.ai will support mcp 2.x. This is a roadmap question, not a bug report: we would like to know the intended direction so that downstream apps can plan their own pins.
What we verified
splunklib/ai/registry.pyis byte-identical between tags3.0.0and3.0.1.ToolRegistrybuilds its in-process tool server onmcp.server.lowlevel.Serverand registers handlers with@self._server.list_tools()and@self._server.call_tool(validate_input=True).mcp2.0.0 (2026-07-28) removed those decorators. In 2.1.1 the low-level server takeson_list_tools=/on_call_tool=constructor callbacks (orServer.add_request_handler(method, params_type, handler)), and handlers receive(ctx, params)rather than the 1.x signatures. The public package layout also changed (mcp/types.pyin 1.x,mcp/types/package in 2.x). So the migration is a small but real rewrite of the registration path, not a version bump.- #829 (merged, shipped in 3.0.1) caps the
aiextra atmcp>=1.28.1,<2.0.0, citing the mcp project's statement that 1.x is in maintenance mode and will receive security fixes. The mcp 1.x line is indeed still moving (1.29.1 on 2026-08-24, after 2.0.0). - Dependabot PR #838 (2026-09-01) proposes
mcp2.1.0 with no accompanying code change, so as it stands it cannot merge. - The client side in
splunklib/ai/tools.py(ClientSession,stdio_client,streamable_http_client,mcp.typesmodels) would also need re-validation under 2.x; the 2.1 release notes mention behaviour changes aroundoutputSchema/structuredContentfor tool results and around handler exception logging.
Why it matters downstream
Splunk apps bundle their Python dependencies at build time (ucc-gen pip-installs requirements.txt into the app's lib/), so an app that uses splunklib.ai must ship a concrete mcp version and keep it consistent with whatever the SDK expects. After #826 we cap mcp<2; after this week's review we also pin splunk-sdk==3.0.0 exactly, because the two constraints must move in lockstep: an SDK release that adopts mcp 2 would break an app still bundling mcp 1.x at import time, and vice versa. That is manageable as long as the direction is known in advance.
Questions
- Is a migration of
splunklib.aito the mcp 2.x server API planned, and if so for which release line (3.1 / 4.0)? - Will that release be dual-compatible (accept
mcp>=1.28.1,<3with a runtime branch on the low-level API), or a hard cut tomcp>=2? A dual-compatible window, even one minor release long, would let downstream apps bump the SDK andmcpin two steps rather than one. - If no migration is planned until the mcp 1.x maintenance line ends, could that be stated in the
splunklib/aiREADME next to the version requirements, so consumers can rely on it? - Would you accept a contribution for the registration-path migration? We are happy to test pre-release builds against a real deployment: six advisor agents, local stdio tools plus the remote Splunk MCP Server path, on Python 3.13.
Environment
splunk-sdk3.0.0 (PyPI), also reviewed tag3.0.1mcp1.29.1 (bundled),mcp2.1.1 (inspected)- Python 3.13, Splunk Enterprise 10.x / Splunk Cloud
- Ngôn ngữ chính
- Python
- Star
- 743
- Fork
- 387
- Merge trung bình
- 42 phút
- Pull request đã merge (30 ngày)
- 4
Hướng dẫn đóng góp
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 splunk/splunk-sdk-python
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
splunk/splunk-sdk-python#835 · 1 bình luận · 1 reaction ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
splunk/splunk-sdk-python#831 · 1 bình luận ·
-
Unverified SSL context Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
splunk/splunk-sdk-python#704 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 74/100
splunk/splunk-sdk-python#828 ·
-
Splunk core -> python3.13 Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
splunk/splunk-sdk-python#785 · 1 reaction ·
Tất cả issue của splunk/splunk-sdk-python
Issue tương tự
-
link-check link-check:sphinx-theme
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
qgis/QGIS-Documentation#11275 ·
-
bug priority:normal ready-for-dev
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
OpenHands/extensions#626 · 1 bình luận ·
-
Change observation tooltip text Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
CSCfi/sd-search-api#39 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100