get_tender_details
Retrieve comprehensive tender information including dates, guarantees, documents, and administrative details from the Israeli Land Authority by specifying a tender ID.
Instructions
Get comprehensive details for a specific tender by ID
Returns detailed information including dates, guarantees, documents, and administrative details for the specified tender.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| args | Yes |
Implementation Reference
- The MCP tool handler function implementing get_tender_details. It uses TenderDetailsArgs input and delegates to the API client.@mcp.tool() def get_tender_details(args: TenderDetailsArgs) -> Dict[str, Any]: """ Get comprehensive details for a specific tender by ID Returns detailed information including dates, guarantees, documents, and administrative details for the specified tender. """ try: details = api_client.get_tender_details(args.michraz_id) return {"success": True, "tender_id": args.michraz_id, "details": details} except Exception as e: return {"success": False, "error": str(e), "tender_id": args.michraz_id}
- Pydantic BaseModel defining the input schema for the get_tender_details tool, requiring a single michraz_id integer.class TenderDetailsArgs(BaseModel): """Arguments for tender details tools""" michraz_id: int = Field(..., description="The tender ID to get details for")
- src/remy_mcp/server.py:20-20 (registration)Registration call in the main server setup that triggers tool registration, including get_tender_details via register_tender_tools.register_tools(mcp, api_client)
- Underlying API client method that performs the HTTP GET request to the Israeli Land Authority API to retrieve tender details.def get_tender_details(self, michraz_id: int) -> Dict[str, Any]: """ Get detailed information for a specific tender Args: michraz_id: The tender ID to get details for Returns: Dictionary containing tender details """ self._rate_limit() try: response = self.session.get( f"{self.BASE_URL}/MichrazDetailsApi/Get", params={"michrazID": michraz_id}, timeout=30, ) response.raise_for_status() return response.json() except requests.exceptions.RequestException as e: raise Exception( f"Failed to get tender details for ID {michraz_id}: {str(e)}" )