import asyncio
from mcp.client.session import ClientSession
from mcp.client.stdio_client import connect_stdio

async def main():
    # Claude互換を想定したstdioクライアントを起動
    reader, writer = await connect_stdio()

    # クライアントセッション初期化
    session = ClientSession(reader, writer)

    # MCPサーバーに接続して初期化
    await session.initialize()

    # ツール一覧を取得
    tools = await session.list_tools()
    print("🔧 利用可能なツール一覧:")
    for t in tools:
        print(f" - {t['name']}")

    # OTP取得ツールを呼び出し
    print("\n🛠️ get_otp を呼び出します...")
    result = await session.call_tool("get_otp", {"item_id": "3tlc7fn2atlwmmvf25yl4xlrvq"})
    print(f"✅ 取得結果: {result}")

    await session.close()

if __name__ == "__main__":
    asyncio.run(main())