1. A system for routing queries, the system comprising: a search processor configured to receive a query from a user passed by an application program, and to break the query into one or more query terms; a service recognizer configured to analyze the query terms to identify one or more providers that are matches for the query terms; a query router configured to route the query terms to the providers that are matches, wherein the providers each include a database of information that is queried using the query terms; and a results interface configured to present results from the providers that are matches to the user in context within the application program.