diff --git a/bean.info b/bean.info
index e0833eb..4c8ef6f 100644
--- a/bean.info
+++ b/bean.info
@@ -9,6 +9,7 @@ files[] = views/views_handler_filter_bean_type.inc
 files[] = views/views_handler_field_bean_type.inc
 files[] = views/views_handler_field_bean_edit_link.inc
 files[] = views/views_handler_field_bean_delete_link.inc
+files[] = views/views_handler_field_bean_operations.inc
 files[] = bean.test
 dependencies[] = entity
 dependencies[] = ctools
diff --git a/includes/bean.pages.inc b/includes/bean.pages.inc
index b7ac3f1..2bca4bb 100644
--- a/includes/bean.pages.inc
+++ b/includes/bean.pages.inc
@@ -62,6 +62,11 @@ function bean_add_page() {
 }
 
 function bean_list() {
+
+  if( module_exists('views') ) {
+    return views_embed_view('bean_blocks_overview');
+  }
+  
   $rows = array();
 
   // Build the sortable table header.
diff --git a/views/bean.views.inc b/views/bean.views.inc
index 76d8a2b..2f281c2 100644
--- a/views/bean.views.inc
+++ b/views/bean.views.inc
@@ -30,4 +30,12 @@ function bean_views_data_alter(&$data) {
       'handler' => 'views_handler_field_bean_delete_link',
     ),
   );
+
+  $data['bean']['operations'] = array(
+    'title' => t('Operations links'),
+    'help' => t('Display all the available operations links for the block.'),
+    'field' => array(
+      'handler' => 'views_handler_field_bean_operations',
+    ),
+  );
 }
diff --git a/views/bean.views_default.inc b/views/bean.views_default.inc
new file mode 100644
index 0000000..251b6d5
--- /dev/null
+++ b/views/bean.views_default.inc
@@ -0,0 +1,175 @@
+<?php
+
+/**
+ * Views for the default block UI.
+ */
+
+/**
+ * Implements hook_views_default_views().
+ */
+function bean_views_default_views() {
+  $views = array();
+
+  $view = new view();
+	$view->name = 'bean_blocks_overview';
+	$view->description = '';
+	$view->tag = 'default';
+	$view->base_table = 'bean';
+	$view->human_name = 'Bean Blocks Overview';
+	$view->core = 7;
+	$view->api_version = '3.0';
+	$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
+
+	/* Display: Master */
+	$handler = $view->new_display('default', 'Defaults', 'default');
+	$handler->display->display_options['title'] = 'Bean Blocks Overview';
+	$handler->display->display_options['use_ajax'] = TRUE;
+	$handler->display->display_options['access']['type'] = 'perm';
+  $handler->display->display_options['access']['perm'] = 'view bean page';
+	$handler->display->display_options['cache']['type'] = 'none';
+	$handler->display->display_options['query']['type'] = 'views_query';
+	$handler->display->display_options['exposed_form']['type'] = 'basic';
+  $handler->display->display_options['exposed_form']['options']['reset_button'] = TRUE;
+  $handler->display->display_options['exposed_form']['options']['autosubmit'] = 0;
+  $handler->display->display_options['exposed_form']['options']['autosubmit_hide'] = 1;
+	$handler->display->display_options['pager']['type'] = 'full';
+	$handler->display->display_options['pager']['options']['items_per_page'] = '50';
+	$handler->display->display_options['style_plugin'] = 'table';
+	$handler->display->display_options['style_options']['columns'] = array(
+	  'bid' => 'bid',
+	  'label' => 'label',
+	  'delta' => 'delta',
+	  'language' => 'language',
+	  'title' => 'title',
+	);
+	$handler->display->display_options['style_options']['default'] = 'title';
+	$handler->display->display_options['style_options']['info'] = array(
+	  'bid' => array(
+	    'sortable' => 1,
+	    'default_sort_order' => 'asc',
+	    'align' => '',
+	    'separator' => '',
+	    'empty_column' => 0,
+	  ),
+	  'label' => array(
+	    'sortable' => 1,
+	    'default_sort_order' => 'asc',
+	    'align' => '',
+	    'separator' => '',
+	    'empty_column' => 0,
+	  ),
+	  'delta' => array(
+	    'sortable' => 0,
+	    'default_sort_order' => 'asc',
+	    'align' => '',
+	    'separator' => '',
+	    'empty_column' => 0,
+	  ),
+	  'language' => array(
+	    'align' => '',
+	    'separator' => '',
+	    'empty_column' => 0,
+	  ),
+	  'title' => array(
+	    'sortable' => 1,
+	    'default_sort_order' => 'asc',
+	    'align' => '',
+	    'separator' => '',
+	    'empty_column' => 0,
+	  ),
+	);
+	/* Feld: Block: Internal, numeric block ID */
+	$handler->display->display_options['fields']['bid']['id'] = 'bid';
+	$handler->display->display_options['fields']['bid']['table'] = 'bean';
+	$handler->display->display_options['fields']['bid']['field'] = 'bid';
+	$handler->display->display_options['fields']['bid']['label'] = 'BID';
+	/* Feld: Block: Titel */
+	$handler->display->display_options['fields']['title']['id'] = 'title';
+	$handler->display->display_options['fields']['title']['table'] = 'bean';
+	$handler->display->display_options['fields']['title']['field'] = 'title';
+	/* Feld: Block: Beschriftung */
+	$handler->display->display_options['fields']['label']['id'] = 'label';
+	$handler->display->display_options['fields']['label']['table'] = 'bean';
+	$handler->display->display_options['fields']['label']['field'] = 'label';
+	/* Feld: Block: Block Delta */
+	$handler->display->display_options['fields']['delta']['id'] = 'delta';
+	$handler->display->display_options['fields']['delta']['table'] = 'bean';
+	$handler->display->display_options['fields']['delta']['field'] = 'delta';
+	/* Feld: Block: Typ */
+	$handler->display->display_options['fields']['type']['id'] = 'type';
+	$handler->display->display_options['fields']['type']['table'] = 'bean';
+	$handler->display->display_options['fields']['type']['field'] = 'type';
+	/* Feld: Block: Operationslinks */
+	$handler->display->display_options['fields']['operations']['id'] = 'operations';
+	$handler->display->display_options['fields']['operations']['table'] = 'bean';
+	$handler->display->display_options['fields']['operations']['field'] = 'operations';
+	$handler->display->display_options['fields']['operations']['label'] = 'Operations';
+	$handler->display->display_options['fields']['operations']['add_destination'] = 0;
+	/* Feld: Block: Link löschen */
+	$handler->display->display_options['fields']['delete_block']['id'] = 'delete_link';
+	$handler->display->display_options['fields']['delete_block']['table'] = 'bean';
+	$handler->display->display_options['fields']['delete_block']['field'] = 'delete_link';
+	$handler->display->display_options['fields']['delete_block']['label'] = '';
+	$handler->display->display_options['fields']['delete_block']['element_label_colon'] = FALSE;
+	/* Filterkriterium: Block: Typ */
+	$handler->display->display_options['filters']['type']['id'] = 'type';
+	$handler->display->display_options['filters']['type']['table'] = 'bean';
+	$handler->display->display_options['filters']['type']['field'] = 'type';
+	$handler->display->display_options['filters']['type']['value'] = array(
+	  'activation_footer_block' => 'activation_footer_block',
+	  'overview_page_block' => 'overview_page_block',
+	  'content_part' => 'content_part',
+	  'dokument' => 'dokument',
+	  'intro' => 'intro',
+	  'info' => 'info',
+	  'subtitle' => 'subtitle',
+	);
+	$handler->display->display_options['filters']['type']['exposed'] = TRUE;
+	$handler->display->display_options['filters']['type']['expose']['operator_id'] = 'type_op';
+	$handler->display->display_options['filters']['type']['expose']['label'] = 'Typ';
+	$handler->display->display_options['filters']['type']['expose']['operator'] = 'type_op';
+	$handler->display->display_options['filters']['type']['expose']['identifier'] = 'type';
+	$handler->display->display_options['filters']['type']['expose']['multiple'] = TRUE;
+	$handler->display->display_options['filters']['type']['expose']['remember_roles'] = array(
+	  2 => '2',
+	  1 => 0,
+	  3 => 0,
+	  4 => 0,
+	  5 => 0,
+	  6 => 0,
+	  7 => 0,
+	  8 => 0,
+	);
+	$handler->display->display_options['filters']['type']['group_info']['label'] = 'Typ';
+	$handler->display->display_options['filters']['type']['group_info']['identifier'] = 'type';
+	$handler->display->display_options['filters']['type']['group_info']['remember'] = FALSE;
+	$handler->display->display_options['filters']['type']['group_info']['group_items'] = array(
+	  1 => array(),
+	  2 => array(),
+	  3 => array(),
+	);
+	/* Filterkriterium: Block: Titel */
+	$handler->display->display_options['filters']['title']['id'] = 'title';
+	$handler->display->display_options['filters']['title']['table'] = 'bean';
+	$handler->display->display_options['filters']['title']['field'] = 'title';
+	$handler->display->display_options['filters']['title']['operator'] = 'contains';
+	$handler->display->display_options['filters']['title']['exposed'] = TRUE;
+	$handler->display->display_options['filters']['title']['expose']['operator_id'] = 'title_op';
+	$handler->display->display_options['filters']['title']['expose']['label'] = 'Titel';
+	$handler->display->display_options['filters']['title']['expose']['operator'] = 'title_op';
+	$handler->display->display_options['filters']['title']['expose']['identifier'] = 'title';
+	$handler->display->display_options['filters']['title']['expose']['remember_roles'] = array(
+	  2 => '2',
+	  1 => 0,
+	  3 => 0,
+	  4 => 0,
+	  5 => 0,
+	  6 => 0,
+	  7 => 0,
+	  8 => 0,
+	);
+
+	$views[$view->name] = $view;
+
+  return $views;
+}
diff --git a/views/views_handler_field_bean_operations.inc b/views/views_handler_field_bean_operations.inc
new file mode 100644
index 0000000..878a558
--- /dev/null
+++ b/views/views_handler_field_bean_operations.inc
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * @file
+ * Definition of views_handler_field_node_link.
+ */
+
+/**
+ * Field handler to present a link to the node.
+ *
+ * @ingroup views_field_handlers
+ */
+class views_handler_field_bean_operations extends views_handler_field_entity {
+
+  function option_definition() {
+    $options = parent::option_definition();
+    $options['add_destination'] = TRUE;
+    return $options;
+  }
+
+  function options_form(&$form, &$form_state) {
+    parent::options_form($form, $form_state);
+
+    $form['add_destination'] = array(
+      '#type' => 'checkbox',
+      '#title' => t('Add a destination parameter to operations links so users return to this View on form submission.'),
+      '#default_value' => $this->options['add_destination'],
+    );
+  }
+
+  function render($values) {
+    if ($entity = $this->get_value($values)) {
+      return $this->render_link($entity);
+    }
+  }
+
+  function render_link($bean) {
+    if (bean_access('edit', $bean)) {
+      // Get the operations links.
+      $links = menu_contextual_links('bean', 'block', array($bean->delta));
+
+      if (!empty($links)) {
+        // Add the destination to the links if specified.
+        if ($this->options['add_destination']) {
+          foreach ($links as $id => &$link) {
+            $link['query'] = drupal_get_destination();
+          }
+        }
+
+        return theme('links', array('links' => $links, 'attributes' => array('class' => array('links', 'inline', 'operations'))));
+      }
+    }
+  }
+}
