When you are requesting through browser, you are issuing a GET request, which in turn invokes the index method. You need to submit a POST request to save the url. Then it will invoke the store method. It is the standard way of saving resources.
You can get more clarification in the doc: http://laravel.com/docs/controllers#resource-controllers
EDIT: If you want to make an ajax call (POST) using jquery in this case, you can call like below:
$.ajax({
type: 'POST',
url: 'www.lrvlapp.com/api/v1/url',
data: { url: "http://google.com", description: "A Search Engine" },
dataType: 'json',
success: function(data) {
<do your actions, for example show some message>
$('#div-id').html(data);
},
error: function(jqXHR, textStatus, errorThrown) {
$('#div-id').html('Error: , ' + textStatus + ', ' + errorThrown);
}
});