Skip to main content

MCP server for the Neo AI/ML backend — submit tasks, poll status, read output

Project description

neo-mcp (pip)

Python MCP server for Neo — submit AI/ML tasks, poll status, read output, and control task lifecycle from any AI editor.

Install it, set your API key, register with your editor — that's it. Everything else is handled automatically.

Get your API key at app.heyneo.so → Settings → API Keys.


Install

pip install neo-mcp

Requires Python 3.11+.

Tip: use pipx install neo-mcp to install in an isolated environment and avoid conflicts with your project's virtualenv.


Connecting to editors

Replace sk-v1-YOUR_KEY with your actual key.


Claude Code

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

Open a new Claude Code session after running this. Neo tools load at session start.

Scope options: --scope user (global, recommended) · --scope project (writes .mcp.json in current repo) · --scope local (this machine only)

Verify it registered:

claude mcp list

Cursor

~/.cursor/mcp.json:

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

Restart Cursor after editing.


Windsurf

~/.codeium/windsurf/mcp_config.json:

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

Restart Windsurf after editing.


VS Code (GitHub Copilot)

.vscode/mcp.json in your workspace root (requires VS Code 1.99+):

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

Zed

~/.config/zed/settings.json:

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

Continue.dev

~/.continue/config.json:

{
  "mcpServers": [
    {
      "name": "neo",
      "transport": {
        "type": "stdio",
        "command": "neo-mcp",
        "env": {
          "NEO_SECRET_KEY": "sk-v1-YOUR_KEY"
        }
      }
    }
  ]
}

OpenAI Codex CLI

~/.codex/config.json:

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

Tools

Tool Description
neo_submit_task Submit an AI/ML task. Returns thread_id immediately.
neo_list_tasks List running and recent tasks — reconnects pollers automatically.
neo_task_status Check status: RUNNING / COMPLETED / WAITING_FOR_FEEDBACK / PAUSED / TERMINATED.
neo_get_messages Read full task output when COMPLETED. Capped at ~20 000 tokens.
neo_send_feedback Reply when Neo asks a question (WAITING_FOR_FEEDBACK).
neo_pause_task Pause a running task.
neo_resume_task Resume a paused task.
neo_stop_task Stop and clean up a task permanently.
neo_list_integrations List stored third-party API keys (names only — never the value).
neo_add_integration Register a GitHub PAT / HuggingFace token / Anthropic key / OpenRouter key so Neo tasks can use it as an env var.
neo_test_integration Call the provider's API to confirm a stored key is still valid.
neo_remove_integration Delete a stored key from this machine.

Integration tools store credentials locally (file 0o600 under ~/.neo/integrations/, or OS keyring with NEO_INTEGRATIONS_BACKEND=keyring). Keys never leave your machine. See the full guide at docs/INTEGRATIONS.md.


Environment variables

Variable Required Description
NEO_SECRET_KEY Yes Your Neo API key (sk-v1-...) from app.heyneo.so
NEO_DEPLOYMENT_ID No Pin a specific deployment UUID (auto-generated and persisted by default)
NEO_WORKSPACE_DIR No Override working directory (useful in Docker)
NEO_READ_ONLY No true — expose only status/message tools, disable submit/stop/pause

Troubleshooting

Symptom Fix
neo-mcp: command not found Re-run pip install neo-mcp and verify your PATH with which neo-mcp
Tools don't appear after registering Open a new session — MCP tools load at session start, not mid-session
Invalid API key (401) Re-check your key at app.heyneo.so → Settings → API Keys
Trial or quota ended (403) Top up at the Neo dashboard
Task submitted but no files written Daemon failed to start — run neo-mcp doctor to diagnose
Status stuck on RUNNING Call neo_task_status to check; run neo-mcp status to inspect the daemon

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neo_mcp-0.4.44.tar.gz (116.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neo_mcp-0.4.44-py3-none-any.whl (75.2 kB view details)

Uploaded Python 3

File details

Details for the file neo_mcp-0.4.44.tar.gz.

File metadata

  • Download URL: neo_mcp-0.4.44.tar.gz
  • Upload date:
  • Size: 116.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for neo_mcp-0.4.44.tar.gz
Algorithm Hash digest
SHA256 46bed5be2a49d6960bf18f9d124e4b2175c3011649fcfeb0dd0a25664132eab7
MD5 d9a153fc8389b2db4ce9bc455290bf20
BLAKE2b-256 9cdd937a6da44c4d16958d19e01a5b631ee3c8e1f499f9ea8b788b569b4143e2

See more details on using hashes here.

File details

Details for the file neo_mcp-0.4.44-py3-none-any.whl.

File metadata

  • Download URL: neo_mcp-0.4.44-py3-none-any.whl
  • Upload date:
  • Size: 75.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for neo_mcp-0.4.44-py3-none-any.whl
Algorithm Hash digest
SHA256 c3f12c3d8b2cd5d1bb3ee027cb48650add5605a79c0633905676c19055be496a
MD5 6a9e9b68c40ef9911c2e1fa0c1ad1029
BLAKE2b-256 f03e65e465500ab25c15072dcb0e96beffa8e5561f3dece0d1c2a74f8d8f8823

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page