diff --git a/apps.api.php b/apps.api.php
index 01eac52..4b30528 100755
--- a/apps.api.php
+++ b/apps.api.php
@@ -74,6 +74,7 @@ function hook_install_tasks($install_state) {
   $tasks = array();
   require_once(drupal_get_path('module', 'apps') . '/apps.profile.inc');
   $server = array(
+    'title' => 'App Server Name'
     'machine name' => 'apps_server_machine_name',
     'default apps' => array(
       'app_machine_name_1',
diff --git a/apps.profile.inc b/apps.profile.inc
index 0f1b02b..f324f85 100755
--- a/apps.profile.inc
+++ b/apps.profile.inc
@@ -14,11 +14,11 @@ function apps_profile_install_tasks($install_state, $apps_server) {
   // Only use apps forms during interactive installs.
   $tasks = array();
   if ($install_state['interactive']) {
-    $_SESSION['apps_server'] = $apps_server;
     $apps_server_name = $apps_server['machine name'];
+    $_SESSION['apps_servers'][$apps_server_name] = $apps_server;
     $tasks = array(
       'apps_profile_apps_select_form_' . $apps_server_name => array(
-        'display_name' => st('Install Apps'),
+        'display_name' => apps_profile_get_server_name($apps_server),
         'type' => 'form',
         'function' => 'apps_profile_apps_select_form',
       ),
@@ -62,7 +62,9 @@ function apps_profile_apps_select_form($form, $form_state, &$install_state) {
 
   // If there is no internet things get in an unfixable state. Use try->catch
   try {
-    $_SESSION['apps_manifest'] = apps_apps($_SESSION['apps_server']['machine name']);
+    $apps_server_name = str_replace('apps_profile_apps_select_form_', '', $form_state['build_info']['args'][0]['active_task']);
+    $_SESSION['apps_manifest'] = apps_apps($apps_server_name);
+    $_SESSION['apps_server'] = $_SESSION['apps_servers'][$apps_server_name];
   }
   catch (Exception $e) {
     $form['info'] = array(
@@ -80,6 +82,7 @@ function apps_profile_apps_select_form($form, $form_state, &$install_state) {
     drupal_set_message('<b>Unable to contact Apps Server.</b><br> For some reason we were unable to contact the apps server.', 'error');
   }
   else {
+    drupal_set_title(apps_profile_get_server_name($_SESSION['apps_server']));
     $form['actions'] = array('#type' => 'actions', '#weight' => 3);
     foreach($_SESSION['apps_manifest'] as $name => $app) {
       if ($name != '#theme') {
@@ -383,3 +386,14 @@ function apps_profile_check_dependencies($module_list) {
   // If we make it this far then everything is good.
   return TRUE;
 }
+
+/**
+ * Generate the title of the Apps install screen
+ */
+function apps_profile_get_server_name($server) {
+  $t = get_t();
+  return isset($server['title'])
+             ? $t('Install @name Apps', array('@name' => $server['title']))
+             : $t('Install Apps');
+
+}
\ No newline at end of file
