# pine_upload_attachment

Upload a file (bill, screenshot, document) for a Pine AI session.

Agent View of the PolicyLayer registry record for `pine_upload_attachment`. HTML page: https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-upload-attachment

## Facts

- Tool: `pine_upload_attachment`
- Server: Pine Assistant MCP Server (`19pine-ai/pine-mcp-server`) — https://policylayer.com/tools/19pine-ai-pine-mcp-server.md
- Homepage: https://github.com/19PINE-AI/pine-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": "pine_upload_attachment",
    "arguments": {}
  }
}
```

## Why pine_upload_attachment is rated Medium

The tool uploads files to a Pine AI session, which creates new data in the system. This is a Write action because it modifies the session state by adding attachments. Severity is medium because uploaded files could contain sensitive information (bills, screenshots, documents) and an AI agent could potentially upload malicious or incorrect files, but the action is reversible (deletion is available via…

From the tool's own definition: "Tool description states 'Upload a file (bill, screenshot, document) for a Pine AI session.' This creates or adds data to the system reversibly."

## Use case

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

## Recommended policy (PolicyLayer)

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

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

## Other tools on Pine Assistant MCP Server (18)

- `pine_delete_attachment` — Destructive — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-delete-attachment.md
- `pine_session_delete` — Destructive — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-session-delete.md
- `pine_send_auth_confirmation` — Execute — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-send-auth-confirmation.md
- `pine_send_form_response` — Execute — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-send-form-response.md
- `pine_send_message` — Execute — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-send-message.md
- `pine_session_create` — Execute — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-session-create.md
- `pine_task_stop` — Execute — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-task-stop.md
- `pine_task_start` — Financial — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-task-start.md
- `pine_get_history` — Read — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-get-history.md
- `pine_session_get` — Read — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-session-get.md
- `pine_session_list` — Read — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-session-list.md
- `pine_session_url` — Read — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-session-url.md
- `pine_auth_request_code` — Write — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-auth-request-code.md
- `pine_auth_verify_code` — Write — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-auth-verify-code.md
- `pine_send_location_response` — Write — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-send-location-response.md
- `pine_send_location_selection` — Write — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-send-location-selection.md
- `pine_social_share` — Write — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-social-share.md
- `pine_update_call_reminder` — Write — https://policylayer.com/tools/19pine-ai-pine-mcp-server/pine-update-call-reminder.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=19pine-ai-pine-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/19pine-ai-pine-mcp-server
