Skip to main content
Domino Blueprints

Vibe modeling with Domino

Author

Vaibhav Dhawan
Principal Solution Architect

Article topics

AI, vibe modeling, MCP servers, code assistants

Intended audience

Data scientists, data science leaders

Source code repository

Visit the repo

Overview and goals

Data scientists are already using code assistants to accelerate model development. With Domino, you can expand that approach beyond simply code and empower your assistants to help with experimentation and analysis.

This allows you to employ your assistants in every part of your workflow, while still preserving the security, governance, and reproducibility offered by the Domino platform.

How to set up vibe modeling

To get started with vibe modeling, you have a few options:

  • Working outside of Domino using your existing code assistants (like Cursor)
  • Working within Domino using VScode + Github Copilot

Within Domino

This method requires access to Github Copilot, either the free plan or a paid license. Your corporate firewall may not allow traffic to and from Github, this is needed for using copilot. URLs required for whitelisting copilot are available here.

1) Create a new compute environment in Domino, based on the “quay.io/domino/field:vibe-modeling” image. This image is based on the Domino Standard Environment (DSE), so you can also use the same pluggable workspace tools:

Python
jupyter:
title: "Jupyter (Python, R, Julia)"
iconUrl: "/assets/images/workspace-logos/Jupyter.svg"
start: [ "/opt/domino/workspaces/jupyter/start" ]
supportedFileExtensions: [ ".ipynb" ]
httpProxy:
port: 8888
rewrite: false
internalPath: "/{{ownerUsername}}/{{projectName}}/{{sessionPathComponent}}/{{runId}}/{{#if pathToOpen}}tree/{{pathToOpen}}{{/if}}"
requireSubdomain: false
jupyterlab:
title: "JupyterLab"
iconUrl: "/assets/images/workspace-logos/jupyterlab.svg"
start: [ "/opt/domino/workspaces/jupyterlab/start" ]
httpProxy:
internalPath: "/{{ownerUsername}}/{{projectName}}/{{sessionPathComponent}}/{{runId}}/{{#if pathToOpen}}tree/{{pathToOpen}}{{/if}}"
port: 8888
rewrite: false
requireSubdomain: false
vscode:
title: "vscode"
iconUrl: "/assets/images/workspace-logos/vscode.svg"
start: [ "/opt/domino/workspaces/vscode/start" ]
httpProxy:
port: 8888
requireSubdomain: false
rstudio:
title: "RStudio"
iconUrl: "/assets/images/workspace-logos/Rstudio.svg"
start: [ "/opt/domino/workspaces/rstudio/start" ]
httpProxy:
port: 8888
requireSubdomain: false

2) In your target project, create a workspace using your new environment with your desired resources/data/code.

3) When the workspace starts, click the button on the bottom left of the IDE to login to copilot.

Sign in with Copilot

4) Start the MCP server from VScode, under Extensions -> MCP servers.

Start MCP servers

5) Open up copilot chat from the command palette, or keyboard shortcut (^+Command Key+I) and start modeling!

Start modeling

Outside of Domino

Note you must use a Domino project linked to a git repo, and have the same repo available locally on your desktop.

1) Clone the MCP server git repository:

Bash / Shell
git clone https://github.com/dominodatalab/domino_mcp_server.git
cd domino_mcp_server

2) Set up the dependencies. We recommend using a package manager like uv.

Bash / Shell
uv venv
uv pip install -e .

3) Set your target environment. In the repo edit the file “.env” and include your target Domino hostname + Domino API key. Do not include a trailing “/” in the hostname.

Bash / Shell
DOMINO_API_KEY='your_api_key_here'
DOMINO_HOST='https://your-domino-instance.com'

4) Add the MCP server to your IDE. Steps 4 and 5 may change depending on which IDE you are using, consult your tool documentation for specifics. We will show the setup for Cursor and VScode as examples here.

  • Within your target git project, create a file called “.cursor/mcp.json” for Cursor or “.vcscode/mcp.json” for VScode, with the content below. Change “/full/directory/path/to” to point to the absolute path of the MCP server git repo you cloned in step 1. Alternatively you can configure this globally under “~/.cursor/mcp.json”. If you use an environment manager other than uv, adjust the command key below (use just “python” if you have no manager).
JSON
{
"mcpServers": {
"domino_server": {
"command": "uv",
"args": [
"--directory",
"/full/directory/path/to/domino_mcp_server",
"run",
"domino_mcp_server.py"
]
}
}
}

