рдореБрдЦреНрдп рд╕рд╛рдордЧреНрд░реА рдкрд░ рдЬрд╛рдПрдБ

Gradio MCP рд╕рд░реНрд╡рд░ рдЧрд╛рдЗрдб: рдмрдирд╛рдПрдВ, рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВ, рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдХрд░реЗрдВ рдФрд░ рдЗрдВрдЯреАрдЧреНрд░реЗрдЯ рдХрд░реЗрдВ

Tavily, Hugging Face Spaces, Cursor AI рдФрд░ Claude Desktop рдХреЗ рд╕рд╛рде Gradio MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдиреЗ, рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ, рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдФрд░ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдкрд░ рдЪрд░рдг-рджрд░-рдЪрд░рдг рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ред
┬╖ 7 рдорд┐ре░ рдкрдврд╝реЗрдВ

AI рдХреЗ рд╕рд╛рде рдЦреЛрдЬреЗрдВ

Model Context Protocol (MCP) рдмрд╛рд╣рд░реА рдЯреВрд▓реНрд╕, API рдФрд░ рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рд╕реЗ AI рдореЙрдбрд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЦреБрд▓рд╛ рдорд╛рдирдХ рд╣реИред рдпрд╣ рдмрдбрд╝реЗ рднрд╛рд╖рд╛ рдореЙрдбрд▓реНрд╕ (LLMs) рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдорд╛рдирдХреАрдХреГрдд рддрд░реАрдХрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред┬а

рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рджреБрдирд┐рдпрд╛ рдПрдЬреЗрдВрдЯрд┐рдХ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреА рдУрд░ рдмрдврд╝ рд░рд╣реА рд╣реИ, рдЬрд╣рд╛рдБ AI рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рд╛рдпрддреНрдд рдПрдЬреЗрдВрдЯреНрд╕ рдХреА рддрд░рд╣ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ, MCP рд╕реАрдЦрдирд╛ рдФрд░ рднреА рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛ рдЧрдпрд╛ рд╣реИред Gradio рдЗрдХреЛрд╕рд┐рд╕реНрдЯрдо MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдФрд░ рдкреНрд░рднрд╛рд╡реА рддрд░реАрдХрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреНрдпреВрдирддрдо рдкреНрд░рдпрд╛рд╕ рдореЗрдВ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА AI рдЯреВрд▓реНрд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ, рд╣рдо:

  1. рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдПрдХ рд╕рд░рд▓ Gradio MCP рд╕рд░реНрд╡рд░ рд╕реЗрдЯ рдЕрдк рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЙрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВрдЧреЗред
  2. рдХрдИ рдЯреВрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░реЛрдбрдХреНрд╢рди-рд░реЗрдбреА MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдПрдВрдЧреЗред
  3. рдЙрд╕реЗ Hugging Face Spaces рдкрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдХрд░реЗрдВрдЧреЗред
  4. Cursor AI рдФрд░ Claude Desktop рдХреЗ рд╕рд╛рде рдЙрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВрдЧреЗред

рдпрджрд┐ рдЖрдк Designing Agentic Systems with LangChain рдореЗрдВ рд╣рд╛рде рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░рд╛ рдХреЛрд░реНрд╕ рджреЗрдЦреЗрдВред┬а

Gradio MCP рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд

Gradio рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг (5.32.0) рдЕрдм MCP рдХреЛ рдиреИрдЯрд┐рд╡рд▓реА рд╕рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдирд╛ рдФрд░ рдЪрд▓рд╛рдирд╛ рдмреЗрд╣рдж рдЖрд╕рд╛рди рд╣реЛ рдЧрдпрд╛ рд╣реИред рдЖрдкрдХреЛ рдмрд╕ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдХреЛрдб рдЖрд░реНрдЧреНрдпреБрдореЗрдВрдЯ рдпрд╛ рдПрдиреНрд╡рд╛рдпрд░рдирдореЗрдВрдЯ рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ MCP рд╕рдкреЛрд░реНрдЯ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рд╣реИред┬а

Gradio MCP рд╕рд░реНрд╡рд░ Server-Sent Events (SSE) рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рд╕рд░реНрд╡рд░ рд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рддрдХ рд░реАрдпрд▓-рдЯрд╛рдЗрдо, рдПрдХрддрд░рдлрд╛ рд╕рдВрдЪрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИтАФLLMs рд╕реЗ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рдЙрдкрдпреБрдХреНрддред

