File size: 782 Bytes
a604df6
 
 
5515a5b
a604df6
5adb8b6
a604df6
 
5adb8b6
a604df6
 
5515a5b
a604df6
 
 
5adb8b6
5515a5b
 
 
 
a604df6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
from llama_index.tools.mcp import BasicMCPClient
from dotenv import load_dotenv
import os
import asyncio
load_dotenv()
HF_TOKEN = os.getenv("HF_TOKEN")
async def connect_and_get_tools():
    # Connect to an MCP server using different transports
    http_client = BasicMCPClient("https://huggingface.co/mcp", headers={"Authorization": f"Bearer {HF_TOKEN}"})

    # List available tools
    tools = await asyncio.wait_for(http_client.list_tools(), timeout=10.0)
    return tools

async def call_tool(tool_name, tool_args):
    http_client = BasicMCPClient("https://huggingface.co/mcp", headers={"Authorization": f"Bearer {HF_TOKEN}"}) 
    result = await asyncio.wait_for(
            http_client.call_tool(tool_name, tool_args), 
            timeout=30.0
        )
    return result