jabb-cli 0.2.0__tar.gz → 0.2.1__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.
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/PKG-INFO +1 -1
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli/mcp_server.py +6 -2
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli.egg-info/PKG-INFO +1 -1
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/pyproject.toml +1 -1
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/LICENSE +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/README.md +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli/__init__.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli/cli.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli/client.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli/output.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli.egg-info/SOURCES.txt +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli.egg-info/dependency_links.txt +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli.egg-info/entry_points.txt +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli.egg-info/requires.txt +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/jabb_cli.egg-info/top_level.txt +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/setup.cfg +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/tests/test_cli_errors.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/tests/test_cli_resources.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/tests/test_client.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/tests/test_mcp_entry.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/tests/test_mcp_tools.py +0 -0
- {jabb_cli-0.2.0 → jabb_cli-0.2.1}/tests/test_output.py +0 -0
|
@@ -8,13 +8,17 @@ from jabb_cli.client import ApiClient, ApiError, AuthError, RateLimitError
|
|
|
8
8
|
from jabb_cli.cli import RESOURCES
|
|
9
9
|
|
|
10
10
|
_MAX_RESPONSE_BYTES = 25_000 # ~25K tokens guard
|
|
11
|
+
_cached_client: Optional[ApiClient] = None # ponytail: single client instance per process
|
|
11
12
|
|
|
12
13
|
mcp = FastMCP("jabb")
|
|
13
14
|
|
|
14
15
|
|
|
15
16
|
def _client() -> ApiClient:
|
|
16
|
-
"""
|
|
17
|
-
|
|
17
|
+
"""Return cached ApiClient; raises AuthError on missing key (propagated as tool error)."""
|
|
18
|
+
global _cached_client
|
|
19
|
+
if _cached_client is None:
|
|
20
|
+
_cached_client = ApiClient()
|
|
21
|
+
return _cached_client
|
|
18
22
|
|
|
19
23
|
|
|
20
24
|
def _call(path: str, params: dict) -> dict:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|