Cursor AgentService native transport needs MCP tool bridging and resilient stream handling
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start by comparing the feat/cursor-native-tools-mcp branch with current master and reviewing the existing Cursor AgentService transport entry points. Validate HTTP/2 streaming, MCP tool round-trips, sanitized tool names, cleanup, and the referenced protocol and live provider-doctor coverage; done means a focused native transport/tool-bridge pull request that preserves the independent model descriptor work.
Written by the indexing model from the issue text.
Description
Summary
Jcode's Cursor provider needs a supported native AgentService transport path for MCP-enabled runs. The implementation in the contributor branch adds the missing native HTTP/2 stream handling and native tool round-trip needed for Cursor to execute jcode MCP tools reliably.
Scope
The proposed work covers:
- Current Cursor AgentService HTTP/2 framing and dated CLI build metadata.
- Connect gzip/content-encoding handling, KV initialization, and request-context acknowledgement.
- Streaming text/reasoning response decoding and clean stream shutdown.
- Native tool-call routing to jcode MCP and NativeToolResult responses with stable dispatch identity.
- Sanitized, collision-safe tool names at the Cursor boundary while preserving original server-qualified names internally.
- Bounded transport and turn cleanup behavior with focused protocol and live provider-doctor coverage.
This complements #1226, which focuses on preserving Cursor base model, fast, effort, and thinking semantics, and #575, which tracks the ACP provider path. The model descriptor work should remain independently reviewable and must not be lost when this transport is rebased.
Reference
Implementation branch: https://github.com/yansigit/jcode/tree/feat/cursor-native-tools-mcp
The branch will be rebased onto current master, narrowed to the native transport/tool bridge, and submitted as a focused pull request. Live validation has covered native streaming, MCP remediation, large contexts, and tool calls where the installed Cursor client permits the flow.
- Dominant language
- Rust
- Stars
- 19.9k
- Forks
- 2.3k
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 30
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from 1jehuang/jcode
-
OrcaRouter is in the login catalog but has no ProviderChoice, so it can't be selected explicitly Open
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
-
Session::save() skips untouched sessions, so is_debug and canary never persist (4 failing tests) Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
area: providers autonomous: clear bug triage: reproducible
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
area: providers autonomous: no bug triage: needs-decision
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
kwakseongjae/auto-hwp#319 ·
-
area:cli bug filter-quality good first issue priority:medium
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
bevyengine/bevy#25861 ·
-
comp-datalake
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ClickHouse/ClickHouse#121222 ·
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100