1. MCP рд╕рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде Gradio рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред

pip install -U "gradio[mcp]"

2. рдПрдХ Gradio рдРрдк рдмрдирд╛рдПрдВ рдЬреЛ рдЗрдирдкреБрдЯ рдореЗрдВ рдХрд┐рд╕реА рд╢рд╣рд░ рдХрд╛ рдирд╛рдо рд▓реЗ рдФрд░ рдореМрд╕рдо рдбреЗрдЯрд╛ рд▓реМрдЯрд╛рдП (рдпрд╣рд╛рдБ рдкрд░ рдореЙрдХ рдбреЗрдЯрд╛)ред рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ Gradio рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рддреЛ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╢реБрд░реБрдЖрддреА рдЙрджрд╛рд╣рд░рдг рд╣реИред

import gradio as gr


def check_weather(city):
    """
    Simple weather checker function (mock data for demonstration).

    Args:
        city (str): The city name to check weather for

    Returns:
        str: Weather information for the city
    """
    # Mock weather data for demonstration
    weather_data = {
        "london": "Cloudy, 15┬░C",
        "paris": "Sunny, 22┬░C",
        "tokyo": "Rainy, 18┬░C",
        "new york": "Partly cloudy, 20┬░C",
        "sydney": "Sunny, 25┬░C",
    }

    city_lower = city.lower().strip()

    if city_lower in weather_data:
        return f"Weather in {city.title()}: {weather_data[city_lower]}"
    else:
        return f"Weather data not available for {city}. Try: London, Paris, Tokyo, New York, or Sydney"


demo = gr.Interface(
    fn=check_weather,
    inputs=[gr.Textbox("London", label="Enter city name")],
    outputs=[gr.Textbox(label="Weather Info")],
    title="Simple Weather Checker",
    description="Enter a city name to check the weather (demo with mock data).",
)

if __name__ == "__main__":
    demo.launch(mcp_server=True)

3. Gradio рдореЗрдВ MCP рд╕рдкреЛрд░реНрдЯ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ:

  • mcp_server рдЖрд░реНрдЧреНрдпреБрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ: demo.launch(mcp_server=True)
  • рдПрдиреНрд╡рд╛рдпрд░рдирдореЗрдВрдЯ рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ: export GRADIO_MCP_SERVER=True

4. Python рдлрд╝рд╛рдЗрд▓ test.py рдХреЛ рд╕реЗрд╡ рдХрд░реЗрдВ рдФрд░ рдЪрд▓рд╛рдПрдБред┬а

$ python test.py                                            
* Running on local URL:  http://127.0.0.1:7860
* To create a public link, set `share=True` in `launch()`.

ЁЯФи MCP server (using SSE) running at: http://127.0.0.1:7860/gradio_api/mcp/sse

рдЖрдкрдХреЛ рдЯрд░реНрдорд┐рдирд▓ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рджреЛ URLs рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреА:

  • рдРрдк URL: http://127.0.0.1:7860 (рдЖрдкрдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ Gradio рдРрдк рдЦреЛрд▓рддрд╛ рд╣реИ)ред
  • MCP рд╕рд░реНрд╡рд░ URL: http://127.0.0.1:7860/gradio_api/mcp/sse (MCP-рдХрдореНрдкреИрдЯрд┐рдмрд▓ рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП)ред

5. рдЕрдкрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдРрдк URL (http://127.0.0.1:7860) рдЦреЛрд▓реЗрдВред рдХреЛрдИ рд╢рд╣рд░ рджрд░реНрдЬ рдХрд░реЗрдВ (рдЬреИрд╕реЗ, Tokyo) рдФрд░ рдореМрд╕рдо рджреЗрдЦреЗрдВред

рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ Gradio рдРрдк рдХрд╛ рдкрд░реАрдХреНрд╖рдг

6. рдРрдк рдХреЗ рдирд┐рдЪрд▓реЗ рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ "Use via API or MCP" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдЗрд╕рд╕реЗ рдЖрдкрдХреЗ рдРрдк рдХреЗ API рдФрд░ MCP рд╕рд░реНрд╡рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рджрд┐рдЦрд╛рдИ рджреЗрдЧреАред

MCP рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде Gradio рдРрдк рджрд╕реНрддрд╛рд╡реЗрдЬрд╝

7. Cursor AI рдХреЗ рд╕рд╛рде MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Cursor Settings рдЦреЛрд▓реЗрдВ, тАЬMCPтАЭ рдЯреИрдм рдкрд░ рдЬрд╛рдПрдБ, рдФрд░ тАЬ+ Add new global MCP serverтАЭ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

Cursor MCP рд╕реЗрдЯрд┐рдВрдЧреНрд╕

8. MCP рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдореНрди JSON рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝реЗрдВ:

{
  "mcpServers": {
    "gradio": {
      "url": "http://127.0.0.1:7860/gradio_api/mcp/sse"
    }
  }
}

9. рдлрд╝рд╛рдЗрд▓ рд╕реЗрд╡ рдХрд░реЗрдВред рдЕрдм рдЖрдкрдХреЛ gradio рдирд╛рдо рдХрд╛ рдПрдХ рд╕рдХреНрд░рд┐рдп MCP рд╕рд░реНрд╡рд░ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ check_weather рдЯреВрд▓ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред

Cursor рдореЗрдВ MCP рд╕рд░реНрд╡рд░

рдЗрд╕ MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Cursor рдХреЗ рдПрдЬреЗрдВрдЯ рдореЛрдб рдореЗрдВ (CTRL + T) рдирдпрд╛ рдЪреИрдЯ рдмрдирд╛рдПрдВ рдФрд░ Tokyo рдХреЗ рдореМрд╕рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫреЗрдВред Cursor MCP рдЯреВрд▓ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд╛рдВрдЧреЗрдЧрд╛ред рдЙрд╕реЗ рд╕реНрд╡реАрдХреГрдд рдХрд░реЗрдВред

Cursor рдПрдЬреЗрдВрдЯ рдореЛрдб рдореЗрдВ MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, MCP рд╕рд░реНрд╡рд░ рдореМрд╕рдо рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ рдФрд░ рдирддреАрдЬрд╛ рд▓реМрдЯрд╛рдПрдЧрд╛:

Cursor рдПрдЬреЗрдВрдЯ рдореЛрдб рдореЗрдВ MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг

Gradio рдХреЗ рд╕рд╛рде рдорд▓реНрдЯреА-рдЯреВрд▓ MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдирд╛

рдЖрдЗрдП рдХреБрдЫ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдФрд░ рдкреНрд░реЛрдбрдХреНрд╢рди-рд░реЗрдбреА рдмрдирд╛рддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ, рд╣рдо Gradio рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдорд▓реНрдЯреА-рдЯреВрд▓ MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдПрдВрдЧреЗред┬а

рд╕рд░реНрд╡рд░ рдореЗрдВ рджреЛ рдЯреВрд▓ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ:

  1. рд▓рд╛рдЗрд╡ рдореМрд╕рдо рдЯреВрд▓: Tavily API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░реАрдпрд▓-рдЯрд╛рдЗрдо рдореМрд╕рдо рдбреЗрдЯрд╛ рд▓рд╛рддрд╛ рд╣реИред
  2. рд╕рд┐рдЯреА рдиреНрдпреВрдЬрд╝ рдЯреВрд▓: Tavily API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рд╢рд╣рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╡реАрдирддрдо 5 рд╕рдорд╛рдЪрд╛рд░ рд╕реБрд░реНрдЦрд┐рдпрд╛рдБ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рд╕рд░реНрд╡рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдореМрд╕рдо рдЕрдкрдбреЗрдЯ рдФрд░ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╕рдорд╛рдЪрд╛рд░ рджреЗрдХрд░ рдЙрдирдХреА рдпрд╛рддреНрд░рд╛рдУрдВ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред┬а

рд╣рдо MCP рд╕рд░реНрд╡рд░ рд╕реЗрдЯ рдЕрдк рдХрд░реЗрдВрдЧреЗ, рдЗрд╕реЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЯреЗрд╕реНрдЯ рдХрд░реЗрдВрдЧреЗ, Hugging Face Spaces рдкрд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд░реЗрдВрдЧреЗ, рдФрд░ Cursor AI рд╡ Claude Desktop рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВрдЧреЗред

1. рд╕реЗрдЯ рдЕрдк рдХрд░рдирд╛

рд╣рдореЗрдВ https://huggingface.co/new-space рдкрд░ рдЬрд╛рдХрд░ рдирдпрд╛ Space рдмрдирд╛рдирд╛ рд╣реИ, рдРрдк рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдирд╛ рд╣реИ, рдПрдХ рдЫреЛрдЯрд╛ рд╡рд┐рд╡рд░рдг рджреЗрдирд╛ рд╣реИ, рдФрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ Gradio рдЪреБрдирдирд╛ рд╣реИред

рдирдпрд╛ Hugging Face Space рдмрдирд╛рдирд╛

рд╕реНрд░реЛрдд: new-space

рдмрди рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдЖрдкрдХреЗ рдирдП Space рдкрд░ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЙрд╕реЗ рд╕реЗрдЯ рдЕрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред

рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдХреЛ рдЕрдкрдиреА рд╕реНрдерд╛рдиреАрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдХреНрд▓реЛрди рдХрд░реЗрдВ

git clone https://huggingface.co/spaces/kingabzpro/live-city-mcp

рдЗрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╡реЗрдм рд╕рд░реНрдЪ рдХреНрд╖рдорддрд╛рдУрдВ рд╣реЗрддреБ Tavily API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдХреГрдкрдпрд╛ Tavily AI рдкрд░ рдПрдХ рдЕрдХрд╛рдЙрдВрдЯ рдмрдирд╛рдПрдБ рдФрд░ API рдХреБрдВрдЬреА рдЬрдирд░реЗрдЯ рдХрд░реЗрдВред

Tavily API рдХреБрдВрдЬреА рдЬрдирд░реЗрдЯ рдХрд░рдирд╛

рд╕реНрд░реЛрдд: Tavily AI

рдлрд┐рд░, API рдХреБрдВрдЬреА рдХреЛ рдЕрдкрдиреЗ рд▓реЛрдХрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдПрдиреНрд╡рд╛рдпрд░рдирдореЗрдВрдЯ рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрд╡ рдХрд░реЗрдВ

TAVILY_API_KEY="API-KEY"

рдЙрд╕рдХреЗ рдмрд╛рдж, Tavily Python SDK рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ

pip install tavily-python

2. MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдирд╛

рдЗрд╕ MCP рд╕рд░реНрд╡рд░ рдореЗрдВ рджреЛ рдЯреВрд▓реНрд╕ рд╣реИрдВ, рдЬреЛ рджреЛрдиреЛрдВ рд╡реЗрдм рд╕реЗ рдирд╡реАрдирддрдо рдЬрд╛рдирдХрд╛рд░реА рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП Tavily API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдкрд╣рд▓рд╛ рдЯреВрд▓ рдХрд┐рд╕реА рд╢рд╣рд░ рдХрд╛ рдирд╛рдо рд▓реЗрдХрд░ рд╡рд┐рд╕реНрддреГрдд рдореМрд╕рдо рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рджреВрд╕рд░рд╛ рдЯреВрд▓ рд╢рд╣рд░ рдХрд╛ рдирд╛рдо рд▓реЗрдХрд░ рдХреНрд╖реЗрддреНрд░ рдХреА рд╢реАрд░реНрд╖ рдкрд╛рдБрдЪ рдЦрдмрд░реЛрдВ рдХреА рд╕реБрд░реНрдЦрд┐рдпрд╛рдБ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИред рд╣рдордиреЗ рдкреНрд░рддреНрдпреЗрдХ рдЯреВрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреНрд░рд╛рдлрд╝рд┐рдХрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрдирд╛рдпрд╛ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдЯреИрдмреНрдб рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреЛрдбрд╝рд╛ред

app.py:

import gradio as gr
from tavily import TavilyClient


def get_city_weather_info(city_name):
    """
    Search for current weather information about a city using Tavily search API

    Args:
        city_name (str): Name of the city
        api_key (str): Your Tavily API key

    Returns:
        dict: Search results containing weather information
    """
    # Initialize Tavily client
    client = TavilyClient()

    # Search for current weather information
    search_query = f"current weather in {city_name} temperature humidity conditions"

    try:
        # Perform the search
        response = client.search(
            query=search_query, search_depth="basic", max_results=5
        )

        # Extract relevant information from search results
        weather_info = {"city": city_name, "search_query": search_query, "results": []}

        # Process each search result
        for result in response.get("results", []):
            weather_info["results"].append(
                {
                    "title": result.get("title", ""),
                    "content": result.get("content", ""),
                    "url": result.get("url", ""),
                }
            )

        # Add the answer if available
        if "answer" in response:
            weather_info["summary"] = response["answer"]

        return weather_info

    except Exception as e:
        return {
            "city": city_name,
            "error": f"Failed to fetch weather information: {str(e)}",
        }


def get_city_news(city_name):
    """
    Fetches the top 5 news articles for a given city using the Tavily API.

    Args:
        city_name (str): Name of the city

    Returns:
        dict: News results containing the top 5 articles or an error message
    """
    # Initialize Tavily client
    client = TavilyClient()

    # Search query for news about the city
    search_query = f"Top 5 latest news articles about {city_name}, including major events, politics, economy, and local updates."

    try:
        # Perform the search
        response = client.search(
            query=search_query,
            search_depth="advanced",
            max_results=5,
        )

        # Extract relevant information from search results
        news_info = {"city": city_name, "search_query": search_query, "articles": []}

        # Process each search result
        for result in response.get("results", []):
            news_info["articles"].append(
                {
                    "title": result.get("title", ""),
                    "content": result.get("content", ""),
                    "url": result.get("url", ""),
                }
            )

        # Add the answer if available
        if "answer" in response:
            news_info["summary"] = response["answer"]

        return news_info

    except Exception as e:
        return {"city": city_name, "error": f"Failed to fetch news: {str(e)}"}


# Create Gradio interfaces
weather_demo = gr.Interface(
    fn=get_city_weather_info,
    inputs=gr.Textbox(label="Enter City Name", placeholder="e.g., New York"),
    outputs=gr.JSON(label="Weather Information"),
    description="Get current weather details for a city.",
)

news_demo = gr.Interface(
    fn=get_city_news,
    inputs=gr.Textbox(label="Enter City Name", placeholder="e.g., London"),
    outputs=gr.JSON(label="News Articles"),
    description="Get the latest news articles for a city.",
)

# Create tabbed interface
demo = gr.TabbedInterface(
    [weather_demo, news_demo], ["Weather", "News"], title="City Information Hub"
)

if __name__ == "__main__":
    # Launch without MCP server to avoid initialization issues
    demo.launch(share=False, mcp_server=True, debug=True)

3. MCP рд╕рд░реНрд╡рд░ рдХрд╛ рд╕реНрдерд╛рдиреАрдп рдкрд░реАрдХреНрд╖рдг

MCP рд╕рд░реНрд╡рд░ рдХреЛ рдбрд┐рдкреНрд▓реЙрдп рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕рдХрд╛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдирд┐рдореНрди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рдХрд░реЗрдВ:┬а

python app.py

рдЖрдЙрдЯрдкреБрдЯ:

* Running on local URL:  http://127.0.0.1:7860
* To create a public link, set `share=True` in `launch()`.

ЁЯФи MCP server (using SSE) running at: http://127.0.0.1:7860/gradio_api/mcp/sse

рдЕрдкрдирд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЦреЛрд▓реЗрдВ рдФрд░ http://127.0.0.1:7860 рдкрд░ рдЬрд╛рдПрдБ рдФрд░ рдЗрдирдкреБрдЯ рдмреЙрдХреНрд╕ рдореЗрдВ рдХрд┐рд╕реА рд╢рд╣рд░ рдХрд╛ рдирд╛рдо рджрд░реНрдЬ рдХрд░реЗрдВред рд╕рд░реНрд╡рд░ JSON рдлреЙрд░реНрдореЗрдЯ рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рдореМрд╕рдо рдЬрд╛рдирдХрд╛рд░реА рд▓реМрдЯрд╛рдПрдЧрд╛ред

рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ Gradio рдРрдк рдХрд╛ рдкрд░реАрдХреНрд╖рдгред

рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рд╢рд╣рд░ рдХреЗ рд▓рд┐рдП рд╕рдЯреАрдХ рдореМрд╕рдо рдФрд░ рд╕рдорд╛рдЪрд╛рд░ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

4. MCP рд╕рд░реНрд╡рд░ рдХреЛ Hugging Face Spaces рдкрд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд░рдирд╛

рд╕рд░реНрд╡рд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдЪрд░рдгреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ:

1. requirements.txt рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ рдФрд░ рдирд┐рдореНрди рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝реЗрдВ:

tavily-python==0.7.3

2. рд╣рдо рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдХрдорд┐рдЯ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ Hugging Face Space рдкрд░ рдкреБрд╢ рдХрд░реЗрдВрдЧреЗред

git add .                                                                                                
live-city-mcp  git commit -m "weather and news MCP"                                                                     
git push  

рдкреБрд╢ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, Hugging Face Space рдмрд┐рд▓реНрдб рд╣реЛрдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред┬а

Hugging Face Spaces рдкрд░ рдмрджрд▓рд╛рд╡ рдкреБрд╢ рдХрд░рдирд╛ред

рд╕реНрд░реЛрдд: Live City Mcp

рд▓рдЧрднрдЧ рдПрдХ рдорд┐рдирдЯ рдмрд╛рдж, MCP рд╕рд░реНрд╡рд░ рд▓рд╛рдЗрд╡ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ Live City Mcp рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред

Hugging Face Spaces рдкрд░ City Information Hub рдРрдк

рд╕реНрд░реЛрдд: Live City Mcp

3. рдЗрд╕реЗ MCP рд╕рд░реНрд╡рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ Tavily рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рдХреЗ рд╕рд╛рде рдПрдиреНрд╡рд╛рдпрд░рдирдореЗрдВрдЯ рд╡реЗрд░рд┐рдПрдмрд▓ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП, Spaces рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЬрд╛рдПрдБ, рдиреАрдЪреЗ рд╕реНрдХреНрд░реЙрд▓ рдХрд░реЗрдВ, рдФрд░ "New Secret" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдлрд┐рд░, API рдХреБрдВрдЬреА рдФрд░ Tavily API рдирд╛рдо рдЬреЛрдбрд╝реЗрдВред

Hugging Face Space рдореЗрдВ рдПрдиреНрд╡рд╛рдпрд░рдирдореЗрдВрдЯ рд╡реЗрд░рд┐рдПрдмрд▓ рд╕реЗрдЯ рдХрд░рдирд╛

рд╕реНрд░реЛрдд: live-city-mcp/settings

5. рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП MCP рд╕рд░реНрд╡рд░ рдХрд╛ Cursor AI рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг

рд╣рдорд╛рд░рд╛ MCP рдбрд┐рдкреНрд▓реЙрдп рд╣реЛ рдЪреБрдХрд╛ рд╣реИ рдФрд░ рд╕рд╣реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдЕрдм, рд╣рдо MCP рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗрдЯ рдЕрдк рдХрд░реЗрдВрдЧреЗред рдкрд╣рд▓реЗ, рд╣рдо Cursor AI рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗред Cursor Settings рдкрд░ рдЬрд╛рдПрдБ, MCP рдЯреИрдм рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдФрд░ тАЬ+Add new global MCP serverтАЭ рд▓реЗрдмрд▓ рд╡рд╛рд▓реЗ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдирд┐рдореНрди рдХреЛрдб рджрд░реНрдЬ рдХрд░реЗрдВ:

{
  "mcpServers": {
    "weather-news": {
      "url": "https://kingabzpro-live-city-mcp.hf.space/gradio_api/mcp/sse"
    }
  }
}

рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ weather-news MCP рджреЛ рдЯреВрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдареАрдХ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдЖрдЗрдП Islamabad рдХреЗ рдореМрд╕рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд╢реНрди рдкреВрдЫрддреЗ рд╣реИрдВред┬а

рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рдиреЗ рддреЗрдЬрд╝ рдФрд░ рд╕рдЯреАрдХ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рд╣реИред

Cursor AI рдХреЗ рд╕рд╛рде рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг

рд╣рдо рдСрдирд▓рд╛рдЗрди рдЦреЛрдЬрдХрд░ рдФрд░ AccuWeather рдкрд░ рдореМрд╕рдо рджреЗрдЦрдХрд░ рдЗрд╕рдХреА рд╢реБрджреНрдзрддрд╛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред┬а

рд╕реНрд░реЛрдд: AccuWeather

рдЕрдм, рджреВрд╕рд░реЗ рдЯреВрд▓ рдХреЛ Islamabad рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреА рдЦрдмрд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫрдХрд░ рдЯреЗрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВред

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдкрд╛рдХрд┐рд╕реНрддрд╛рди рд╕реЗ рдЬреБрдбрд╝реА рдЪрд╛рд░ рдЦрдмрд░реЛрдВ рдХреА рд╕реБрд░реНрдЦрд┐рдпрд╛рдБ рдорд┐рд▓реАрдВред рдпрджрд┐ Tavily API рдЗрд╕реНрд▓рд╛рдорд╛рдмрд╛рдж рдХреА рдирд╡реАрдирддрдо рдЦрдмрд░реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдЫ рдирд╣реАрдВ рдвреВрдБрдв рдкрд╛рддреА, рддреЛ рдпрд╣ рджреЗрд╢-рд╕реНрддрд░реАрдп рдЦрдмрд░реЛрдВ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░ рджреЗрддреА рд╣реИред

Cursor AI рдХреЗ рд╕рд╛рде рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг

6. Claude Desktop рдХреЗ рд╕рд╛рде рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг

рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЬрд╛рдПрдБ, тАЬDeveloperтАЭ рд╡рд┐рдХрд▓реНрдк рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдФрд░ тАЬEdit ConfigтАЭ рдмрдЯрди рджрдмрд╛рдПрдБред рдЗрд╕рд╕реЗ рдЖрдк рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкрд╣реБрдБрдЪреЗрдВрдЧреЗ рдЬрд╣рд╛рдБ рдЖрдкрдХреЛ claude_desktop_config.json рдлрд╝рд╛рдЗрд▓ рдПрдбрд┐рдЯ рдХрд░рдиреА рд╣реИред

Claude Desktop рдореЗрдВ рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП MCP рд╕рд░реНрд╡рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕

Claude Desktop рдлрд┐рд▓рд╣рд╛рд▓ SSE-рдЖрдзрд╛рд░рд┐рдд MCP рд╕рд░реНрд╡рд░реЛрдВ рдХреЛ рд╕рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЖрдк mcp-remote рдирд╛рдордХ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред┬а

mcp-remote рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ e Download Node.js┬о рдкреЗрдЬ рдкрд░ рдЬрд╛рдХрд░ Node.js рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдлрд┐рд░, рдЕрдкрдиреЗ claude_desktop_config.json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдореНрди рдХреЛрдб рдЬреЛрдбрд╝реЗрдВ:

 "Live City MCP": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://kingabzpro-live-city-mcp.hf.space/gradio_api/mcp/sse",
        "--transport",
        "sse-only"
      ]
    }

