tavus-cli 0.5.0__tar.gz → 0.6.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. tavus_cli-0.6.0/.release-please-manifest.json +3 -0
  2. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/CHANGELOG.md +7 -0
  3. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/PKG-INFO +1 -1
  4. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/packages/tavus/pyproject.toml +2 -2
  5. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/packages/tavus-mcp/pyproject.toml +2 -2
  6. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/pyproject.toml +1 -1
  7. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/__init__.py +1 -1
  8. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/server.py +9 -2
  9. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/integration/test_mcp_server.py +17 -0
  10. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/uv.lock +2 -2
  11. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/package-lock.json +2 -2
  12. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/package.json +1 -1
  13. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/src/tavus.ts +4 -3
  14. tavus_cli-0.6.0/workers/tavus-mcp/src/version.ts +1 -0
  15. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/test/tavus.test.ts +26 -0
  16. tavus_cli-0.5.0/.release-please-manifest.json +0 -3
  17. tavus_cli-0.5.0/workers/tavus-mcp/src/version.ts +0 -1
  18. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.env.example +0 -0
  19. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.github/workflows/ci.yml +0 -0
  20. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.github/workflows/deploy-cloudflare-worker.yml +0 -0
  21. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.github/workflows/pr-reviews.yml +0 -0
  22. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.github/workflows/pypi-cli.yml +0 -0
  23. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.github/workflows/tail-cloudflare-worker.yml +0 -0
  24. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.github/workflows/validate-staging-deployment.yml +0 -0
  25. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/.gitignore +0 -0
  26. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/AGENTS.md +0 -0
  27. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/README.md +0 -0
  28. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/docs/gemini-enterprise/README.md +0 -0
  29. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/docs/gemini-enterprise/listing.md +0 -0
  30. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/docs/gemini-enterprise/test-queries.md +0 -0
  31. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/docs/usage-observability.md +0 -0
  32. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/packages/tavus/README.md +0 -0
  33. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/packages/tavus-mcp/README.md +0 -0
  34. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/release-please-config.json +0 -0
  35. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/scripts/__init__.py +0 -0
  36. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/scripts/check_release_versions.py +0 -0
  37. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/skills/tavus-agentic-pals/SKILL.md +0 -0
  38. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/skills/tavus-agentic-pals/agents/openai.yaml +0 -0
  39. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/skills/tavus-agentic-pals/references/build-and-verify.md +0 -0
  40. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/skills/tavus-agentic-pals/references/builder-workflow.md +0 -0
  41. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/skills/tavus-agentic-pals/references/chat-mode.md +0 -0
  42. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/skills/tavus-agentic-pals/references/examples.md +0 -0
  43. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/cli/__init__.py +0 -0
  44. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/cli/main.py +0 -0
  45. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/__init__.py +0 -0
  46. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/auth/__init__.py +0 -0
  47. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/auth/keyring_store.py +0 -0
  48. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/auth/oauth.py +0 -0
  49. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/auth/session.py +0 -0
  50. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/client/__init__.py +0 -0
  51. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/client/http.py +0 -0
  52. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/daily_transport.py +0 -0
  53. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/env.py +0 -0
  54. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/errors.py +0 -0
  55. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/pal_urls.py +0 -0
  56. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/patch.py +0 -0
  57. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/__init__.py +0 -0
  58. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/build_and_verify.py +0 -0
  59. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/capabilities.py +0 -0
  60. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/carrier_builder.py +0 -0
  61. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/knowledge.py +0 -0
  62. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/options.py +0 -0
  63. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/quickstart.py +0 -0
  64. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/scaffold_embed.py +0 -0
  65. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/templates.py +0 -0
  66. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/recipes/tool_reuse.py +0 -0
  67. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/schemas/__init__.py +0 -0
  68. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/schemas/file_manifest.py +0 -0
  69. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/schemas/guardrail.py +0 -0
  70. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/schemas/objective.py +0 -0
  71. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/schemas/pal.py +0 -0
  72. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/schemas/pronunciation.py +0 -0
  73. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/src/tavus_mcp/sdk/schemas/tool.py +0 -0
  74. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/conftest.py +0 -0
  75. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/integration/test_cli.py +0 -0
  76. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/integration/test_client.py +0 -0
  77. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/integration/test_oauth.py +0 -0
  78. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_auth.py +0 -0
  79. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_build_and_verify.py +0 -0
  80. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_builder.py +0 -0
  81. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_capabilities.py +0 -0
  82. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_daily_transport.py +0 -0
  83. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_env.py +0 -0
  84. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_guardrail_schema.py +0 -0
  85. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_objective_schema.py +0 -0
  86. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_pal_schema.py +0 -0
  87. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_patch.py +0 -0
  88. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_pronunciation_schema.py +0 -0
  89. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_release_versions.py +0 -0
  90. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_scaffold_embed.py +0 -0
  91. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_tool_reuse.py +0 -0
  92. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/tests/unit/test_tool_schema.py +0 -0
  93. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/.dev.vars.example +0 -0
  94. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/src/index.ts +0 -0
  95. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/src/oauth-grant.ts +0 -0
  96. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/src/oauth.ts +0 -0
  97. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/test/parity.test.ts +0 -0
  98. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/tsconfig.json +0 -0
  99. {tavus_cli-0.5.0 → tavus_cli-0.6.0}/workers/tavus-mcp/wrangler.jsonc +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.6.0"
3
+ }
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.6.0](https://github.com/Tavus-Engineering/tavus-mcp/compare/v0.5.0...v0.6.0) (2026-10-07)
4
+
5
+
6
+ ### Features
7
+
8
+ * let tavus_pal_list return the newest PALs first ([#54](https://github.com/Tavus-Engineering/tavus-mcp/issues/54)) ([1a48ac9](https://github.com/Tavus-Engineering/tavus-mcp/commit/1a48ac9d825e5c8d4bf708b99a7f2874a909bac2))
9
+
3
10
  ## [0.5.0](https://github.com/Tavus-Engineering/tavus-mcp/compare/v0.4.5...v0.5.0) (2026-09-30)
4
11
 
5
12
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: tavus-cli
3
- Version: 0.5.0
3
+ Version: 0.6.0
4
4
  Summary: Tavus CLI and MCP server for agentic PAL creation and editing.
5
5
  Requires-Python: >=3.11
6
6
  Requires-Dist: fastmcp>=2.0.0
@@ -1,11 +1,11 @@
1
1
  [project]
2
2
  name = "tavus"
3
- version = "0.5.0" # x-release-please-version
3
+ version = "0.6.0" # x-release-please-version
4
4
  description = "Official alias for tavus-cli, the Tavus CLI and MCP server."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
7
7
  dependencies = [
8
- "tavus-cli==0.5.0", # x-release-please-version
8
+ "tavus-cli==0.6.0", # x-release-please-version
9
9
  ]
10
10
 
11
11
  [project.urls]
@@ -1,11 +1,11 @@
1
1
  [project]
2
2
  name = "tavus-mcp"
3
- version = "0.5.0" # x-release-please-version
3
+ version = "0.6.0" # x-release-please-version
4
4
  description = "Official alias for tavus-cli, which provides the tavus-mcp MCP server."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
7
7
  dependencies = [
8
- "tavus-cli==0.5.0", # x-release-please-version
8
+ "tavus-cli==0.6.0", # x-release-please-version
9
9
  ]
10
10
 
11
11
  [project.urls]
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "tavus-cli"
3
- version = "0.5.0"
3
+ version = "0.6.0"
4
4
  description = "Tavus CLI and MCP server for agentic PAL creation and editing."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -1,4 +1,4 @@
1
1
  """Tavus CLI and MCP server package."""
2
2
 
3
3
  __all__ = ["__version__"]
4
- __version__ = "0.5.0" # x-release-please-version
4
+ __version__ = "0.6.0" # x-release-please-version
@@ -313,10 +313,17 @@ async def tavus_pal_list(
313
313
  limit: int = 25,
314
314
  page: int = 0,
315
315
  pal_type: str | None = None,
316
+ sort: Literal["asc", "desc"] | None = None,
316
317
  ) -> Any:
317
- """List compact PAL summaries. Use ``tavus_pal_get`` for full settings."""
318
+ """List compact PAL summaries, oldest first by creation time.
319
+
320
+ Set ``sort`` to ``"desc"`` for the newest PALs first. Use ``tavus_pal_get``
321
+ for full settings.
322
+ """
318
323
  async with TavusClient.from_env(surface="mcp") as client:
319
- response = await client.pals.list(limit=limit, page=page, pal_type=pal_type)
324
+ response = await client.pals.list(
325
+ limit=limit, page=page, pal_type=pal_type, sort=sort
326
+ )
320
327
  return _compact_list(response, _pal_summary)
321
328
 
322
329
 
@@ -108,6 +108,23 @@ async def test_mcp_requests_identify_the_mcp_surface(clean_env: Path) -> None:
108
108
  assert "x-tavus-client-intent" not in request.headers
109
109
 
110
110
 
111
+ @pytest.mark.asyncio
112
+ @respx.mock
113
+ async def test_pal_list_forwards_sort_order(clean_env: Path) -> None:
114
+ (clean_env / ".env").write_text(
115
+ "TAVUS_ENV=TEST\n"
116
+ "TAVUS_API_KEY=test-key\n"
117
+ "TAVUS_PUBLIC_API_BASE_URL=https://api.example.test/v2\n"
118
+ )
119
+ route = respx.get("https://api.example.test/v2/pals").mock(
120
+ return_value=Response(200, json={"data": [], "total_count": 0})
121
+ )
122
+
123
+ await tavus_pal_list(sort="desc")
124
+
125
+ assert route.calls.last.request.url.params["sort"] == "desc"
126
+
127
+
111
128
  @pytest.mark.asyncio
112
129
  async def test_every_tool_offers_an_optional_intent() -> None:
113
130
  for tool in await mcp.list_tools():
@@ -1,5 +1,5 @@
1
1
  version = 1
2
- revision = 3
2
+ revision = 5
3
3
  requires-python = ">=3.11"
4
4
 
5
5
  [[package]]
@@ -1303,7 +1303,7 @@ wheels = [
1303
1303
 
1304
1304
  [[package]]
1305
1305
  name = "tavus-cli"
1306
- version = "0.5.0"
1306
+ version = "0.6.0"
1307
1307
  source = { editable = "." }
1308
1308
  dependencies = [
1309
1309
  { name = "fastmcp" },
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@tavus/tavus-mcp-worker",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@tavus/tavus-mcp-worker",
9
- "version": "0.5.0",
9
+ "version": "0.6.0",
10
10
  "dependencies": {
11
11
  "@modelcontextprotocol/sdk": "^1.29.0",
12
12
  "agents": "^0.12.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tavus/tavus-mcp-worker",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "scripts": {
@@ -540,11 +540,12 @@ export function createTavusMcpServer(env: Env, apiKey?: string): McpServer {
540
540
 
541
541
  server.tool(
542
542
  "tavus_pal_list",
543
- "List compact PAL summaries. Use tavus_pal_get for full settings.",
543
+ "List compact PAL summaries, oldest first by creation time. Set sort to \"desc\" for the newest PALs first. Use tavus_pal_get for full settings.",
544
544
  {
545
545
  limit: z.number().int().positive().max(100).default(25),
546
546
  page: z.number().int().nonnegative().default(0),
547
547
  pal_type: z.string().optional(),
548
+ sort: z.enum(["asc", "desc"]).optional(),
548
549
  },
549
550
  {
550
551
  title: "List pals",
@@ -553,9 +554,9 @@ export function createTavusMcpServer(env: Env, apiKey?: string): McpServer {
553
554
  idempotentHint: true,
554
555
  openWorldHint: false,
555
556
  },
556
- async ({ limit, page, pal_type }) =>
557
+ async ({ limit, page, pal_type, sort }) =>
557
558
  toolResult(
558
- compactPalList(await client.list("pals", clean({ limit, page, pal_type }))),
559
+ compactPalList(await client.list("pals", clean({ limit, page, pal_type, sort }))),
559
560
  ),
560
561
  );
561
562
 
@@ -0,0 +1 @@
1
+ export const VERSION = "0.6.0"; // x-release-please-version
@@ -276,6 +276,32 @@ describe("Cloudflare Tavus MCP helpers", () => {
276
276
  }
277
277
  });
278
278
 
279
+ it("forwards the PAL list sort order", async () => {
280
+ const fetchMock = vi.fn(
281
+ async (_input: string | URL | Request) =>
282
+ new Response(JSON.stringify({ data: [], total_count: 0 }), {
283
+ status: 200,
284
+ headers: { "Content-Type": "application/json" },
285
+ }),
286
+ );
287
+ vi.stubGlobal("fetch", fetchMock);
288
+ try {
289
+ const server = createTavusMcpServer({ TAVUS_API_KEY: "secret" });
290
+ await registeredTools(server).tavus_pal_list.handler({
291
+ limit: 5,
292
+ page: 0,
293
+ pal_type: undefined,
294
+ sort: "desc",
295
+ });
296
+
297
+ expect(new URL(String(fetchMock.mock.calls[0][0])).searchParams.get("sort")).toBe(
298
+ "desc",
299
+ );
300
+ } finally {
301
+ vi.unstubAllGlobals();
302
+ }
303
+ });
304
+
279
305
  it("uses PAL vocabulary in public errors", () => {
280
306
  expect(publicPalErrorBody({ message: "Invalid persona_id" })).toEqual({
281
307
  message: "Invalid pal_id",
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.5.0"
3
- }
@@ -1 +0,0 @@
1
- export const VERSION = "0.5.0"; // x-release-please-version
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes