Update mcp_server_main.py
This commit is contained in:
+22
-7
@@ -1092,7 +1092,7 @@ async def search_yargitay_detailed(
|
|||||||
kararSonSiraNo: str = Field("", description="Ending sequence number for 'Karar No'."),
|
kararSonSiraNo: str = Field("", description="Ending sequence number for 'Karar No'."),
|
||||||
baslangicTarihi: str = Field("", description="Start date for decision search (DD.MM.YYYY)."),
|
baslangicTarihi: str = Field("", description="Start date for decision search (DD.MM.YYYY)."),
|
||||||
bitisTarihi: str = Field("", description="End date for decision search (DD.MM.YYYY)."),
|
bitisTarihi: str = Field("", description="End date for decision search (DD.MM.YYYY)."),
|
||||||
pageSize: int = Field(10, ge=1, le=10, description="Number of results per page."),
|
# pageSize: int = Field(10, ge=1, le=10, description="Number of results per page."),
|
||||||
pageNumber: int = Field(1, ge=1, description="Page number to retrieve.")
|
pageNumber: int = Field(1, ge=1, description="Page number to retrieve.")
|
||||||
) -> CompactYargitaySearchResult:
|
) -> CompactYargitaySearchResult:
|
||||||
# Search Yargıtay decisions using primary API with 52 chamber filtering and advanced operators.
|
# Search Yargıtay decisions using primary API with 52 chamber filtering and advanced operators.
|
||||||
@@ -1101,6 +1101,8 @@ async def search_yargitay_detailed(
|
|||||||
if birimYrgKurulDaire == "ALL":
|
if birimYrgKurulDaire == "ALL":
|
||||||
birimYrgKurulDaire = ""
|
birimYrgKurulDaire = ""
|
||||||
|
|
||||||
|
pageSize = 10 # Default value
|
||||||
|
|
||||||
search_query = YargitayDetailedSearchRequest(
|
search_query = YargitayDetailedSearchRequest(
|
||||||
arananKelime=arananKelime,
|
arananKelime=arananKelime,
|
||||||
birimYrgKurulDaire=birimYrgKurulDaire,
|
birimYrgKurulDaire=birimYrgKurulDaire,
|
||||||
@@ -1179,10 +1181,12 @@ async def search_danistay_by_keyword(
|
|||||||
notAndKelimeler: List[str] = Field(default_factory=list, description="Keywords for NOT AND logic."),
|
notAndKelimeler: List[str] = Field(default_factory=list, description="Keywords for NOT AND logic."),
|
||||||
notOrKelimeler: List[str] = Field(default_factory=list, description="Keywords for NOT OR logic."),
|
notOrKelimeler: List[str] = Field(default_factory=list, description="Keywords for NOT OR logic."),
|
||||||
pageNumber: int = Field(1, ge=1, description="Page number."),
|
pageNumber: int = Field(1, ge=1, description="Page number."),
|
||||||
pageSize: int = Field(10, ge=1, le=10, description="Results per page.")
|
# pageSize: int = Field(10, ge=1, le=10, description="Results per page.")
|
||||||
) -> CompactDanistaySearchResult:
|
) -> CompactDanistaySearchResult:
|
||||||
# Search Danıştay decisions with keyword logic.
|
# Search Danıştay decisions with keyword logic.
|
||||||
|
|
||||||
|
pageSize = 10 # Default value
|
||||||
|
|
||||||
search_query = DanistayKeywordSearchRequest(
|
search_query = DanistayKeywordSearchRequest(
|
||||||
andKelimeler=andKelimeler,
|
andKelimeler=andKelimeler,
|
||||||
orKelimeler=orKelimeler,
|
orKelimeler=orKelimeler,
|
||||||
@@ -1229,10 +1233,12 @@ async def search_danistay_detailed(
|
|||||||
mevzuatAdi: str = Field("", description="Legislation name."),
|
mevzuatAdi: str = Field("", description="Legislation name."),
|
||||||
madde: str = Field("", description="Article number."),
|
madde: str = Field("", description="Article number."),
|
||||||
pageNumber: int = Field(1, ge=1, description="Page number."),
|
pageNumber: int = Field(1, ge=1, description="Page number."),
|
||||||
pageSize: int = Field(10, ge=1, le=10, description="Results per page.")
|
# pageSize: int = Field(10, ge=1, le=10, description="Results per page.")
|
||||||
) -> CompactDanistaySearchResult:
|
) -> CompactDanistaySearchResult:
|
||||||
# Search Danıştay decisions with detailed filtering.
|
# Search Danıştay decisions with detailed filtering.
|
||||||
|
|
||||||
|
pageSize = 10 # Default value
|
||||||
|
|
||||||
search_query = DanistayDetailedSearchRequest(
|
search_query = DanistayDetailedSearchRequest(
|
||||||
daire=daire,
|
daire=daire,
|
||||||
esasYil=esasYil,
|
esasYil=esasYil,
|
||||||
@@ -1310,10 +1316,12 @@ async def search_emsal_detailed_decisions(
|
|||||||
sort_criteria: str = Field("1", description="Sorting criteria (e.g., 1: Esas No)."),
|
sort_criteria: str = Field("1", description="Sorting criteria (e.g., 1: Esas No)."),
|
||||||
sort_direction: str = Field("desc", description="Sorting direction ('asc' or 'desc')."),
|
sort_direction: str = Field("desc", description="Sorting direction ('asc' or 'desc')."),
|
||||||
page_number: int = Field(1, ge=1, description="Page number (accepts int)."),
|
page_number: int = Field(1, ge=1, description="Page number (accepts int)."),
|
||||||
page_size: int = Field(10, ge=1, le=10, description="Results per page.")
|
# page_size: int = Field(10, ge=1, le=10, description="Results per page.")
|
||||||
) -> CompactEmsalSearchResult:
|
) -> CompactEmsalSearchResult:
|
||||||
"""Search Emsal precedent decisions with detailed criteria."""
|
"""Search Emsal precedent decisions with detailed criteria."""
|
||||||
|
|
||||||
|
page_size = 10 # Default value
|
||||||
|
|
||||||
search_query = EmsalSearchRequest(
|
search_query = EmsalSearchRequest(
|
||||||
keyword=keyword,
|
keyword=keyword,
|
||||||
selected_bam_civil_court=selected_bam_civil_court,
|
selected_bam_civil_court=selected_bam_civil_court,
|
||||||
@@ -1507,7 +1515,7 @@ async def search_anayasa_unified(
|
|||||||
decision_type: Literal["norm_denetimi", "bireysel_basvuru"] = Field(..., description="Decision type: norm_denetimi (norm control) or bireysel_basvuru (individual applications)"),
|
decision_type: Literal["norm_denetimi", "bireysel_basvuru"] = Field(..., description="Decision type: norm_denetimi (norm control) or bireysel_basvuru (individual applications)"),
|
||||||
keywords: List[str] = Field(default_factory=list, description="Keywords to search for (common parameter)"),
|
keywords: List[str] = Field(default_factory=list, description="Keywords to search for (common parameter)"),
|
||||||
page_to_fetch: int = Field(1, ge=1, le=100, description="Page number to fetch (1-100)"),
|
page_to_fetch: int = Field(1, ge=1, le=100, description="Page number to fetch (1-100)"),
|
||||||
results_per_page: int = Field(10, ge=1, le=100, description="Results per page (1-100)"),
|
# results_per_page: int = Field(10, ge=1, le=100, description="Results per page (1-100)"),
|
||||||
|
|
||||||
# Norm Denetimi specific parameters (ignored for bireysel_basvuru)
|
# Norm Denetimi specific parameters (ignored for bireysel_basvuru)
|
||||||
keywords_all: List[str] = Field(default_factory=list, description="All keywords must be present (norm_denetimi only)"),
|
keywords_all: List[str] = Field(default_factory=list, description="All keywords must be present (norm_denetimi only)"),
|
||||||
@@ -1524,6 +1532,8 @@ async def search_anayasa_unified(
|
|||||||
) -> str:
|
) -> str:
|
||||||
logger.info(f"Tool 'search_anayasa_unified' called for decision_type: {decision_type}")
|
logger.info(f"Tool 'search_anayasa_unified' called for decision_type: {decision_type}")
|
||||||
|
|
||||||
|
results_per_page = 10 # Default value
|
||||||
|
|
||||||
try:
|
try:
|
||||||
request = AnayasaUnifiedSearchRequest(
|
request = AnayasaUnifiedSearchRequest(
|
||||||
decision_type=decision_type,
|
decision_type=decision_type,
|
||||||
@@ -1777,7 +1787,7 @@ For best results, use exact phrases with quotes for legal terms."""),
|
|||||||
default=["YARGITAYKARARI", "DANISTAYKARAR"],
|
default=["YARGITAYKARARI", "DANISTAYKARAR"],
|
||||||
description="Court types: YARGITAYKARARI, DANISTAYKARAR, YERELHUKUK, ISTINAFHUKUK, KYB"
|
description="Court types: YARGITAYKARARI, DANISTAYKARAR, YERELHUKUK, ISTINAFHUKUK, KYB"
|
||||||
),
|
),
|
||||||
pageSize: int = Field(10, ge=1, le=10, description="Results per page (1-10)"),
|
# pageSize: int = Field(10, ge=1, le=10, description="Results per page (1-10)"),
|
||||||
pageNumber: int = Field(1, ge=1, description="Page number"),
|
pageNumber: int = Field(1, ge=1, description="Page number"),
|
||||||
birimAdi: BirimAdiEnum = Field("ALL", description="""
|
birimAdi: BirimAdiEnum = Field("ALL", description="""
|
||||||
Chamber filter (optional). Abbreviated values with Turkish names:
|
Chamber filter (optional). Abbreviated values with Turkish names:
|
||||||
@@ -1788,6 +1798,9 @@ For best results, use exact phrases with quotes for legal terms."""),
|
|||||||
kararTarihiEnd: str = Field("", description="End date (ISO 8601 format)")
|
kararTarihiEnd: str = Field("", description="End date (ISO 8601 format)")
|
||||||
) -> dict:
|
) -> dict:
|
||||||
"""Search Turkish legal databases via unified Bedesten API."""
|
"""Search Turkish legal databases via unified Bedesten API."""
|
||||||
|
|
||||||
|
pageSize = 10 # Default value
|
||||||
|
|
||||||
search_data = BedestenSearchData(
|
search_data = BedestenSearchData(
|
||||||
pageSize=pageSize,
|
pageSize=pageSize,
|
||||||
pageNumber=pageNumber,
|
pageNumber=pageNumber,
|
||||||
@@ -2280,11 +2293,13 @@ async def check_government_servers_health() -> Dict[str, Any]:
|
|||||||
async def search_kvkk_decisions(
|
async def search_kvkk_decisions(
|
||||||
keywords: str = Field(..., description="Turkish keywords. Supports +required -excluded \"exact phrase\" operators"),
|
keywords: str = Field(..., description="Turkish keywords. Supports +required -excluded \"exact phrase\" operators"),
|
||||||
page: int = Field(1, ge=1, le=50, description="Page number for results (1-50)."),
|
page: int = Field(1, ge=1, le=50, description="Page number for results (1-50)."),
|
||||||
pageSize: int = Field(10, ge=1, le=20, description="Number of results per page (1-20).")
|
# pageSize: int = Field(10, ge=1, le=20, description="Number of results per page (1-20).")
|
||||||
) -> KvkkSearchResult:
|
) -> KvkkSearchResult:
|
||||||
"""Search function for legal decisions."""
|
"""Search function for legal decisions."""
|
||||||
logger.info(f"KVKK search tool called with keywords: {keywords}")
|
logger.info(f"KVKK search tool called with keywords: {keywords}")
|
||||||
|
|
||||||
|
pageSize = 10 # Default value
|
||||||
|
|
||||||
search_request = KvkkSearchRequest(
|
search_request = KvkkSearchRequest(
|
||||||
keywords=keywords,
|
keywords=keywords,
|
||||||
page=page,
|
page=page,
|
||||||
|
|||||||
Reference in New Issue
Block a user