nebyoulous mcp:serve runs an MCP server over stdio on your machine. It
exposes two sets of tools as one server:
- Local tools that run in the CLI process: list mounted volumes, scan a
folder, peek FITS headers, classify frames, and plan and run a sync. See
Local tools.
- Every hosted tool, proxied to
https://api.nebyoulous.space/mcp with
your CLI session.
Use it when your assistant needs files on your machine, for example “Scan the
card in the reader and upload the lights to a new set for M42.” Otherwise the
hosted server is simpler.
Before you start
Install the CLI and sign in:
The server reuses that session and refreshes it as needed. If you haven’t
signed in, mcp:serve exits right away and tells you to run
nebyoulous login.
Add it to your client
Claude Code
Claude Desktop
Cursor
VS Code
Add this to claude_desktop_config.json (Settings → Developer → Edit
Config), then restart Claude Desktop: Add this to .cursor/mcp.json in a project, or to ~/.cursor/mcp.json: Add this to .vscode/mcp.json:
Use the colon form, mcp:serve, as a single argument. mcp serve with a
space prints the topic help and exits, and the client reports that the
server closed.
If the client can’t find nebyoulous, use the full path from
which nebyoulous as the command. GUI apps often don’t inherit your shell’s
PATH.
How it behaves
- Hosted tools load at startup. The server asks the API for its tool list
when it starts, so restart it after a Nebyoulous release to pick up new
tools.
- Destructive local tools are marked.
executeSync and executeLocalSync
carry destructiveHint, so your client asks before they run. The other
local tools are read-only.
- The source is never changed. Sync copies or uploads from the source
folder and never moves or deletes anything in it.
- Other APIs. Set
NEBYOULOUS_API_URL in the server’s environment to point
it at another API, and sign in with the same variable set. The CLI keeps one
session at a time, so that sign-in replaces your production one.