diff --git a/src/components/gui/gui.jsx b/src/components/gui/gui.jsx
index d39e2283320384f35a81e0185c6d7d01f59fbe92..e3f32958d7daa6736188132fe23a0a6c7fed20f3 100644
--- a/src/components/gui/gui.jsx
+++ b/src/components/gui/gui.jsx
@@ -61,6 +61,12 @@ const GUIComponent = props => {
         backpackOptions,
         blocksTabVisible,
         cardsVisible,
+        canCreateNew,
+        canRemix,
+        canReport,
+        canSave,
+        canSaveAsCopy,
+        canShare,
         children,
         costumeLibraryVisible,
         costumesTabVisible,
@@ -164,6 +170,12 @@ const GUIComponent = props => {
                 ) : null}
                 <MenuBar
                     accountNavOpen={accountNavOpen}
+                    canCreateNew={canCreateNew}
+                    canRemix={canRemix}
+                    canReport={canReport}
+                    canSave={canSave}
+                    canSaveAsCopy={canSaveAsCopy}
+                    canShare={canShare}
                     className={styles.menuBarPosition}
                     enableCommunity={enableCommunity}
                     renderLogin={renderLogin}
@@ -305,6 +317,12 @@ GUIComponent.propTypes = {
     }),
     basePath: PropTypes.string,
     blocksTabVisible: PropTypes.bool,
+    canCreateNew: PropTypes.bool,
+    canRemix: PropTypes.bool,
+    canReport: PropTypes.bool,
+    canSave: PropTypes.bool,
+    canSaveAsCopy: PropTypes.bool,
+    canShare: PropTypes.bool,
     cardsVisible: PropTypes.bool,
     children: PropTypes.node,
     costumeLibraryVisible: PropTypes.bool,
@@ -344,6 +362,12 @@ GUIComponent.defaultProps = {
         visible: false
     },
     basePath: './',
+    canCreateNew: false,
+    canRemix: false,
+    canReport: false,
+    canSave: false,
+    canSaveAsCopy: false,
+    canShare: false,
     stageSizeMode: STAGE_SIZE_MODES.large
 };
 
