diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
index 9cec81f76135944fd32d9842bb87c227165df1b6..aa7dab53ffe90edff3658b0e8b601e10a3dc0805 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
@@ -67,6 +67,7 @@ QmlProjectRunConfiguration::QmlProjectRunConfiguration(Internal::QmlProjectTarge
     m_isEnabled(false)
 {
     ctor();
+    updateQtVersions();
 }
 
 QmlProjectRunConfiguration::QmlProjectRunConfiguration(Internal::QmlProjectTarget *parent, QmlProjectRunConfiguration *source) :
@@ -78,6 +79,7 @@ QmlProjectRunConfiguration::QmlProjectRunConfiguration(Internal::QmlProjectTarge
 {
     ctor();
     setMainScript(source->m_scriptFile);
+    updateQtVersions();
 }
 
 bool QmlProjectRunConfiguration::isEnabled(ProjectExplorer::BuildConfiguration *bc) const
@@ -158,6 +160,11 @@ QString QmlProjectRunConfiguration::workingDirectory() const
     return projectFile.absolutePath();
 }
 
+int QmlProjectRunConfiguration::qtVersionId() const
+{
+    return m_qtVersionId;
+}
+
 Qt4ProjectManager::QtVersion *QmlProjectRunConfiguration::qtVersion() const
 {
     if (m_qtVersionId == -1)
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
index 9cae93926283fb9ca1892b316df153a6b490907a..7381fa1b54586f49db6183fae68c3f846a026890 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
@@ -62,6 +62,9 @@ class QMLPROJECTMANAGER_EXPORT QmlProjectRunConfiguration : public ProjectExplor
     Q_OBJECT
     friend class Internal::QmlProjectRunConfigurationFactory;
 
+    // used in qmldumptool.cpp
+    Q_PROPERTY(int qtVersionId READ qtVersionId)
+
 public:
     QmlProjectRunConfiguration(Internal::QmlProjectTarget *parent);
     virtual ~QmlProjectRunConfiguration();
@@ -74,6 +77,7 @@ public:
     QString observerPath() const;
     QStringList viewerArguments() const;
     QString workingDirectory() const;
+    int qtVersionId() const;
     Qt4ProjectManager::QtVersion *qtVersion() const;
 
     // RunConfiguration
diff --git a/src/plugins/qt4projectmanager/qmldumptool.cpp b/src/plugins/qt4projectmanager/qmldumptool.cpp
index 99e598c30af9352ff7418d5e0533a1ce487d9792..d0dddbe26ac9792c3dc4339f3965c0db7235946b 100644
--- a/src/plugins/qt4projectmanager/qmldumptool.cpp
+++ b/src/plugins/qt4projectmanager/qmldumptool.cpp
@@ -36,8 +36,10 @@
 
 #include <projectexplorer/project.h>
 #include <projectexplorer/projectexplorer.h>
+#include <projectexplorer/runconfiguration.h>
 #include <qtconcurrent/runextensions.h>
 #include <qmljs/qmljsmodelmanagerinterface.h>
+#include <utils/qtcassert.h>
 #include <QDesktopServices>
 #include <QCoreApplication>
 #include <QDir>
@@ -147,6 +149,17 @@ static QtVersion *qtVersionForProject(ProjectExplorer::Project *project)
         return 0;
     }
 
+    if (project && project->id() == QLatin1String("QmlProjectManager.QmlProject")) {
+        // We cannot access the QmlProject interfaces here, therefore use the metatype system
+        QTC_ASSERT(project->activeTarget() && project->activeTarget()->activeRunConfiguration(), return 0);
+        QVariant variant = project->activeTarget()->activeRunConfiguration()->property("qtVersionId");
+        QTC_ASSERT(variant.isValid() && variant.canConvert(QVariant::Int), return 0);
+        QtVersion *version = QtVersionManager::instance()->version(variant.toInt());
+        if (version && version->isValid())
+            return version;
+        return 0;
+    }
+
     // else, find any desktop Qt version that has qmldump, or - if there isn't any -
     // one that could build it
     QtVersion *desktopQt = 0;