Neo — AI/ML Engineering

Official registry AI and agents

AI/ML engineering MCP server for Neo — submit tasks, track execution, and retrieve outputs.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

PYPI package neo-mcp
Claude Code
claude mcp add neo-ai-ml-engineering -e 'NEO_SECRET_KEY=<your neo_secret_key>' -e 'NEO_ENVIRONMENT=production' -e 'NEO_WORKSPACE_DIR=<NEO_WORKSPACE_DIR>' -- uvx neo-mcp==0.5.5
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "neo-ai-ml-engineering": {
            "command": "uvx",
            "args": [
                "neo-mcp==0.5.5"
            ],
            "env": {
                "NEO_SECRET_KEY": "<your neo_secret_key>",
                "NEO_ENVIRONMENT": "production",
                "NEO_WORKSPACE_DIR": "<NEO_WORKSPACE_DIR>"
            }
        }
    }
}

Environment variables

  • NEO_SECRET_KEY required secret Your Neo API secret key (starts with sk-v1-). Get one at https://heyneo.com.
  • NEO_ENVIRONMENT Neo backend environment: 'production' (default) or 'staging'.
  • NEO_WORKSPACE_DIR Project root where Neo tasks read and write files. Must be the git/project root.

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. Neo MCP
  2. How it works
  3. Install
  4. Connect to your editor
  5. Verify the connection
  6. Tools
  7. Workflow
  8. Diagnostics (pip)
  9. Environment variables
  10. Troubleshooting
  11. Example prompts

Neo MCP

Connect your AI editor to Neo's remote execution backend. Describe an AI/ML task in plain language — Neo trains the model, builds the pipeline, or runs the workload on its backend, then writes all output files directly to your local machine.

Works with Claude Code, Cursor, Windsurf, VS Code (GitHub Copilot), Zed, Continue.dev, and OpenAI Codex CLI.

Get your API key at heyneo.com/dashboard → Settings → API Keys.


How it works

Your editor  ──MCP──▶  neo-mcp server  ──API──▶  Neo backend
                            │                          │
                            └──────────────────▶  Local daemon
                                                  (writes files,
                                                   runs scripts)
  1. You describe a task: "Train a fraud detection model on data.csv"
  2. The editor calls neo_submit_task via MCP
  3. Neo's backend processes the task and sends commands to the local daemon
  4. The daemon runs on your machine — writing files, running scripts, installing packages
  5. Output files appear directly in your workspace

Files are always written to your machine, never stored remotely.

Neo can also hold your third-party API keys (GitHub, HuggingFace, Anthropic, OpenRouter, OpenAI, AWS S3, Weights & Biases, Kaggle) locally so it can use them in tasks without re-prompting — keys stay on your machine, never sent to Neo's backend. Full guide: docs/INTEGRATIONS.md.


Install

Pick pip (Python 3.11+) or npm (Node.js 18+) — both work identically from the editor's perspective.

pip
pip install neo-mcp

Use pipx install neo-mcp to avoid virtualenv conflicts.

npm
npm install -g neo-mcp

Install Node.js 18+ if needed: curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs


Connect to your editor

Replace sk-v1-YOUR_KEY with your actual API key. Pick the pip or npm command based on which you installed.

Claude Code

pip:

claude mcp add --scope user neo \
  -e NEO_SECRET_KEY=sk-v1-YOUR_KEY \
  -- neo-mcp

npm:

claude mcp add --scope user neo \
  -e NEO_SECRET_KEY=sk-v1-YOUR_KEY \
  -- neo-mcp-daemon --mcp

Open a new Claude Code session after running — tools load at session start, not mid-session.


Cursor

Open the config:

  • GUI: Ctrl+Shift+J (Windows/Linux) or Cmd+Shift+J (Mac) → Tools & MCP → New MCP Server
  • Or edit the file directly: ~/.cursor/mcp.json

pip:

