get_tender_details
Fetch detailed information about a specific tender, including dates, guarantees, documents, and administrative details, using the tender ID on the Israeli Land Authority MCP Server.
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
- MCP tool handler: decorated with @mcp.tool(), accepts TenderDetailsArgs, fetches details via api_client and returns structured response.@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 input schema: requires michraz_id (int). Used for input validation in the tool handler.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:19-21 (registration)Top-level registration call to register_tools(mcp, api_client) in the MCP server setup, which chains to tender_tools registration.# Register tools and resources register_tools(mcp, api_client) register_resources(mcp)
- Core helper method in IsraeliLandAPI client: performs rate-limited HTTP GET to the 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)}" )
- src/remy_mcp/tools/__init__.py:9-12 (registration)Intermediate registration: calls register_tender_tools(mcp, api_client) which defines and registers the tool using @mcp.tool() decorators.def register_tools(mcp, api_client): """Register all MCP tools""" register_tender_tools(mcp, api_client) register_settlement_tools(mcp, api_client)