diff --git a/src/components/menu-bar/menu-bar.jsx b/src/components/menu-bar/menu-bar.jsx
index 81715e607114e540fce495bbbd7e3f06288930f9..4e332ab48d28969e18def653a4f681ecec7f53bd 100644
--- a/src/components/menu-bar/menu-bar.jsx
+++ b/src/components/menu-bar/menu-bar.jsx
@@ -145,12 +145,11 @@ class MenuBar extends React.Component {
         }
     }
     handleClickNew () {
-        const canSave = this.props.canUpdateProject; // logged in
         // if canSave===true, it's safe to replace current project, since we will auto-save first
         const readyToReplaceProject =
-            canSave || confirm('Replace contents of the current project?'); // eslint-disable-line no-alert
+            this.props.canSave || confirm('Replace contents of the current project?'); // eslint-disable-line no-alert
         if (readyToReplaceProject) {
-            this.props.onClickNew(canSave);
+            this.props.onClickNew(this.props.canSave);
         }
     }
     handleClickSave () {
@@ -210,6 +209,13 @@ class MenuBar extends React.Component {
                 id="gui.menuBar.saveNow"
             />
         );
+        const saveAsCopyMessage = (
+            <FormattedMessage
+                defaultMessage="Save as a copy"
+                description="Menu bar item for saving as a copy"
+                id="gui.menuBar.saveAsCopy"
+            />
+        );
         const newProjectMessage = (
             <FormattedMessage
                 defaultMessage="New"
@@ -285,24 +291,23 @@ class MenuBar extends React.Component {
                                 place={this.props.isRtl ? 'left' : 'right'}
                                 onRequestClose={this.props.onRequestCloseFile}
                             >
-                                {/* for now, only enable New when there is no session */}
-                                {this.props.sessionExists ? (
-                                    <MenuItemTooltip
-                                        id="new"
-                                        isRtl={this.props.isRtl}
-                                    >
-                                        <MenuItem>{newProjectMessage}</MenuItem>
-                                    </MenuItemTooltip>
-                                ) : (
+                                {this.props.canCreateNew ? (
                                     <MenuItem
                                         isRtl={this.props.isRtl}
                                         onClick={this.handleClickNew}
                                     >
                                         {newProjectMessage}
                                     </MenuItem>
+                                ) : (
+                                    <MenuItemTooltip
+                                        id="new"
+                                        isRtl={this.props.isRtl}
+                                    >
+                                        <MenuItem>{newProjectMessage}</MenuItem>
+                                    </MenuItemTooltip>
                                 )}
                                 <MenuSection>
-                                    {this.props.canUpdateProject ? (
+                                    {this.props.canSave ? (
                                         <MenuItem onClick={this.handleClickSave}>
                                             {saveNowMessage}
                                         </MenuItem>
@@ -314,18 +319,18 @@ class MenuBar extends React.Component {
                                             <MenuItem>{saveNowMessage}</MenuItem>
                                         </MenuItemTooltip>
                                     )}
-                                    <MenuItemTooltip
-                                        id="copy"
-                                        isRtl={this.props.isRtl}
-                                    >
-                                        <MenuItem>
-                                            <FormattedMessage
-                                                defaultMessage="Save as a copy"
-                                                description="Menu bar item for saving as a copy"
-                                                id="gui.menuBar.saveAsCopy"
-                                            />
+                                    {this.props.canSaveAsCopy ? (
+                                        <MenuItem onClick={this.handleClickSaveAsCopy}>
+                                            {saveAsCopyMessage}
                                         </MenuItem>
-                                    </MenuItemTooltip>
+                                    ) : (
+                                        <MenuItemTooltip
+                                            id="copy"
+                                            isRtl={this.props.isRtl}
+                                        >
+                                            <MenuItem>{saveAsCopyMessage}</MenuItem>
+                                        </MenuItemTooltip>
+                                    )}
                                 </MenuSection>
                                 <MenuSection>
                                     <SBFileUploader>
@@ -432,7 +437,7 @@ class MenuBar extends React.Component {
                         </MenuBarItemTooltip>
                     </div>
                     <div className={classNames(styles.menuBarItem)}>
-                        {this.props.onShare ? shareButton : (
+                        {this.props.canShare ? shareButton : (
                             <MenuBarItemTooltip id="share-button">
                                 {shareButton}
                             </MenuBarItemTooltip>
@@ -615,7 +620,12 @@ class MenuBar extends React.Component {
 
 MenuBar.propTypes = {
     accountMenuOpen: PropTypes.bool,
-    canUpdateProject: PropTypes.bool,
+    canCreateNew: PropTypes.bool,
+    canRemix: PropTypes.bool,
+    canReport: PropTypes.bool,
+    canSave: PropTypes.bool,
+    canSaveAsCopy: PropTypes.bool,
+    canShare: PropTypes.bool,
     className: PropTypes.string,
     editMenuOpen: PropTypes.bool,
     enableCommunity: PropTypes.bool,
@@ -651,12 +661,15 @@ MenuBar.propTypes = {
     username: PropTypes.string
 };
 
+MenuBar.defaultProps = {
+    onShare: () => {}
+};
+
 const mapStateToProps = state => {
     const loadingState = state.scratchGui.projectState.loadingState;
     const user = state.session && state.session.session && state.session.session.user;
     return {
         accountMenuOpen: accountMenuOpen(state),
-        canUpdateProject: typeof user !== 'undefined',
         fileMenuOpen: fileMenuOpen(state),
         editMenuOpen: editMenuOpen(state),
         isRtl: state.locales.isRtl,
diff --git a/src/playground/render-gui.jsx b/src/playground/render-gui.jsx
index c5be243d113a20c53e99d0cd3861fd6ebe640911..c4c8c86eb824f6ec4e7ec8749a462516e2172795 100644
--- a/src/playground/render-gui.jsx
+++ b/src/playground/render-gui.jsx
@@ -37,5 +37,14 @@ export default appTarget => {
         window.onbeforeunload = () => true;
     }
 
-    ReactDOM.render(<WrappedGui backpackOptions={backpackOptions} />, appTarget);
+    ReactDOM.render(
+        <WrappedGui
+            canCreateNew
+            backpackOptions={backpackOptions}
+            canRemix={false}
+            canSave={false}
+            canSaveAsCopy={false}
+            canShare={false}
+        />,
+        appTarget);
 };