workspace-mcp 1.0.4__py3-none-any.whl → 1.0.5__py3-none-any.whl
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.
- main.py +11 -11
- {workspace_mcp-1.0.4.dist-info → workspace_mcp-1.0.5.dist-info}/METADATA +1 -1
- {workspace_mcp-1.0.4.dist-info → workspace_mcp-1.0.5.dist-info}/RECORD +7 -7
- {workspace_mcp-1.0.4.dist-info → workspace_mcp-1.0.5.dist-info}/WHEEL +0 -0
- {workspace_mcp-1.0.4.dist-info → workspace_mcp-1.0.5.dist-info}/entry_points.txt +0 -0
- {workspace_mcp-1.0.4.dist-info → workspace_mcp-1.0.5.dist-info}/licenses/LICENSE +0 -0
- {workspace_mcp-1.0.4.dist-info → workspace_mcp-1.0.5.dist-info}/top_level.txt +0 -0
main.py
CHANGED
@@ -35,9 +35,9 @@ except Exception as e:
|
|
35
35
|
|
36
36
|
def safe_print(text):
|
37
37
|
try:
|
38
|
-
print(text)
|
38
|
+
print(text, file=sys.stderr)
|
39
39
|
except UnicodeEncodeError:
|
40
|
-
print(text.encode('ascii', errors='replace').decode())
|
40
|
+
print(text.encode('ascii', errors='replace').decode(), file=sys.stderr)
|
41
41
|
|
42
42
|
def main():
|
43
43
|
"""
|
@@ -73,7 +73,7 @@ def main():
|
|
73
73
|
safe_print(f" 🔐 OAuth Callback: {base_uri}:{port}/oauth2callback")
|
74
74
|
safe_print(f" 👤 Mode: {'Single-user' if args.single_user else 'Multi-user'}")
|
75
75
|
safe_print(f" 🐍 Python: {sys.version.split()[0]}")
|
76
|
-
print()
|
76
|
+
print(file=sys.stderr)
|
77
77
|
|
78
78
|
# Import tool modules to register them with the MCP server via decorators
|
79
79
|
tool_imports = {
|
@@ -104,29 +104,29 @@ def main():
|
|
104
104
|
for tool in tools_to_import:
|
105
105
|
tool_imports[tool]()
|
106
106
|
safe_print(f" {tool_icons[tool]} {tool.title()} - Google {tool.title()} API integration")
|
107
|
-
print()
|
107
|
+
print(file=sys.stderr)
|
108
108
|
|
109
109
|
safe_print(f"📊 Configuration Summary:")
|
110
110
|
safe_print(f" 🔧 Tools Enabled: {len(tools_to_import)}/{len(tool_imports)}")
|
111
111
|
safe_print(f" 🔑 Auth Method: OAuth 2.0 with PKCE")
|
112
112
|
safe_print(f" 📝 Log Level: {logging.getLogger().getEffectiveLevel()}")
|
113
|
-
print()
|
113
|
+
print(file=sys.stderr)
|
114
114
|
|
115
115
|
# Set global single-user mode flag
|
116
116
|
if args.single_user:
|
117
117
|
os.environ['MCP_SINGLE_USER_MODE'] = '1'
|
118
118
|
safe_print("🔐 Single-user mode enabled")
|
119
|
-
print()
|
119
|
+
print(file=sys.stderr)
|
120
120
|
|
121
121
|
# Check credentials directory permissions before starting
|
122
122
|
try:
|
123
123
|
safe_print("🔍 Checking credentials directory permissions...")
|
124
124
|
check_credentials_directory_permissions()
|
125
125
|
safe_print("✅ Credentials directory permissions verified")
|
126
|
-
print()
|
126
|
+
print(file=sys.stderr)
|
127
127
|
except (PermissionError, OSError) as e:
|
128
128
|
safe_print(f"❌ Credentials directory permission check failed: {e}")
|
129
|
-
print(" Please ensure the service has write permissions to create/access the .credentials directory")
|
129
|
+
print(" Please ensure the service has write permissions to create/access the .credentials directory", file=sys.stderr)
|
130
130
|
logger.error(f"Failed credentials directory permission check: {e}")
|
131
131
|
sys.exit(1)
|
132
132
|
|
@@ -141,12 +141,12 @@ def main():
|
|
141
141
|
# Start minimal OAuth callback server for stdio mode
|
142
142
|
from auth.oauth_callback_server import ensure_oauth_callback_available
|
143
143
|
if ensure_oauth_callback_available('stdio', port, base_uri):
|
144
|
-
print(f" OAuth callback server started on {base_uri}:{port}/oauth2callback")
|
144
|
+
print(f" OAuth callback server started on {base_uri}:{port}/oauth2callback", file=sys.stderr)
|
145
145
|
else:
|
146
146
|
safe_print(" ⚠️ Warning: Failed to start OAuth callback server")
|
147
147
|
|
148
|
-
print(" Ready for MCP connections!")
|
149
|
-
print()
|
148
|
+
print(" Ready for MCP connections!", file=sys.stderr)
|
149
|
+
print(file=sys.stderr)
|
150
150
|
|
151
151
|
if args.transport == 'streamable-http':
|
152
152
|
# The server is already configured with port and server_url in core/server.py
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: workspace-mcp
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.5
|
4
4
|
Summary: Comprehensive, highly performant Google Workspace Streamable HTTP & SSE MCP Server for Calendar, Gmail, Docs, Sheets, Slides & Drive
|
5
5
|
Author-email: Taylor Wilsdon <taylor@taylorwilsdon.com>
|
6
6
|
License: MIT
|
@@ -1,4 +1,4 @@
|
|
1
|
-
main.py,sha256=
|
1
|
+
main.py,sha256=u2V2l4wlYxP0MwSITukYxtha3HSdmNGHSllIv5z-WxA,7253
|
2
2
|
auth/__init__.py,sha256=gPCU3GE-SLy91S3D3CbX-XfKBm6hteK_VSPKx7yjT5s,42
|
3
3
|
auth/google_auth.py,sha256=2UBbQgGcUPdUFWDbzdFy60NJLQ3SI45GIASzuzO1Tew,30717
|
4
4
|
auth/oauth_callback_server.py,sha256=igrur3fkZSY0bawufrH4AN9fMNpobUdAUp1BG7AQC6w,9341
|
@@ -26,9 +26,9 @@ gsheets/__init__.py,sha256=jFfhD52w_EOVw6N5guf_dIc9eP2khW_eS9UAPJg_K3k,446
|
|
26
26
|
gsheets/sheets_tools.py,sha256=TVlJ-jcIvJ_sJt8xO4-sBWIshb8rabJhjTmZfzHIJsU,11898
|
27
27
|
gslides/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
28
28
|
gslides/slides_tools.py,sha256=wil3XRyUMzUbpBUMqis0CW5eRuwOrP0Lp7-6WbF4QVU,10117
|
29
|
-
workspace_mcp-1.0.
|
30
|
-
workspace_mcp-1.0.
|
31
|
-
workspace_mcp-1.0.
|
32
|
-
workspace_mcp-1.0.
|
33
|
-
workspace_mcp-1.0.
|
34
|
-
workspace_mcp-1.0.
|
29
|
+
workspace_mcp-1.0.5.dist-info/licenses/LICENSE,sha256=bB8L7rIyRy5o-WHxGgvRuY8hUTzNu4h3DTkvyV8XFJo,1070
|
30
|
+
workspace_mcp-1.0.5.dist-info/METADATA,sha256=I81V5KDQkJCvFm2zuAnZFqPgXAfvRWJKlFR56fYH4ek,19406
|
31
|
+
workspace_mcp-1.0.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
32
|
+
workspace_mcp-1.0.5.dist-info/entry_points.txt,sha256=kPiEfOTuf-ptDM0Rf2OlyrFudGW7hCZGg4MCn2Foxs4,44
|
33
|
+
workspace_mcp-1.0.5.dist-info/top_level.txt,sha256=Y8mAkTitLNE2zZEJ-DbqR9R7Cs1V1MMf-UploVdOvlw,73
|
34
|
+
workspace_mcp-1.0.5.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|