{"type":"mcp_client","name":"swift-mcp-client","description":"This repository provides the `MCPServerManager` class for managing multiple MCP server instances, including lifecycle, connection management, and automatic tool discovery, using a JSON configuration file. This repository provides the `MCPServerManager`","category":"Developer Tools","language":"Swift","stars":0,"forks":0,"owner":"eastlondoner","github_url":"https://github.com/eastlondoner/swift-mcp-client","homepage":null,"setup":"## Setup\n\n1.  Load server configurations from a JSON file using `MCPServersConfig.load(from: configURL)`. \n2.  Create a server manager instance using `MCPServerManager()`. \n3.  Start servers and get available tools using `manager.startServers(from: config)`. \n4.  Get a client instance for a specific server using `manager.getClient(\"server_name\")`. \n5.  Use the client to make tool calls using `client.callTool(toolName: \"tool_name\", arguments: [\"argument_name\": \"argument_value\"])`. \n6.  Stop all servers when done using `manager.stopAll()`.","tools":"## Available Tools\n\n1.  Multiple Server Management (Start and manage multiple MCP servers simultaneously)\n2.  Automatic Tool Discovery (Discovers and provides access to available tools for each server during initialization)\n3.  Timeout Handling (Built-in timeout protection for server connection attempts)\n4.  Resource Cleanup (Properly closes connections and cleans up resources when stopping servers)\n5.  Error Handling (Comprehensive error handling for server startup and connection operations)","faq":null,"created_at":"2025-01-27T19:09:50+00:00","updated_at":"2025-02-19T10:58:37+00:00","source_url":"https://model-context-protocol.com/clients/swift-mcp-client-model-context-protocol","related_articles":[]}