What does -server option do? What does the -server option do in bitcoin node? https://en.bitcoin.it/wiki/Running_Bitcoin says 'Accept command line and JSON-RPC commands'. However I can't see any difference whatsoever. In both cases I'm able to curl my request as well as use the cli.
As stated by the help, 

  -server
       Accept command line and JSON-RPC commands


You may however also have to check if this configuration parameter has been enabled by your local configuration, usually a file called bitcoin.conf, unless configured using the -conf parameter to bitcoind.

On linux builds, this should default to ~/.bitcoin/bitcoin.conf, on Mac OS X ~/Library/Application\ Support/Bitcoin/bitcoin.conf

In this file, you can explicitly configure the server as off using the server configuration parameter.

server=0


You can alternatively pass a parameter as 1 (enabled) or 0 (disabled)

bitcoind -server=0


You should not be able to access your server assuming this has been toggled to 0.

The headless daemon bitcoind has the JSON-RPC API enabled by default, the GUI bitcoin-qt has it disabled by default.