You can try to use display: table and display: table-cell.
.col-xs-8, .col-xs-4 {
  height: 60px;
}
.d-table {
  display: table;
  height: 100%;
}
.d-table-cell {
  display: table-cell;
}
.align-middle {
  vertical-align: middle;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<li class="list-group-item">
   <div class="row">
      <div class="col-xs-8">
            <b>Some Title</b>
            <br>
            Some details some details some details some details
        </div>
        <div class="col-xs-4">
            <div class="d-table">
              <div class="d-table-cell align-middle">
                <a id="my-link">My link</a>
              </div>
            </div>            
        </div>
    </div>
</li>
 
 
display: table needs a height: value property. Then, display: table-cell will use this height value with vertical-align: middle.
In this example, .col-xs-8 and .col-xs-4 have the same height value: 60px.
P/S: I've change .col-md-8 and .col-md-4 to .col-xs-8 and .col-xs-4 to fit the content on this site.