рдпрд╣рд╛рдБ MCP рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдпрд╣ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдХреГрдкрдпрд╛ Claude Desktop рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрдВрдж рдХрд░рдХреЗ рдлрд┐рд░ рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдмрд╛рдж рдЖрдкрдХреЛ тАЬLive City MCPтАЭ рдирд╛рдордХ рдирдП MCP рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдБрдЪ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА, рдЬрд┐рд╕рдореЗрдВ рджреЛ рдЯреВрд▓реНрд╕ рдЙрдкрд▓рдмреНрдз рд╣реЛрдВрдЧреЗред

Claude Desktop рдХреЗ рд╕рд╛рде рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг

рдореИрдВ рдЬрд▓реНрдж рд╣реА рдЖрдпрд░рд▓реИрдВрдб рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдбрдмрд▓рд┐рди рдХреЗ рдореМрд╕рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫрд╛ рдФрд░ рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓реЗред

Claude Desktop рдХреЗ рд╕рд╛рде рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдП рдЧрдП MCP рд╕рд░реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг

MCP рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ Claude Desktop рд╣реИред рдпрд╣ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рд╣реИ рдФрд░ рдЯреВрд▓реНрд╕ рдХреЗ рдЙрдкрдпреЛрдЧ рддрдерд╛ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд╖рдорддрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдирд┐рд╖реНрдХрд░реНрд╖

рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП Gradio рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдирд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ, рддреЛ рдЕрдкрдиреЗ рдореМрдЬреВрджрд╛ рдРрдк рдХреЛ MCP рд╕рд░реНрд╡рд░ рдореЗрдВ рдмрджрд▓рдирд╛ рдЕрдм рдкрд╣рд▓реЗ рд╕реЗ рдХрд╣реАрдВ рдЖрд╕рд╛рди рд╣реИред рдХреЗрд╡рд▓ рдПрдХ рдЖрд░реНрдЧреНрдпреБрдореЗрдВрдЯ (mcp_server=True) рдХреЗ рд╕рд╛рде, рдЖрдкрдХрд╛ Gradio рдРрдк MCP рд╕рд░реНрд╡рд░ рдХреА рддрд░рд╣ рднреА рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ Cursor AI рдФрд░ Claude Desktop рдЬреИрд╕реЗ рдЯреВрд▓реНрд╕ рдХреЗ рд╕рд╛рде рд╕рд╣рдЬ рдЗрдВрдЯреАрдЧреНрд░реЗрд╢рди рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдЖрдкрдХреЗ AI рдПрдкреНрд▓рд┐рдХреЗрд╢рдиреЛрдВ рдХреЛ рдмрд╛рд╣рд░реА рд╕рд┐рд╕реНрдЯрдореНрд╕ рдФрд░ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рд░реЛрдорд╛рдВрдЪрдХ рд╕рдВрднрд╛рд╡рдирд╛рдПрдБ рдЦреБрд▓рддреА рд╣реИрдВред

