Commit Graph

84 Commits

Author SHA1 Message Date
Luca Beurer-Kellner ac68e4a8f7 port tools/list message support to SSE 2025-05-16 19:49:30 +02:00
Luca Beurer-Kellner f05731b55f append trace even if not pushing 2025-05-16 14:05:23 +02:00
Luca Beurer-Kellner d57e3f8740 Merge branch 'main' into mcp-metadata 2025-05-16 13:54:55 +02:00
Luca Beurer-Kellner 983844a0a9 Merge branch 'main' into mcp-metadata 2025-05-16 11:32:48 +02:00
Hemang 4dbb400620 Move invariant api key check to __main__.py so that the same check can work for both mcp and server commands. 2025-05-16 14:33:00 +05:30
Hemang f33b2392f6 Fix the Dockerfle for gateway to copy correctly. 2025-05-16 14:33:00 +05:30
Hemang 876eb44c78 Make MCP stdio gateway fully async. With sync and async mixed behaviour for running background tasks we were running into issues. 2025-05-16 14:33:00 +05:30
Hemang a214837b1e Add message to session store for MCP sse in post path before returning. 2025-05-14 15:44:52 +02:00
Hemang e32ec74ed2 Fix paths to pyproject.toml and README in dockerfile.gateway. Also update context in publish-images.yml 2025-05-14 18:05:14 +05:30
Hemang e2e004b7b1 Move dockerfiles inside gateway/ and update main CLI script to be able to run build, up, down and logs on a local gateway server instance. 2025-05-14 14:21:48 +05:30
knielsen404 7cd5950e38 Merge branch 'main' into mcp-metadata 2025-05-12 11:09:22 +02:00
knielsen404 8f9c28158d add server and client name to policy get 2025-05-09 18:43:08 +02:00
Hemang edd9fd9a5c When tool_call is blocked in MCP Post method, add the error message to a pending error messages list. Create two queues in the MCP SSE Get endpoint which correspond to the MCP server events and these pending error messages. These two queues are merged to return events back to the client. 2025-05-09 11:05:33 +05:30
Luca Beurer-Kellner 8988f9a7dd verbose logging + loud exception failure 2025-05-08 18:33:44 +02:00
Luca Beurer-Kellner cfacbde975 log version 2025-05-08 18:08:19 +02:00
Luca Beurer-Kellner c2e9745163 line logging 2025-05-08 18:03:37 +02:00
Hemang 794aae0326 Add MCP guardrailing for SSE. 2025-05-08 20:40:28 +05:30
Luca Beurer-Kellner 9fc384d629 mcp: make error reporting configurable 2025-05-08 15:24:59 +02:00
Hemang 40ec6d2db2 Add MCP SSE server proxying in gateway. 2025-05-08 14:11:22 +05:30
Luca Beurer-Kellner 85de70dcf1 Merge branch 'main' into mcp-metadata 2025-05-07 09:54:10 +02:00
Hemang 1f6e2ed7fb Update streaming in anthropic route to handle chunks with incomplete events. Introduce an sse_buffer which keeps track of the current incomplete event from the last processed chunk. 2025-05-07 01:08:15 +05:30
Hemang aec7808e3e Fix broken integration tests. 2025-05-07 01:08:15 +05:30
Luca Beurer-Kellner 356d88a01e list_tools as tool call 2025-05-06 20:55:29 +02:00
Luca Beurer-Kellner 1851cbe818 use empty object as parameters, if None 2025-05-06 18:05:29 +02:00
Luca Beurer-Kellner 483249761f unify session metadata 2025-05-06 16:24:20 +02:00
Luca Beurer-Kellner 9cf6aa2607 nest extra mcp metadata in metadata object 2025-05-06 16:20:58 +02:00
Luca Beurer-Kellner 6ca07a5802 support for setting static metadata for MCP sessions 2025-05-06 16:17:19 +02:00
Luca Beurer-Kellner 86ec75ba2d use select() before readline (#45) 2025-05-06 16:07:50 +02:00
Luca Beurer-Kellner a5f5ea42da use select() before readline 2025-05-05 13:55:03 +02:00
Hemang 52f5359d36 Add MCP client and server names in trace metadata for Explorer. 2025-04-24 15:48:36 +02:00
Hemang 7287065940 Improve on request reads from byte by byte to line by line. 2025-04-24 15:48:36 +02:00
knielsen404 55874d552e feat: append_and_push_trace uses configurable API URL 2025-04-23 13:08:57 +01:00
Kristian Nielsen ed63a4b592 fix typo (#42) 2025-04-23 09:28:45 +01:00
Marco Milanta 20d1e0afd4 fix: print breaks claude 2025-04-17 14:59:59 +02:00
Hemang Sarkar 2b9785de11 Update README.md 2025-04-17 10:05:28 +02:00
Hemang 45d384b7a3 Update README for mcp. 2025-04-17 09:54:26 +02:00
Hemang e8deb8feda Rename dataset-name flag for MCP to project-name and change CLI command to run mcp 2025-04-17 07:15:28 +02:00
Hemang 2c34205c4c Fix asyncio and threading. Dedupe annotations before pushing. Add README. 2025-04-17 07:15:28 +02:00
Hemang 66c6dcb8f9 Add mcp.py 2025-04-17 07:15:28 +02:00
Hemang 15210997a7 Add the invariant-gateway CLI script. 2025-04-17 07:15:28 +02:00
Hemang 5bf121bbda Use pyproject.toml instead of requirements.txt and fix some broken tests. 2025-04-17 07:15:28 +02:00
Luca Beurer-Kellner 6b6f33bde6 fix: don't hardcode preview 2025-04-04 10:38:14 +02:00
Luca Beurer-Kellner c4dd3f3b19 Allow to specify different API keys for the guardrailing service (#36)
* minor refactor for getting invariant api keys for guardrailing

* allow different guardrailing api key

* tests

* fix comment + import

* improved unauthorized handling
2025-04-03 12:15:30 +02:00
Luca Beurer-Kellner e17b53b927 Extract guardrails from header if provided (#33)
* guardrails from header

* use in-file guardrails in client.py

* support case without request

* remove client script

* tests: guardrailing rule passed in header

* include checked guardrails in annotation extra metadata

* include guardrailing action

* update guardrail metadata
2025-04-03 08:56:15 +02:00
Hemang 760b739894 Correct user API GET call to fetch policies. 2025-04-03 00:02:19 +02:00
Hemang 6d3366b91b Add OPTIONS preflight support for routes. 2025-04-02 22:42:22 +02:00
Marco Milanta 37005c03be fix: add tests (and found bug) 2025-04-02 16:03:51 +02:00
Marco Milanta 7b6d77e0a5 feat: add litellm support 2025-04-02 15:22:39 +02:00
Hemang f3a56e1e43 Add preguardrailing tests for guardrails pulled from explorer. 2025-04-02 13:40:52 +02:00
Hemang 55f0f741c0 Add tests for guardrails integration with explorer. 2025-04-02 13:40:52 +02:00