MCPcopy Index your code
hub / github.com/deepnote/vscode-deepnote

github.com/deepnote/vscode-deepnote @v1.5.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.5.0 ↗ · + Follow
9,828 symbols 33,351 edges 1,312 files 746 documented · 8%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Deepnote cover image

CI codecov VS Code Marketplace

WebsiteDocsChangelogXExamplesCommunity

Deepnote in VS Code, Cursor, Windsurf, and Antigravity

A powerful Visual Studio Code, Cursor, Windsurf, and Antigravity extension that brings Deepnote notebook capabilities directly into your favorite editor. Work with sleek AI notebooks featuring SQL blocks, database integrations, and reactive blocks - all within your IDE.

Deepnote Projects

Run Deepnote locally inside your IDE and unlock the next generation of data workflows:

  • Rich block types: Combine Python, Markdown, data visualizations, tables, and more — all in one place
  • SQL blocks: Run SQL queries out of the box, no extensions needed
  • Native database connections: Securely connect to Snowflake, BigQuery, Postgres, and 60+ other sources via VS Code’s encrypted SecretStorage API
  • Init notebooks: Auto-run setup code (dependencies, env setup) before execution
  • Smart requirements: Generate requirements.txt automatically for reproducible runs
  • Deepnote kernel: Fully .ipynb compatible, tuned for modern data workflows
  • Cloud collaboration: Switch between local VS Code and Deepnote Cloud to collaborate live on the same file with your team

Getting started

  1. Open the extensions tab and Search for Deepnote
  2. Or alternatively, press Cmd+P or Ctrl+P to open the command palette.
  3. Type ext install Deepnote.vscode-deepnote
  4. Press Enter

Or install from the VS Code Marketplace

Requirements

  • Visual Studio Code 1.95.0 or higher
  • Python 3.10 or higher (for running notebooks)

Opening your first Deepnote notebook

  1. Open a folder containing .deepnote project files
  2. Look for the Deepnote icon in the Activity Bar (sidebar)
  3. Click on a notebook in the Deepnote Explorer to open it
  4. Select a Python kernel when prompted
  5. Start coding!

Usage

Command palette

Open the Command Palette (Cmd+Shift+P or Ctrl+Shift+P) and type Deepnote to see all available commands:

Command Description
Deepnote: Refresh Explorer Refresh the Deepnote project explorer
Deepnote: Open Notebook Open a specific notebook from a Deepnote project
Deepnote: Open File Open the raw .deepnote project file
Deepnote: Reveal in Explorer Show active notebook information in the explorer
Deepnote: Manage Integrations Configure database connections and credentials
Deepnote: New Project Create a new Deepnote project
Deepnote: Import Notebook Import an existing notebook into your project
Notebook: Select Notebook Kernel Select or switch kernels within your notebook
Notebook: Change Cell Language Change the language of the cell currently in focus
Deepnote: Enable Snapshots Enable snapshot mode for the current workspace

Database integrations

Configure database connections for SQL blocks:

  1. Open Command Palette
  2. Run Deepnote: Manage Integrations
  3. Add your database credentials (PostgreSQL, BigQuery, etc.)
  4. Use SQL blocks in your notebooks with the configured integrations

Credentials are securely stored using VS Code's encrypted storage and never leave your machine.

Working with SQL Blocks

SQL blocks allow you to query databases directly from your notebooks:

-- Query your PostgreSQL database
SELECT * FROM users WHERE created_at > '2024-01-01'

Results are displayed as interactive tables that you can explore and export.

Snapshot mode

Snapshot mode gives you a historical, portable record of all notebook executions without polluting your main project files. This makes it easier to work with Git since outputs are stored separately from your source code.

How it works:

  • Execution outputs are saved to a snapshots/ folder alongside your project
  • Your main .deepnote file stays clean (no outputs), making diffs readable
  • Each "Run All" execution creates a timestamped snapshot for historical tracking
  • Running individual cells updates only the latest snapshot

To enable:

  1. Open Command Palette (Cmd+Shift+P or Ctrl+Shift+P)
  2. Run Deepnote: Enable Snapshots

Once enabled, snapshots are automatically created when you execute notebooks. You can add the snapshots/ folder to .gitignore to keep outputs local, or commit them to share execution history with your team.

Need help?

Contributing

Want to contribute? Check out our Contributing guide for detailed setup instructions.

Third-party licenses

This project includes the following third-party packages with notable licenses:


Built with 💙

Extension points exported contracts — how you extend this code

JupyterServerCollection (Interface)
(no doc) [132 implementers]
src/api.internal.d.ts
JupyterServerCollection (Interface)
(no doc) [133 implementers]
src/api.d.ts
IDebuggingDelegate (Interface)
(no doc) [6 implementers]
src/notebooks/debugger/debuggingTypes.ts
IDisposable (Interface)
(no doc) [133 implementers]
src/test/datascience/jupyterServer.node.ts
IKernelSessionFactory (Interface)
(no doc) [26 implementers]
src/kernels/types.ts
ILogger (Interface)
(no doc) [6 implementers]
src/platform/logging/types.ts
IDataViewerFactory (Interface)
(no doc) [25 implementers]
src/webviews/extension-side/dataviewer/types.ts
IGeneratedCodeStorageFactory (Interface)
(no doc) [5 implementers]
src/interactive-window/editor-integration/types.ts

Core symbols most depended-on inside this repo

push
called by 1480
src/platform/common/types.ts
resolve
called by 829
src/platform/vscode-path/path.ts
file
called by 806
src/test/mocks/vsc/uri.ts
toString
called by 792
src/platform/common/platform/errors.ts
get
called by 750
src/kernels/types.ts
info
called by 611
src/platform/logging/types.ts
map
called by 604
src/platform/common/utils/lazy.ts
join
called by 545
src/platform/vscode-path/path.ts

Shape

Method 5,014
Function 2,369
Class 1,667
Interface 666
Enum 111
Route 1

Languages

TypeScript98%
Python2%

Modules by API surface

src/test/mocks/vsc/extHostedTypes.ts327 symbols
types/slickgrid/index.d.ts117 symbols
src/platform/common/utils/localize.ts108 symbols
src/kernels/types.ts103 symbols
src/platform/common/utils/map.ts95 symbols
src/platform/api/python-envs/api.ts89 symbols
src/test/datascience/notebook/helper.ts87 symbols
src/webviews/webview-side/ipywidgets/kernel/kernel.ts69 symbols
src/notebooks/deepnote/converters/inputConverters.ts67 symbols
src/interactive-window/commands/commandRegistry.ts63 symbols
src/interactive-window/editor-integration/codewatcher.ts61 symbols
types/react-data-grid.d.ts59 symbols

Datastores touched

(mongodb)Database · 1 repos
mydbDatabase · 1 repos
dbDatabase · 1 repos
db2Database · 1 repos

For agents

$ claude mcp add vscode-deepnote \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact