notion_add_file_to_row
Upload and attach a file to an existing Notion database row's files & media column. Specify the row ID, source, and column; choose append or replace mode.
Instructions
Upload a file and attach it to an EXISTING database row's files & media column.
page_id: the row (page) ID — paste from the row's "Copy link"
or obtain via notion_search_pages.
source: same schemes as notion_upload_file: local:<path>,
shared:<filename>, drive:<name-or-id>, or
base64:<bytes>.
files_property: exact name of the files & media column.
mode: append (default) keeps existing files and adds the
new one. replace overwrites the column with just the
new file.
filename: override the source filename.
Cross-MCP file transfer
To attach a Gmail attachment to an existing Notion row:
google-accounts-mcp download_attachment(msg_id, name, destination='shared')
notion_add_file_to_row(page_id, source='shared:', files_property='')
Files never traverse MCP parameters — no size limits. Alternative via Drive: download_attachment → drive_upload(local_filename=...) → notion_add_file_to_row(source='drive:', ...).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | append | |
| source | Yes | ||
| page_id | Yes | ||
| filename | No | ||
| files_property | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |