AI autocomplete not working in Marimo notebook extension

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Cursor’s AI tab autocomplete doesn’t work when editing cells in Marimo notebooks (using the official Marimo VS Code extension).

What works:

AI autocomplete in regular .py files ✓
Regular (non-AI) autocomplete in Marimo notebook cells ✓

What doesn’t work:

AI autocomplete in Marimo notebook cells ✗

Environment:

Cursor: 1.105.1
Marimo extension: 0.9.11
macOS arm64
Fresh Cursor install with minimal extensions

Possible cause: A Marimo developer suggested it might be because the extension registers its language as mo-python to avoid conflicts with native LSPs. But I haven’t been able to confirm this is the issue.

Steps to Reproduce

  1. Install the Marimo VS Code extension (marimo-team.vscode-marimo)
  2. Open any Python file as a Marimo notebook (Cmd+Shift+P → “Open as marimo notebook”)
  3. Start typing in a notebook cell
  4. AI tab autocomplete does not appear

Note: Regular (non-AI) autocomplete works fine in the same cells. AI autocomplete works normally in regular .py files.

Expected Behavior

AI tab autocomplete should appear in Marimo notebook cells, the same as it does in regular Python files.

Operating System

MacOS

Version Information

Version: 2.4.23
VSCode Version: 1.105.1
Commit: 379934e04d2b3290cf7aefa14560f942e4212920
Date: 2026-01-29T21:24:23.350Z
Build Type: Stable
Release Track: Default
Electron: 39.2.7
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Darwin arm64 25.2.0

For AI issues: which model did you use?

Tab

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey, thanks for the report.

Can you share a couple details so we can debug?

  1. Request ID: Open the Output panel, pick Cursor Tab from the dropdown, find the line that says “CPP Request Log with id”, and copy the UUID from there.
  2. Settings check: Make sure Cursor Tab is enabled: Cursor Settings > Tab > Cursor Tab (it should be on).

If you can send the Request ID, I’ll pass it to the team. This looks like a real compatibility issue with extensions that register custom language IDs.

For now, as a workaround: if you really need tab completion in Marimo, try editing the code in normal .py files, then convert it to a notebook.

Thanks For your quick reply.

Here’s the request ID:
39a7da6e-29a9-4eff-8a00-ce183834f502

And I double checked and Curstor Tab is enabled.

Appreciate the help.