diff --git a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
index 37304766d6927a4ba653b039b791fe631939d83e..93a5d304f7e7851b72801622416030063eb0e445 100644
--- a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
+++ b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
@@ -422,7 +422,8 @@ QbsBuildStepFactory::QbsBuildStepFactory(QObject *parent) :
 QList<Core::Id> QbsBuildStepFactory::availableCreationIds(ProjectExplorer::BuildStepList *parent) const
 {
     if (parent->id() == ProjectExplorer::Constants::BUILDSTEPS_BUILD
-            && qobject_cast<QbsBuildConfiguration *>(parent->parent()))
+            && qobject_cast<QbsBuildConfiguration *>(parent->parent())
+            && qobject_cast<QbsProject *>(parent->target()->project()))
         return QList<Core::Id>() << Core::Id(Constants::QBS_BUILDSTEP_ID);
     return QList<Core::Id>();
 }
@@ -437,7 +438,8 @@ QString QbsBuildStepFactory::displayNameForId(const Core::Id id) const
 bool QbsBuildStepFactory::canCreate(ProjectExplorer::BuildStepList *parent, const Core::Id id) const
 {
     if (parent->id() != Core::Id(ProjectExplorer::Constants::BUILDSTEPS_BUILD)
-            || !qobject_cast<QbsBuildConfiguration *>(parent->parent()))
+            || !qobject_cast<QbsBuildConfiguration *>(parent->parent())
+            || !qobject_cast<QbsProject *>(parent->target()->project()))
         return false;
     return id == Core::Id(Constants::QBS_BUILDSTEP_ID);
 }
diff --git a/src/plugins/qbsprojectmanager/qbsinstallstep.cpp b/src/plugins/qbsprojectmanager/qbsinstallstep.cpp
index 2215b8a559c7504b10662bd1e1c2470ddb704827..b08b11ad5b2a79941e16229e84783da7b3411949 100644
--- a/src/plugins/qbsprojectmanager/qbsinstallstep.cpp
+++ b/src/plugins/qbsprojectmanager/qbsinstallstep.cpp
@@ -363,7 +363,8 @@ QbsInstallStepFactory::QbsInstallStepFactory(QObject *parent) :
 QList<Core::Id> QbsInstallStepFactory::availableCreationIds(ProjectExplorer::BuildStepList *parent) const
 {
     if (parent->id() == ProjectExplorer::Constants::BUILDSTEPS_DEPLOY
-            && qobject_cast<ProjectExplorer::DeployConfiguration *>(parent->parent()))
+            && qobject_cast<ProjectExplorer::DeployConfiguration *>(parent->parent())
+            && qobject_cast<QbsProject *>(parent->target()->project()))
         return QList<Core::Id>() << Core::Id(Constants::QBS_INSTALLSTEP_ID);
     return QList<Core::Id>();
 }
@@ -378,7 +379,8 @@ QString QbsInstallStepFactory::displayNameForId(const Core::Id id) const
 bool QbsInstallStepFactory::canCreate(ProjectExplorer::BuildStepList *parent, const Core::Id id) const
 {
     if (parent->id() != Core::Id(ProjectExplorer::Constants::BUILDSTEPS_DEPLOY)
-            || !qobject_cast<ProjectExplorer::DeployConfiguration *>(parent->parent()))
+            || !qobject_cast<ProjectExplorer::DeployConfiguration *>(parent->parent())
+            || !qobject_cast<QbsProject *>(parent->target()->project()))
         return false;
     return id == Core::Id(Constants::QBS_INSTALLSTEP_ID);
 }