рдЗрд╕ рд░реЛрдЪрдХ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ, рд╣рдордиреЗ Gradio MCP рдХреА рдмреБрдирд┐рдпрд╛рдж рд╕рдордЭреА, рдПрдХ MCP рд╕рд░реНрд╡рд░ рдмрдирд╛рдирд╛ рдФрд░ рдЯреЗрд╕реНрдЯ рдХрд░рдирд╛ рд╕реАрдЦрд╛, рдФрд░ Tavily API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЗрд╡ рдореМрд╕рдо рдбреЗрдЯрд╛ рдФрд░ рд╕рд┐рдЯреА рдиреНрдпреВрдЬрд╝ рд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛ред рдЕрдВрдд рддрдХ, рд╣рдордиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ Hugging Face Spaces рдкрд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд┐рдпрд╛ рдФрд░ рд▓реЛрдХрдкреНрд░рд┐рдп MCP-рдХрдореНрдкреИрдЯрд┐рдмрд▓ рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдЙрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред

рдпрджрд┐ рдЖрдк рдПрдЬреЗрдВрдЯрд┐рдХ AI рдФрд░ рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдЕрдиреНрдп рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рд╕реАрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛/рдХрд░рддреА рд╣реВрдБ:┬а

Abid Ali Awan

рд▓реЗрдЦрдХ

