Skip to content

Commit ec7397e

Browse files
Kigstndaniel.jaekel
andauthored
feat: when verbose logging, also log outputs of deno to console (#23)
Co-authored-by: daniel.jaekel <daniel.jaekel@vodafone.com>
1 parent 48805ec commit ec7397e

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

mcp_run_python/_cli.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ def cli_logic(args_list: Sequence[str] | None = None) -> int:
5353
http_port=args.port,
5454
dependencies=deps,
5555
deps_log_handler=deps_log_handler,
56+
verbose=bool(args.verbose),
5657
)
5758
return return_code
5859
else:

mcp_run_python/main.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import logging
33
import shutil
44
import subprocess
5+
import sys
56
import tempfile
67
from collections.abc import AsyncIterator, Callable, Iterator
78
from contextlib import asynccontextmanager, contextmanager
@@ -26,6 +27,7 @@ def run_mcp_server(
2627
return_mode: Literal['json', 'xml'] = 'xml',
2728
deps_log_handler: LogHandler | None = None,
2829
allow_networking: bool = True,
30+
verbose: bool = False,
2931
) -> int:
3032
"""Install dependencies then run the mcp-run-python server.
3133
@@ -36,7 +38,13 @@ def run_mcp_server(
3638
return_mode: The mode to return tool results in.
3739
deps_log_handler: Optional function to receive logs emitted while installing dependencies.
3840
allow_networking: Whether to allow networking when running provided python code.
41+
verbose: Log deno outputs to CLI
3942
"""
43+
44+
stdout, stderr = None, None
45+
if verbose:
46+
stdout, stderr = sys.stdout, sys.stderr
47+
4048
with prepare_deno_env(
4149
mode,
4250
dependencies=dependencies,
@@ -51,7 +59,7 @@ def run_mcp_server(
5159
logger.info('Running mcp-run-python via %s...', mode)
5260

5361
try:
54-
p = subprocess.run(('deno', *env.args), cwd=env.cwd)
62+
p = subprocess.run(('deno', *env.args), cwd=env.cwd, stdout=stdout, stderr=stderr)
5563
except KeyboardInterrupt: # pragma: no cover
5664
logger.warning('Server stopped.')
5765
return 0

0 commit comments

Comments
 (0)