How do I intercept a press on "Save" and get the nid?
If you read through node_form() you will see that the Submit button has its own submit handler:

$form['actions']['submit'] = array(
  '#type' =&gt; 'submit',
  '#access' =&gt; variable_get('node_preview_' . $node-&gt;type, DRUPAL_OPTIONAL) != DRUPAL_REQUIRED || (!form_get_errors() &amp;&amp; isset($form_state['node_preview'])),
  '#value' =&gt; t('Save'),
  '#weight' =&gt; 5,
  '#submit' =&gt; array('node_form_submit'),
);


so you need to add your own submit handler to this

function MYMODULE_form_node_form_alter(&amp;$form, &amp;$form_state) {
  $form['actions']['submit']['#submit'][] = 'MYMODULE_node_form_submit';
}


Then inside that $form_state['nid'] or $form_state['node'] should have what you need.