John & Mary's
This Buffalo tradition on Buffalo Street is home to five dog-friendly tables outside, so Fido can join you for some traditional and modern eats. In addition to offering a whole host of flavorful wing choices, the menu at John & Mary's is full of specialty pizzas, including a supreme pizza topped with sauce, mozzarella cheese, pepperoni, Italian sausage, black olives, green peppers, onions, and mushrooms. If you'd rather something from the fryer, give their sweet potato fries, fajita fries, curly fries, or jalapeno poppers a whirl.
Visit Website
Or call (716) 648-4750 for more information.
Reviews
Loading reviews…
Unable to load.
Questions & Answers
Be the first to ask a question about this restaurant.
Traveler Photos
We dug up a dog picture at John & Mary's.
Want to feature your creature? Upload a photo of your pet at John & Mary's! You can also share by using the hashtag #bringfido on Facebook, X, TikTok or Instagram.
Area Info
Nearby Hotels
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
Similar Restaurants
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
search[item] != defaultSearch[item]).map(item => lodgingContextDataParamMap[item] + '=' + encodeURIComponent(search[item])).concat(search['childAges'].map(item => 'child_ages=' + item)).concat(search['petTypes'].map(item => 'pet_types=' + item)).concat(search['petWeights'].map(item => 'pet_weights=' + item)).concat([(search.petWeights.some(weight => (weight || 0) >= 50) || search.largeAllowed) ? 'large_allowed=on' : '', (search.dogs > (search.type == 'rentals' ? 1 : search.rooms) || search.multipleAllowed) ? 'multiple_allowed=on' : '', (search.petTypes.some(type => type == 2) || search.catsAllowed) ? 'cats_allowed=on' : '']).concat(search['amenities'].slice().sort().map(item => 'amenities=' + item)).filter(item => item).join('&')].reduce((x, y) => y ? x + y : '')" data-vars-link-city-id="17744" data-vars-link-content-group="restaurant/details" data-vars-link-placement="nearby" data-vars-link-property-id="58303">
