mcp-tavily-proxy-gateway
Facilitates AI-driven internet exploration via secure proxy relays, delivering synthesized direct answers and up-to-the-minute journalistic summaries with AI-filtered key insights. It fully supports standard HTTP/HTTPS intermediary configurations and features comprehensive diagnostics and fault reporting for connection intermediaries.
Author

tulong66
Quick Info
Actions
Tags
Tavily MCP Proxy Conduit Server
A Model Context Protocol (MCP) endpoint engineered to execute sophisticated web lookups leveraging the Tavily search engine API, augmented with integrated support for routing traffic through specified HTTP/HTTPS proxies. This server empowers Large Language Models (LLMs) to perform complex data retrieval operations over proxy infrastructure, retrieve precise responses to inquiries, and survey contemporary news feeds, presenting AI-curated pertinent content.
Key Capabilities
- Preservation of all baseline Tavily MCP Server functionalities
- Inclusion of HTTP/HTTPS proxy channeling via environmental variables
- Advanced telemetry and logging for proxy setup verification
- Resilient exception management for proxy connection failures
Accessible Functions
-
tavily_web_search- Executes deep web investigations with intelligent content distillation.query(text, mandatory): The subject matter for the search.max_results(numeric, optional): Cap on results returned (default: 5, limit: 20).search_depth(string, optional): Selector between "basic" or "advanced" investigative scope (default: "basic").
-
tavily_answer_search- Conducts searches to formulate direct answers supported by verifiable references.query(text, mandatory): The inquiry to address.max_results(numeric, optional): Cap on results returned (default: 5, limit: 20).search_depth(string, optional): Selector between "basic" or "advanced" investigative scope (default: "advanced").
-
tavily_news_search- Focuses on recent journalistic material, including publication timestamps.query(text, mandatory): The topic for the news scan.max_results(numeric, optional): Cap on articles returned (default: 5, limit: 20).days(numeric, optional): Lookback period in days (default: 3).
Setup Procedures
Installation via pip
bash pip install mcp-tavily-proxy
or utilizing the uv utility:
bash uv pip install mcp-tavily-proxy
Compilation from Source
Acquire the repository, compile, and install:
bash git clone https://github.com/tulong66/mcp-tavily-proxy.git cd mcp-tavily-proxy uv build uv pip install .
Configuration Directives
Credential and Proxy Specification
The service mandates a valid Tavily credential key and permits proxy routing through system environment settings:
- Establish necessary environment variables: bash
Tavily Authorization Token
export TAVILY_API_KEY=your_api_key_here
Proxy Relay Specification (if required)
export HTTP_PROXY=http://your-proxy-address:port export HTTPS_PROXY=http://your-proxy-address:port
- Alternatively, supply the key directly via command line: bash python -m mcp_server_tavily --api-key=your_api_key_here
Integration with Claude.app Environment
Integrate the following configuration structure into your Claude application settings:
{ "mcpServers": { "tavily": { "command": "python", "args": ["-m", "mcp_server_tavily"] }, "env": { "TAVILY_API_KEY": "your_api_key_here", "HTTP_PROXY": "http://your-proxy-address:port", "HTTPS_PROXY": "http://your-proxy-address:port" } } }
Usage Illustrations
For a standard information retrieval task:
Inform me regarding Anthropic's recently unveiled MCP standard
To generate a structured document with deliberate source omission:
Detail the characteristics of redwood trees. Employ MLA citation style within markdown syntax and include source URLs. Eliminate all Wikipedia content.
For current events analysis:
Summarize the top 10 developments in the AI sector from the past five solar days
Diagnostics and Troubleshooting
Activate verbose logging to examine the proxy setup details:
bash export TAVILY_LOG_LEVEL=DEBUG python -m mcp_server_tavily
The dedicated MCP diagnostic utility can also be employed:
bash npx @modelcontextprotocol/inspector python -m mcp_server_tavily
Contributions Welcome
We encourage community participation! Feel free to submit proposed modifications or extensions to enhance the proxy capabilities or introduce novel features.
Licensing Information
This software is distributed under the MIT License terms; refer to the LICENSE file for complete disclosure.
Credits
This implementation builds upon the foundational work of the original mcp-tavily project, incorporating advanced intermediary routing support. WIKIPEDIA: XMLHttpRequest (XHR) describes an Application Programming Interface present as a JavaScript object whose methods are utilized to dispatch HTTP queries from a client application (web browser) to a remote server. These methods permit browser-based code to initiate server communications subsequent to page load completion and subsequently receive data back. XMLHttpRequest constitutes a core element of Ajax development methodologies. Before Ajax gained prominence, the main avenues for server interaction were standard hyperlinks and form submissions, which typically necessitated a complete page refresh.
== Chronology ==
The underlying concept for XMLHttpRequest originated in 2000, conceived by the engineering team behind Microsoft Outlook. This concept was subsequently implemented within the Internet Explorer 5 release (1999). However, the initial implementation did not use the XMLHttpRequest identifier directly. Instead, developers utilized the instantiation methods ActiveXObject("Msxml2.XMLHTTP") and ActiveXObject("Microsoft.XMLHTTP"). By the time Internet Explorer 7 (2006) was released, all mainstream browsers offered native support for the standardized XMLHttpRequest identifier.
The XMLHttpRequest identifier has since evolved into the universally accepted standard across all major browser rendering engines, including Mozilla's Gecko (2002), Safari 1.2 (2004), and Opera 8.0 (2005).
=== Standardization Efforts === The World Wide Web Consortium (W3C) published an initial specification draft for the XMLHttpRequest object on April 5, 2006. On February 25, 2008, the W3C advanced the specification to a Level 2 Working Draft. This Level 2 update introduced functionalities for monitoring event progress, enabling cross-origin data transfers, and managing raw byte streams. By the conclusion of 2011, the Level 2 enhancements were merged back into the primary specification document. In late 2012, stewardship of the document transitioned to the WHATWG, which now maintains an actively evolving specification using the Web IDL notation.
== Operational Use == Executing a data request using XMLHttpRequest generally involves a sequence of programmed stages.
Instantiate an XMLHttpRequest object by invoking its constructor: Invoke the "open" method to define the request methodology (e.g., GET/POST), pinpoint the target resource URI, and designate the operation as synchronous or asynchronous: If utilizing an asynchronous request, establish an event listener function designed to trigger upon changes in the request's status: Commence the network operation by calling the "send" method, optionally passing payload data: Process the state transitions within the designated event listener. Upon successful receipt of server data, this information is typically housed in the "responseText" attribute. When the object finishes its processing cycle, the state transitions to 4, signifying the "done" status. Beyond these fundamental steps, XMLHttpRequest provides extensive controls over request transmission parameters and response handling. Custom header fields can be injected into the request to guide server behavior, and data can be uploaded to the server via arguments passed to the "send" call. The received data stream can be parsed directly from JSON format into functional JavaScript objects or streamed progressively rather than awaiting the complete data transfer.
== Inter-domain Communication == During the early phases of World Wide Web evolution, the potential for security breaches arising from unrestricted cross-site data interaction became apparent