{
  "mcpServers": {
    "neo": {
      "command": "neo-mcp",
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

npm:

{
  "mcpServers": {
    "neo": {
      "command": "neo-mcp-daemon",
      "args": ["--mcp"],
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

Restart Cursor after editing the file directly. Changes via the GUI apply immediately.


Windsurf

Open the config:

  • GUI: Ctrl+, (Windows/Linux) or Cmd+, (Mac) → Cascade → Plugins (MCP servers) → Manage Plugins → View raw config
  • Or edit the file directly: ~/.codeium/windsurf/mcp_config.json

pip:

{
  "mcpServers": {
    "neo": {
      "command": "neo-mcp",
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

npm:

{
  "mcpServers": {
    "neo": {
      "command": "neo-mcp-daemon",
      "args": ["--mcp"],
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

Changes apply on save — no restart needed.


VS Code (GitHub Copilot)

Requires VS Code 1.99+.

Open the config:

  • Command Palette: Ctrl+Shift+P (Windows/Linux) or Cmd+Shift+P (Mac) → "Chat: Open Chat Customizations"
  • Or edit the file directly: .vscode/mcp.json in your workspace root (create if it doesn't exist)

pip:

{
  "servers": {
    "neo": {
      "type": "stdio",
      "command": "neo-mcp",
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

npm:

{
  "servers": {
    "neo": {
      "type": "stdio",
      "command": "neo-mcp-daemon",
      "args": ["--mcp"],
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

MCP tools only work in Copilot Agent mode — switch to Agent mode in the chat panel.


Zed

Open the config:

  • Ctrl+Alt+, (Windows/Linux) or Cmd+Alt+, (Mac) — opens settings.json directly
  • Or: Command Palette → "zed: open settings"

Add inside ~/.config/zed/settings.json:

pip:

{
  "context_servers": {
    "neo": {
      "source": "custom",
      "command": {
        "path": "neo-mcp",
        "args": [],
        "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
      }
    }
  }
}

npm:

{
  "context_servers": {
    "neo": {
      "source": "custom",
      "command": {
        "path": "neo-mcp-daemon",
        "args": ["--mcp"],
        "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
      }
    }
  }
}

Changes apply on save — no restart needed.


Continue.dev

Open the config:

  • Ctrl+L (VS Code) or Ctrl+J (JetBrains) to open the sidebar → click Agent selector above the chat input → click the gear icon
  • Or edit the file directly: ~/.continue/config.yaml

pip:

mcpServers:
  - name: neo
    command: neo-mcp
    env:
      NEO_SECRET_KEY: sk-v1-YOUR_KEY

npm:

mcpServers:
  - name: neo
    command: neo-mcp-daemon
    args:
      - --mcp
    env:
      NEO_SECRET_KEY: sk-v1-YOUR_KEY

MCP tools only work in Agent mode — switch to Agent in the mode selector.


OpenAI Codex CLI

Open the config:

  • Run codex mcp to manage servers interactively via CLI
  • Or edit the file directly: ~/.codex/config.json

pip:

{
  "mcpServers": {
    "neo": {
      "command": "neo-mcp",
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

npm:

{
  "mcpServers": {
    "neo": {
      "command": "neo-mcp-daemon",
      "args": ["--mcp"],
      "env": { "NEO_SECRET_KEY": "sk-v1-YOUR_KEY" }
    }
  }
}

Verify the connection

Claude Code:

claude mcp list

You should see neo with a green checkmark. Then open a new session and ask:

"What Neo tools do you have available?"

The assistant should list neo_submit_task, neo_task_status, neo_get_messages, and more.


Tools

ToolDescription
neo_submit_taskSubmit a task to Neo. Returns thread_id immediately.
neo_list_tasksList all running and recent tasks — useful after reopening your editor.
neo_task_statusCheck status: RUNNING / COMPLETED / WAITING_FOR_FEEDBACK / PAUSED / TERMINATED.
neo_get_messagesRead full task output once status is COMPLETED. Capped at ~20 000 tokens.
neo_send_feedbackReply to Neo when it asks a clarifying question (WAITING_FOR_FEEDBACK).
neo_pause_taskPause a running task. Can be resumed.
neo_resume_taskResume a paused task.
neo_stop_taskPermanently stop and clean up a task.
neo_list_integrationsList stored third-party API keys (names only — never the value).
neo_add_integrationRegister a credential (GitHub, HuggingFace, Anthropic, OpenRouter, OpenAI, AWS S3, Weights & Biases, Kaggle) so Neo tasks can use it as an env var.
neo_test_integrationCall the provider's API to confirm a stored key is still valid.
neo_remove_integrationDelete a stored key from this machine.

Integration tools store credentials locally — file mode 0o600 under ~/.neo/integrations/ (or native tool files like ~/.aws/credentials, ~/.netrc, ~/.kaggle/kaggle.json), or your OS keyring if NEO_INTEGRATIONS_BACKEND=keyring. Keys never leave your machine. Full guide: docs/INTEGRATIONS.md.


Workflow

Standard (tasks over a few minutes):

neo_submit_task  →  returns thread_id
      ↓
neo_task_status  →  poll until COMPLETED or WAITING_FOR_FEEDBACK
      ↓
neo_get_messages →  read full output

Quick task: Pass wait_for_completion: true to neo_submit_task — it blocks until done and returns output directly. No polling needed.

Mid-task question: When status is WAITING_FOR_FEEDBACK, call neo_send_feedback with your reply. Neo resumes automatically.

Reconnecting after closing your editor:

neo_list_tasks   →  all tasks with live status + thread IDs
neo_task_status  →  check the specific task you care about
neo_get_messages →  read output of any COMPLETED task

Diagnostics (pip)

neo-mcp status      # daemon and key status
neo-mcp doctor      # full health check — identifies common issues
neo-mcp list        # list known threads
neo-mcp logs --source neo-mcp --lines 100   # MCP server logs
neo-mcp logs --source daemon --lines 100    # daemon logs

# JSON output
neo-mcp status --json
neo-mcp doctor --json

Claude Code logs:

claude mcp logs neo

Environment variables

VariableRequiredDescription
NEO_SECRET_KEYYesAPI key (sk-v1-...) from heyneo.com/dashboard → Settings → API Keys
NEO_DEPLOYMENT_IDNoPin a specific daemon UUID (auto-generated by default)
NEO_WORKSPACE_DIRNoOverride workspace directory (useful in Docker or CI)
NEO_READ_ONLYNotrue = expose only status/message tools — disables submit, stop, and pause

Troubleshooting

SymptomFix
neo-mcp: command not foundRe-run pip install neo-mcp, verify with which neo-mcp
neo-mcp-daemon: command not foundRe-run npm install -g neo-mcp, verify with which neo-mcp-daemon
✗ Failed to connect in claude mcp listRun claude mcp logs neo — most common cause is NEO_SECRET_KEY not set
Neo tools don't appearOpen a new session — tools load at session start, not mid-session
Invalid API key (401)Re-check your key at heyneo.com/dashboard → Settings → API Keys
Trial or quota ended (403)Top up at the Neo dashboard
No healthy deployments available (400)Daemon failed to auto-start — restart the MCP server and try again
Task submitted but no files writtenDaemon stopped mid-task — check neo-mcp status and restart
Status stuck on RUNNINGRun neo-mcp doctor to diagnose; restart the MCP server
Output truncated~20 000 token cap — use neo_task_status for progress, neo_get_messages for final output only

Example prompts

Train a fraud detection model on fraud.csv, optimize for recall
Build a sentiment analysis pipeline for product reviews and save the model
Analyse sales_data.csv and produce a feature importance report
Fine-tune a text classifier on my training data with 5-fold cross-validation

Neo handles the ML execution — your editor handles everything else.


For a full setup guide including all editor options: docs/GUIDE.md

Frequently asked questions

What is Neo — AI/ML Engineering?

AI/ML engineering MCP server for Neo — submit tasks, track execution, and retrieve outputs.

How do I install Neo — AI/ML Engineering?

It runs on your machine. In Claude Code: claude mcp add neo-ai-ml-engineering -e 'NEO_SECRET_KEY=<your neo_secret_key>' -e 'NEO_ENVIRONMENT=production' -e 'NEO_WORKSPACE_DIR=<NEO_WORKSPACE_DIR>' -- uvx neo-mcp==0.5.5. For other clients, paste the JSON configuration from this page into their MCP settings.

Does Neo — AI/ML Engineering need an API key?

Yes. It expects NEO_SECRET_KEY, which you set in its configuration.

Is Neo — AI/ML Engineering open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains Neo — AI/ML Engineering?

It is published by NeoAIResearch. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.