Update a Notion data source's properties, name, or other attributes. Returns Markdown showing updated structure and schema. Accepts a data source ID (collection ID from fetch response's <data-source> tag) or a single-source database ID. Multi-source databases require the specific data source ID. ...
Single-target operation
Part of the Notion MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.
AI agents use notion-update-data-source to create or modify resources in Notion. Write operations carry medium risk because an autonomous agent could trigger bulk unintended modifications. Rate limits prevent a single agent session from making hundreds of changes in rapid succession. Argument validation ensures the agent passes expected values.
Without a policy, an AI agent could call notion-update-data-source repeatedly, creating or modifying resources faster than any human could review. Intercept's rate limiting ensures write operations happen at a controlled pace, and argument validation catches malformed or unexpected inputs before they reach Notion.
Write tools can modify data. A rate limit prevents runaway bulk operations from AI agents.
tools:
notion-update-data-source:
rules:
- action: allow
rate_limit:
max: 30
window: 60 See the full Notion policy for all 24 tools.
Agents calling write-class tools like notion-update-data-source have been implicated in these attack patterns. Read the full case and prevention policy for each:
Other tools in the Write risk category across the catalogue. The same policy patterns (rate-limit, validate) apply to each.
Update a Notion data source's properties, name, or other attributes. Returns Markdown showing updated structure and schema. Accepts a data source ID (collection ID from fetch response's <data-source> tag) or a single-source database ID. Multi-source databases require the specific data source ID. Property types: title (required), rich_text, number, select, multi_select, date, people, checkbox, url, email, phone_number, formula, relation, rollup, unique_id. Examples: (1) Update data source title: { "data_source_id": "f336d0bc-b841-465b-8045-024475c079dd", "title": [{"type": "text", "text": {"content": "Project Tracker 2024"}}] } (2) Add new properties: { "data_source_id": "f336d0bc-b841-465b-8045-024475c079dd", "properties": { "Priority": { "select": { "options": [ {"name": "High", "color": "red"}, {"name": "Medium", "color": "yellow"}, {"name": "Low", "color": "green"} ] } }, "Due Date": {"date": {}}, "Assigned To": {"people": {}} } } (3) Rename property (use property ID or current name): { "data_source_id": "f336d0bc-b841-465b-8045-024475c079dd", "properties": {"Status": {"name": "Project Status"}} } (4) Remove property (set to null): { "data_source_id": "f336d0bc-b841-465b-8045-024475c079dd", "properties": {"Old Property": null} } (5) Trash data source (confirm with user, requires Notion UI to undo): {"data_source_id": "f336d0bc-b841-465b-8045-024475c079dd", "in_trash": true} Notes: Cannot delete/create title properties. Max one unique_id property. Cannot update synced databases. Use "fetch" first to see current schema and get the data source ID from <data-source url="collection://..."> tags.. It is categorised as a Write tool in the Notion MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
Add a rule in your Intercept YAML policy under the tools section for notion-update-data-source. You can allow, deny, rate-limit, or validate arguments. Then run Intercept as a proxy in front of the Notion MCP server.
notion-update-data-source is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the notion-update-data-source rule in your Intercept policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the Intercept policy for notion-update-data-source. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
notion-update-data-source is provided by the Notion MCP server (@notion-mcp-server). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Open source. One binary. Zero dependencies.
npx -y @policylayer/intercept