I’d like to be able to programatically setup a site to discourage crawling by search engines

You’re looking for blog_public:

update_option( 'blog_public', '0' );