# upload_document_from_url

Download a document from a URL and add it to your knowledge base. Supports PDF, DOCX, TXT, Markdown, CSV, and JSON files (max 50MB). Can upload to personal or team knowledge base.

Agent View of the PolicyLayer registry record for `upload_document_from_url`. HTML page: https://policylayer.com/tools/flowdot-llc-mcp-server/upload-document-from-url

## Facts

- Tool: `upload_document_from_url`
- Server: FlowDot MCP Server (`flowdot-llc/mcp-server`) — https://policylayer.com/tools/flowdot-llc-mcp-server.md
- Homepage: https://github.com/flowdot-llc/mcp-server
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "upload_document_from_url",
    "arguments": {}
  }
}
```

## Why upload_document_from_url is rated Medium

This tool creates new data (documents) in the knowledge base, which is a Write operation. It is reversible (documents can typically be deleted from a knowledge base). Severity is medium because an AI agent could be tricked into uploading malicious, sensitive, or inappropriate documents to a shared knowledge base (particularly a team one), causing reputational or operational harm, though no financial or destructive…

From the tool's own definition: "Tool description explicitly states 'Download a document from a URL and add it to your knowledge base' — the 'add' operation modifies the knowledge base by creating new entries."

## Use case

AI agents use upload_document_from_url to create or update resources in FlowDot MCP Server, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your FlowDot MCP Server environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches FlowDot MCP Server:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "upload_document_from_url": {
      "limits": [
        {
          "counter": "upload_document_from_url_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on FlowDot MCP Server (206)

- `browser_act` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/browser-act.md
- `cancel_execution` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/cancel-execution.md
- `delete_agent_character` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-agent-character.md
- `delete_app` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-app.md
- `delete_app_file` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-app-file.md
- `delete_connection` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-connection.md
- `delete_custom_node` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-custom-node.md
- `delete_goal` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-goal.md
- `delete_goal_milestone` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-goal-milestone.md
- `delete_goal_task` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-goal-task.md
- `delete_image` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-image.md
- `delete_input_preset` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-input-preset.md
- `delete_knowledge_category` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-knowledge-category.md
- `delete_knowledge_document` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-knowledge-document.md
- `delete_node` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-node.md
- `delete_recipe` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-recipe.md
- `delete_recipe_step` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-recipe-step.md
- `delete_recipe_store` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-recipe-store.md
- `delete_workflow` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/delete-workflow.md
- `email_delete` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/email-delete.md
- `mcp__flowdot__delete_agent_toolkit` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/mcp--flowdot--delete-agent-toolkit.md
- `mcp__flowdot__delete_toolkit_tool` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/mcp--flowdot--delete-toolkit-tool.md
- `mcp__flowdot__uninstall_toolkit` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/mcp--flowdot--uninstall-toolkit.md
- `panic_clear` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/panic-clear.md
- `revoke_kb_access` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/revoke-kb-access.md
- `unlink_property_kb_source` — Destructive — https://policylayer.com/tools/flowdot-llc-mcp-server/unlink-property-kb-source.md
- `browser_launch` — Execute — https://policylayer.com/tools/flowdot-llc-mcp-server/browser-launch.md
- `browser_navigate` — Execute — https://policylayer.com/tools/flowdot-llc-mcp-server/browser-navigate.md
- `browser_sequence` — Execute — https://policylayer.com/tools/flowdot-llc-mcp-server/browser-sequence.md
- `browser_wait_for` — Execute — https://policylayer.com/tools/flowdot-llc-mcp-server/browser-wait-for.md
- …and 176 more: https://policylayer.com/tools/flowdot-llc-mcp-server.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=flowdot-llc-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/flowdot-llc-mcp-server
