@biznetgio/neo-app
NEO App CLI — one-command agent onboarding, a local MCP server, and project ops for
coding agents (Codex, Claude Code).
Quick start
npx -y @biznetgio/neo-app@latest agent setup
npx -y @biznetgio/neo-app@latest agent setup --project <project-id>
Or from a coding agent:
Fetch https://portal.app.neoapp.id/prompt.md and follow it to set this repo up on NEO App.
Commands
agent setup | Authenticate, install the skill, register the MCP server, optionally link a project, health-check |
agent doctor | Diagnose CLI, API, auth, agent MCP wiring, skill, credential perms |
agent uninstall | Remove NEO App MCP entries, skill, (on confirm) credentials |
config install-mcp [--agent codex|claude-code] | Register the neo-app MCP server with detected agents |
login | Authenticate with a NEO App API key (kap_...) |
link <project-id> | Link this repo to a project (writes .neo-app.json) |
project list | List projects in your organization (find ids to link) |
status / whoami | Show account, org, environment, linked project |
mcp | Run the local stdio MCP server (agents launch this) |
All mutating commands are idempotent, back up config before editing, and never write a
token into agent/MCP configuration.
Environment
The CLI talks to your NEO App control-plane — production by default. Set NEO_APP_URL
to point it at a different control-plane (e.g. a local dev server).
Authentication
API key (kap_...) for now. Create one in the portal (Settings → API tokens).
- Interactive:
neo-app login prompts (hidden) and stores the key at
~/.config/neo-app/credentials.json (mode 0600), scoped per control-plane URL.
- Headless/CI:
export NEO_APP_TOKEN=kap_... — read from the environment, never persisted.
The key is kept out of every agent/MCP config file; the MCP server reads it from the
credential store (or NEO_APP_TOKEN) at runtime.
MCP tools
neo_whoami, neo_list_projects, neo_get_project, neo_list_services,
neo_get_deployment, neo_deploy, neo_get_logs, neo_list_variables,
neo_set_variable, neo_scale_service, neo_list_approvals, neo_get_approval.
Read-only tools are annotated readOnlyHint. Production/scaling/etc. operations may
return a pending_approval result — that is the org approval policy working, not an error.
Develop
npm install
npm test
node bin/neo-app.js --help