5) Add a rules file which provides the LLM with context on how and when to use the Domino MCP server. This can be created in your target project under “.cursor/rules/domino-project-rule.mdc” for Cursor, or “.github/instructions/domino.instructions.md” for VScode and can be included alongside any other rules file you may already have setup.

  • The file header is slightly different for Cursor vs VScode, but actual rules are the same. Pick the header based on your IDE and then include the “Content” section below, the end result should be a single file.
  • Cursor header
Bash / Shell
---
description: Instructions for the Domino Data Lab powered agentic coding tool in Cursor
globs:
alwaysApply: true
---
  • VScode header
Bash / Shell
---
description: Instructions for the Domino Data Lab powered agentic coding tool in VScode
applyTo: *
---
  • Content
Bash / Shell
You are a Domino Data Lab powered agentic coding tool that helps write code in addition to running tasks on the Domino Data Lab platform on behalf of the user using available tool functions provided by the domino_server MCP server. Including functions like domino_server. Whenever possible run commands as Domino jobs rather than on the local terminal.
The Domino project name and user name are required and available in a file called domino_project_settings.md which needs to be used in most tool calls by the agentic assistant.
When running a job, always check its status and results if completed and briefly explain any conclusions from the result of the job run. If a job result ever includes an mflow or experiment run URL, always share that with the user using the open_web_browser tool.
Any requests related to understanding or manipulating project data should assume a dataset file is already part of the Domino project and accessible via job runs. Always create scripts to understand and transform data via job runs. The script can assume all project data is accessible under the '/mnt/data/' directory or the '/mnt/imported/data/' directory, be sure to understand the full path to a dataset file before using it by running a job to list all folder contents recursively. Analytical outputs should be in plain text tabular format sent to stdout, this makes it easier to check results from the job run.
Always check if our local project has uncommitted changes, you must commit and push changes before attempting to run any Domino jobs otherwise Domino cannot see the new file changes.

6) To configure the target project in Domino, create a file named domino_project_settings.md in your project root with your Domino project details. Enter your target project name, and project owner in the file. This should point to a git backed project in Domino, linked to the same git repo you are working on locally.

  • This file is referenced in the rules file from step 5, so your coding assistant will read the project details from here before sending any requests to the MCP server.
Bash / Shell
# Domino project settings to use with the mcp server domino_server and its job runner functions
project_name="your-project-name"
user_name="project_owner_username"

7) Restart your IDE to pick up the MCP server configuration, and start modeling using your chat assistant in agent mode — Cursor and VScode both provide the option for switching chat to agent mode.

Cursor example

Cursor IDE example

VScode example

VScode IDE example

Continue exploring

Check out the library of example prompts and go further with the blog post and walkthrough video on Domino's blog

Sample promptsBlog post

Vaibhav Dhawan

Principal Solution Architect

I work to support large and complex customer deployments to meet their requirements for security, cost, tool integration, data and processes both in the cloud and on-prem. A number of these solutions and best practices are packaged into reusable Blueprints for our larger customer base, and some are later integrated into the Domino platform.

Domino's logo

Who is Domino?

Domino Data Lab empowers the largest AI-driven enterprises to build and operate AI at scale. Domino’s Enterprise AI Platform provides an integrated experience encompassing model development, MLOps, collaboration, and governance. With Domino, global enterprises can develop better medicines, grow more productive crops, develop more competitive products, and more. Founded in 2013, Domino is backed by Sequoia Capital, Coatue Management, NVIDIA, Snowflake, and other leading investors.

Watch Demo
  • Platform

      • AI infrastructure
      • Data management
      • AI workbench
      • MLOps
      • AI governance
      • FinOps
      • Pricing
      • Security & compliance
      • What's new
  • Solutions

    • Industries

      • Life sciences
      • Finance
      • Public sector
      • Retail
      • Manufacturing
    • Use Cases

      • Generative AI
      • Cost-effective data science
      • Self-service data science
      • Model risk management
      • Cloud data science
  • Learn

      • Events
      • Blog
      • Podcast
      • Courses and certifications
      • Data Science Dictionary
      • Documentation
      • Support
      • Demo hub
  • Company

      • About
      • Why Domino
      • Careers
      • Sustainability
      • News and press
      • Partners
      • Customers
      • Contact us

© 2026 Domino Data Lab, Inc. Made in San Francisco.

  • Do not sell my personal information
  • Privacy policy
  • Terms and conditions
  • Security
  • Legal
Home
Watch Demo
Watch Demo