Skip to main content

MCP error: add_document_source fails with GCS credential error

Date: 2026-03-22 MCP Server: Chipp (build.chipp.ai/mcp, streamable-http transport) MCP Client: Claude Code (Anthropic CLI, macOS)

Steps to reproduce

Call MCP add_document_source tool with any file.

Minimal example:

{ "appId": 10041051, "files": [ { "fileName": "test-topic.md", "content": "IyBUZXN0IFRvcGljCgpUaGlzIGlzIGEgdGVzdCBkb2N1bWVudCBmb3Ig dGhlIGtub3dsZWRnZSBiYXNlLg==" } ] }

The base64 content decodes to:

Test Topic

This is a test document for the knowledge base.

Result

{ "error": { "code": "INTERNAL_ERROR", "message": "The incoming JSON object does not contain a client_email field" } }

Expected

File uploads and begins processing (PENDING → PROCESSING → COMPLETED).

Root cause evidence

The error message "The incoming JSON object does not contain a client_email field" is produced by the Google Cloud Node.js client library (google-auth-library) when parsing a service account key file. It is thrown when the GoogleAuth constructor receives a credentials object missing the required client_email property.

This suggests the add_document_source code path initializes a Google Cloud Storage (GCS) client to upload the decoded file, but the service account JSON key is either missing, malformed, or not configured in the MCP server's runtime environment.

Evidence that other knowledge source tools work (same app, same session)

The failure is isolated to the file upload code path. All other MCP tools — including other knowledge source tools (add_url_source, list_knowledge_sources, get_knowledge_source, delete_knowledge_source, refresh_knowledge_source) — work correctly for the same app and workspace.

Environment

  • MCP Server: Chipp (build.chipp.ai/mcp, streamable-http, OAuth 2.0 + PKCE)

  • MCP Client: Claude Code (Anthropic CLI, macOS darwin)

Log in to comment and vote

No comments yet

Be the first to share your thoughts.