Deepnote's cloud features should work the same for any agent. That means VS Code with Copilot agent mode, Cursor's agent, and Claude Code or Codex in the integrated terminal. This issue sets up the pieces they all need; the buttons are tracked separately.
Current state
- The bundled CLI (
dist/deepnoteCli.cjs, built from @deepnote/cli@0.8.0) is only used to run install-skills (src/kernels/deepnote/deepnoteAgentSkillsManager.node.ts). It isn't on PATH, so when the skill tells an agent to run deepnote …, the command fails.
- 0.8.0 has no
publish.
- No MCP server is registered. The extension only uses
vscode.lm.registerTool (src/standalone/chat/extension.node.ts), and Cursor ignores those tools.
- The extension has no way to store or read a Deepnote API token.
- Skills are installed only when a kernel starts, and only into
workspaceFolders[0].
configure_python_notebook and configure_non_python_notebook are registered in code but missing from contributes.languageModelTools.
Tasks
Token (.env file)
CLI
MCP
Skills and agent tools
Done when
In each environment below, an agent can run deepnote sync --dry-run -o json or call deepnote_sync successfully in a fresh workspace, after only "Set API Token" (manual check):
Blocked by deepnote/deepnote#543 and deepnote/deepnote#544. Related to #318.
🤖 Generated with Claude Code
Deepnote's cloud features should work the same for any agent. That means VS Code with Copilot agent mode, Cursor's agent, and Claude Code or Codex in the integrated terminal. This issue sets up the pieces they all need; the buttons are tracked separately.
Current state
dist/deepnoteCli.cjs, built from@deepnote/cli@0.8.0) is only used to runinstall-skills(src/kernels/deepnote/deepnoteAgentSkillsManager.node.ts). It isn't on PATH, so when the skill tells an agent to rundeepnote …, the command fails.publish.vscode.lm.registerTool(src/standalone/chat/extension.node.ts), and Cursor ignores those tools.workspaceFolders[0].configure_python_notebookandconfigure_non_python_notebookare registered in code but missing fromcontributes.languageModelTools.Tasks
Token (
.envfile)DEEPNOTE_TOKEN=in.envat the workspace or sync root..envis in.gitignore, asking before editing that file..envto know whether the user is signed in. Features that need a token prompt for one when it's missing..envthemselves (Get deepnote sync and publish ready for the editor and agents deepnote#543, Add sync, publish and app tools to the local MCP server deepnote#544).CLI
deepnoteon PATH for integrated terminals, without saving it to disk. Use a launcher in global storage that runsdist/deepnoteCli.cjswithELECTRON_RUN_AS_NODE=1, added viaenvironmentVariableCollection. Check that Cursor's agent terminal picks it up.MCP
@deepnote/mcpthe same way the CLI is bundled.mcpServerDefinitionProviders/vscode.lm.registerMcpServerDefinitionProvider. That needs VS Code 1.101+, and the engine is currently^1.95, so turn it on only where it's supported..cursor/mcp.json.deepnote.json) and the.envtoken.Skills and agent tools
deepnoteis on PATH, that MCP tools are available, and that the token lives in.env. Agents must never ask for the token or print it.package.json.Done when
In each environment below, an agent can run
deepnote sync --dry-run -o jsonor calldeepnote_syncsuccessfully in a fresh workspace, after only "Set API Token" (manual check):Blocked by deepnote/deepnote#543 and deepnote/deepnote#544. Related to #318.
🤖 Generated with Claude Code