Abid Ali Awan

рдПрдХ рдкреНрд░рдорд╛рдгрд┐рдд рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрдЯрд┐рд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдЕрддреНрдпрд╛рдзреБрдирд┐рдХ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд╡рд╛рдЪрд╛рд░реА рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕рд╛рд╣рд┐рдд рд░рд╣рддрд╛/рд░рд╣рддреА рд╣реВрдБред рд╕реНрдкреАрдЪ рд░рд┐рдХреЙрдЧреНрдирд┐рд╢рди, рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ, MLOps, рд╕рдВрд╡рд╛рджрд╛рддреНрдордХ AI рдФрд░ NLP рдореЗрдВ рдордЬрдмреВрдд рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд╕рд╛рде, рдореИрдВрдиреЗ рдРрд╕реЗ рдмреБрджреНрдзрд┐рдорд╛рди рд╕рд┐рд╕реНрдЯрдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрдкрдиреА рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдирд┐рдЦрд╛рд░реА рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓ рд╕рдХреЗрдВред рддрдХрдиреАрдХреА рджрдХреНрд╖рддрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рдЬрдЯрд┐рд▓ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рднрд╛рд╖рд╛ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдореЗрдВ рднреА рдирд┐рдкреБрдг рд╣реВрдБред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдореИрдВ рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрд╕ рдкрд░ рдПрдХ рдорд╛рдВрдЧ рдореЗрдВ рд░рд╣рдиреЗ рд╡рд╛рд▓рд╛/рд╡рд╛рд▓реА рдмреНрд▓реЙрдЧрд░ рдмрди рдЧрдпрд╛/рдЧрдИ рд╣реВрдБ, рдФрд░ рдбреЗрдЯрд╛ рдкреНрд░реЛрдлреЗрд╢рдирд▓реЛрдВ рдХреЗ рдмрдврд╝рддреЗ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдФрд░ рд╡рд┐рдЪрд╛рд░ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛/рдХрд░рддреА рд╣реВрдБред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдореИрдВ рдХрдВрдЯреЗрдВрдЯ рдирд┐рд░реНрдорд╛рдг рдФрд░ рд╕рдВрдкрд╛рджрди рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реВрдБ, рдмрдбрд╝реЗ рднрд╛рд╖рд╛ рдореЙрдбрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП рдРрд╕рд╛ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдФрд░ рдЖрдХрд░реНрд╖рдХ рдХрдВрдЯреЗрдВрдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣рд╛/рд░рд╣реА рд╣реВрдБ рдЬреЛ рд╡реНрдпрд╡рд╕рд╛рдпреЛрдВ рдФрд░ рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рджреЛрдиреЛрдВ рдХреЛ рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рдХрд╛ рдЕрдзрд┐рдХрддрдо рд▓рд╛рдн рдЙрдард╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХреЗред

рд╡рд┐рд╖рдп