पाठ 16 / 31

अपने Agent में MCP Tools उपयोग करना

MCP tool परिभाषाओं को agent loop से जोड़ें।

List, convert, call, return

जब आप अपना host या agent बनाते हैं, loop यह है: जुड़ें और initialise करें; tools/list; हर MCP tool (नाम, विवरण, inputSchema) को अपनी model API के tool format में बदलें (JSON Schema आम तौर पर सीधे map होता है); उन tools के साथ user संदेश भेजें; मॉडल tool call लौटाए तो नीति जाँचें चलाएँ, सही session पर tools/call बुलाएँ, content परिणाम को tool-result संदेश में बदलें और तब तक जारी रखें जब तक मॉडल उत्तर न दे। कई agent frameworks (LangChain, LangGraph, OpenAI और Anthropic agent SDKs आदि) यह रूपांतरण करने वाले MCP adapters देते हैं, पर ज़िम्मेदारियाँ आपकी रहती हैं: अनुमोदन, सीमाएँ, logging और error सँभाल।

Agent-पक्ष का loop (pseudocode)

Frameworks इसे लपेटते हैं; जानना debugging में मदद करता है। उदाहरण; यहाँ चलाया नहीं गया।

tools = mcp_session.list_tools()                       # tools/list (follow pagination)
model_tools = [{"name": t.name, "description": t.description,
                "input_schema": t.inputSchema} for t in tools]

messages = [user_message]
for step in range(MAX_STEPS):                                # always cap the loop
    reply = model.call(messages, tools=model_tools)
    if not reply.tool_calls:
        return reply.text
    for call in reply.tool_calls:
        ok, why = authorize(call.name, call.args)             # your policy / approval layer
        result = mcp_session.call_tool(call.name, call.args) if ok else {"error": why}
        messages.append(tool_result_message(call.id, result))

त्वरित जाँच: Agent frameworks के MCP adapters आपके लिए क्या नहीं करते?

  • Tools सूचीबद्ध करना
  • Tool schemas बदलना
  • आपकी अनुमोदन नीति, सीमाएँ और logging तय करना
  • Calls को server तक भेजना
Answer

आपकी अनुमोदन नीति, सीमाएँ और logging तय करना — सुरक्षा और शासन application की ज़िम्मेदारी बने रहते हैं।