How to Build a Custom MCP Client and Server | Step-by-Step Guide