From 8f9c28158d397fe8ae4f93b699e25848ab301e8a Mon Sep 17 00:00:00 2001 From: knielsen404 Date: Fri, 9 May 2025 18:43:08 +0200 Subject: [PATCH] add server and client name to policy get --- gateway/integrations/explorer.py | 8 ++++++-- gateway/mcp/mcp_context.py | 4 +++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/gateway/integrations/explorer.py b/gateway/integrations/explorer.py index dfd8bee..3002c02 100644 --- a/gateway/integrations/explorer.py +++ b/gateway/integrations/explorer.py @@ -145,7 +145,10 @@ async def push_trace( async def fetch_guardrails_from_explorer( - dataset_name: str, invariant_authorization: str + dataset_name: str, + invariant_authorization: str, + client_name: str | None = None, + server_name: str | None = None, ) -> GuardrailRuleSet: """Get the guardrails for the dataset. @@ -179,7 +182,8 @@ async def fetch_guardrails_from_explorer( # Get the dataset policies. policies_response = await client.get( - f"/api/v1/dataset/byuser/{username}/{dataset_name}/policy" + f"/api/v1/dataset/byuser/{username}/{dataset_name}/policy", + params={"client_name": client_name, "server_name": server_name}, ) if policies_response.status_code != 200: if policies_response.status_code == 404: diff --git a/gateway/mcp/mcp_context.py b/gateway/mcp/mcp_context.py index 2a5ed6d..7ae4ad3 100644 --- a/gateway/mcp/mcp_context.py +++ b/gateway/mcp/mcp_context.py @@ -105,5 +105,7 @@ class McpContext: async def load_guardrails(self): """Run async setup logic (e.g. fetching guardrails).""" self.guardrails = await fetch_guardrails_from_explorer( - self.explorer_dataset, "Bearer " + os.getenv("INVARIANT_API_KEY") + self.explorer_dataset, "Bearer " + os.getenv("INVARIANT_API_KEY"), + self.mcp_client_name, + self.mcp_server_name, )