Skip to content

Commit b56341b

Browse files
committed
chore: prevent logging to stdout, reserved for MCP JSON-RPC protocol
1 parent 6a999aa commit b56341b

File tree

3 files changed

+19
-8
lines changed
  • packages

3 files changed

+19
-8
lines changed

packages/developer_mcp_server/src/developer_mcp_server/server.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,19 @@
22

33
import logging
44

5+
from gg_api_core import configure_mcp_logging
56
from gg_api_core.mcp_server import get_mcp_server
67
from gg_api_core.scopes import set_developer_scopes
78

89
from developer_mcp_server.add_health_check import add_health_check
910
from developer_mcp_server.register_tools import DEVELOPER_INSTRUCTIONS, register_developer_tools
1011

11-
# Configure more detailed logging
12-
logging.basicConfig(level=logging.DEBUG, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s")
13-
12+
configure_mcp_logging()
1413
logger = logging.getLogger(__name__)
1514

1615
# Use our custom GitGuardianFastMCP from the core package
1716
mcp = get_mcp_server(
1817
"GitGuardian Developer",
19-
log_level="DEBUG",
2018
instructions=DEVELOPER_INSTRUCTIONS,
2119
)
2220

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
11
"""Core functionality for GitGuardian MCP servers."""
22

3+
import logging
4+
import sys
5+
36
__version__ = "0.1.0"
7+
8+
9+
def configure_mcp_logging(level: int = logging.INFO) -> None:
10+
"""Configure logging to use stderr (stdout is reserved for MCP JSON-RPC protocol)."""
11+
logging.basicConfig(
12+
level=level,
13+
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
14+
stream=sys.stderr,
15+
force=True,
16+
)
17+
# Reduce noise from library loggers
18+
for name in ("mcp", "fastmcp", "rich"):
19+
logging.getLogger(name).setLevel(logging.WARNING)

packages/secops_mcp_server/src/secops_mcp_server/server.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@
1717
from gg_api_core.tools.write_custom_tags import update_or_create_incident_custom_tags, write_custom_tags
1818
from pydantic import BaseModel, Field
1919

20-
# Configure more detailed logging
21-
logging.basicConfig(level=logging.DEBUG, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s")
22-
20+
configure_mcp_logging()
2321
logger = logging.getLogger(__name__)
2422

2523

@@ -113,7 +111,6 @@ class ListHoneytokensParams(BaseModel):
113111
# Use our custom GitGuardianFastMCP from the core package
114112
mcp = get_mcp_server(
115113
"GitGuardian SecOps",
116-
log_level="DEBUG",
117114
instructions=SECOPS_INSTRUCTIONS,
118115
)
119116

0 commit comments

Comments
 (0)