{"langgraph":{"description":"Use as a tool node in LangGraph","snippet":"from langchain_core.tools import tool\nimport httpx\n\nBASE = 'https://your-server.com'\nHEADERS = {'X-API-Key': 'your-key'}\n\n@tool\ndef process_receipt(receipt_id: str) -> dict:\n    \"\"\"Process a receipt and return structured expense data.\"\"\"\n    r = httpx.post(f'{BASE}/tools/process_receipt',\n        json={'receipt_id': receipt_id}, headers=HEADERS)\n    return r.json()\n"},"crewai":{"description":"Use as a CrewAI tool","snippet":"from crewai_tools import BaseTool\nimport httpx\n\nclass ReceiptProcessorTool(BaseTool):\n    name = 'process_receipt'\n    description = 'Extract structured data from a receipt'\n\n    def _run(self, receipt_id: str) -> dict:\n        r = httpx.post('https://your-server.com/tools/process_receipt',\n            json={'receipt_id': receipt_id},\n            headers={'X-API-Key': 'your-key'})\n        return r.json()\n"},"autogen":{"description":"Register as an AutoGen function","snippet":"import httpx\n\ndef process_receipt(receipt_id: str) -> dict:\n    r = httpx.post('https://your-server.com/tools/process_receipt',\n        json={'receipt_id': receipt_id},\n        headers={'X-API-Key': 'your-key'})\n    return r.json()\n\n# Register with AutoGen agent:\n# assistant.register_function(\n#     function_map={'process_receipt': process_receipt})\n"},"raw_python":{"description":"Plain Python with httpx","snippet":"import httpx\n\nBASE = 'https://your-server.com'\nHEADERS = {'X-API-Key': 'your-key'}\n\n# 1. Register\nr = httpx.post(f'{BASE}/register_agent',\n    json={'agent_name': 'my-expense-bot'})\napi_key = r.json()['api_key']\n\n# 2. Upload\nr = httpx.post(f'{BASE}/tools/upload_receipt',\n    files={'file': open('receipt.jpg', 'rb')},\n    data={'mime_type': 'image/jpeg'},\n    headers={'X-API-Key': api_key})\nreceipt_id = r.json()['receipt_id']\n\n# 3. Process\nr = httpx.post(f'{BASE}/tools/process_receipt',\n    json={'receipt_id': receipt_id},\n    headers={'X-API-Key': api_key})\nexpense = r.json()['structured_expense']\n"}}