Agentic AI – MCP Client Implementation


Agentic AI – MCP Client Implementation

Table Of Contents:

  1. What Is MultiServerMCPClient?
  2. Constructor 
  3. ‘connection’ Parameter.
  4. ‘callbacks’ Parameter.
  5. ‘tool_interceptor’ Parameter.
  6. ‘tool_name_prefix’ Parameter.
  7. ‘handle_tool_error’ Parameter.
  8. A Complete Example.
  9. Commonly Used Methods.

(1) What Is MultiServerMCPClient ?

(2) Constructor For MultiServerMCPClient ?

(3) ‘connections’ Parameter

(4) ‘callbacks’ Parameter

(4) ‘tool_interceptors’ Parameter

(5) ‘tool_name_prefix’ Parameter

(5) ‘handle_tool_errors’ Parameter

(6) A Complete Example.

(6) Methods You Will Commonly Use.

(7) Server Configurtion Parameters

(8) Structure Of A Connection

(9) Structure Of A Connection

(10) Transport Parameter

(11) ‘command’ Parameter

(12) ‘env’ Parameter

(13) ‘cwd’ Parameter

(14) ‘url’ Parameter

(15) ‘headers’ Parameter

(16) ‘timeout’ Parameter

(17) Complete ‘stdio’ Example

(17) Complete ‘HTTP’ Example

(18) Visual Comparison

(19) Summary Table

(20) Complete Example

import asyncio
from langchain_mcp_adapters.client import MultiServerMCPClient
from langchain.agents import create_agent

async def main():
   client = MultiServerMCPClient(
   connections = {
             "math":{
                "transport":"stdio",
                "command": "python",
                "args": ["path/to/math_server.py"]
             },
             
            "weather": {
                "transport":"http",
                "url": "http://localhost:8000/mcp"
            }
        }
       )
       
   tools = await client.get_tools()
   
   agent = create_agent(
           "model" = "claude-sonnet-4.6"
           toold = tools
           )
           
    math_response = agent.ainvoke(
                     {"messages": [{"role": "user", "content": "what's (3 + 5) x 12?"}]}
                    )
    
    weather_resoponse = agent.ainvoke(
                {"messages": [{"role": "user", "content": "what is the weather in nyc?"}]}           
    )
    
    print(math_response)
    print(weather_response)
    
    if __name__ == "__main__":
       asyncio.run(main())

  

Leave a Reply

Your email address will not be published. Required fields are marked *