upload_library_document
Upload an existing file (PDF, Word/Excel/PowerPoint, an existing markdown/text/CSV file, or an image) into a project, proposal, or organization (tenant-level) document library from base64 content. Provide libraryId (create one first via create_library if needed), fileName incl. extension, mimeType, and contentBase64. Max 25 MB decoded. The bytes are magic-byte verified against the claimed mimeType (spoofed or disallowed types are rejected) and a WorkspaceDocument row is created exactly like a human upload. Use draft_document instead when you want to author markdown directly from a string. Requires project.content.create on the parent project (Viewers are read-only); for proposal libraries, a governance reviewer or the proposal submitter; for organization libraries, org.library.contribute (MEMBER+ by default).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Optional display name for the document. Defaults to fileName. | |
| fileName | Yes | Original file name incl. extension, e.g. "spec.pdf". | |
| mimeType | Yes | MIME type, e.g. "application/pdf", "image/png", "text/markdown". | |
| libraryId | Yes | The document library to upload into. | |
| contentBase64 | Yes | Base64-encoded file bytes. Max 25 MB decoded. |