Recent studies on Graph Convolutional Networks (GCNs) reveal the usefulness of adaptive locality, which enables adjusting the contribution of a neighbor to the target node representation. Existing work typically achieves adaptive locality by introducing an additional module such as graph attention, which learns to weigh neighbor nodes. However, such module may not work well in practice, since fitting training data well does not necessarily lead to reasonable adaptive locality, especially when the labeled data are small. In an orthogonal direction, this work explores how to achieve adaptive locality in the model inference stage, a new perspective that receives little scrutiny. The main advantage of leaving the training stage unchanged is generality -- it can be applied to most GCNs and improve their inference accuracy. Given a trained GCN model, the idea is to make a counterfactual prediction by blocking the graph structure, i.e., forcing the model to use each node's own features to predict its label. By comparing the real prediction with counterfactual prediction, we can assess the trustworthiness of neighbor nodes. Furthermore, we explore graph uncertainty that measures how the prediction would vary with changes on graph structure, and introduce edge dropout into the inference stage to estimate graph uncertainty. We conduct empirical studies on seven node classification datasets to validate the effectiveness of our methods.