# file_write

Store a file for an app (create or overwrite by path).

Agent View of the PolicyLayer registry record for `file_write`. HTML page: https://policylayer.com/tools/2nd1st-open-mcp-apps/file-write

## Facts

- Tool: `file_write`
- Server: Open Mcp Apps (`@2nd1st/open-mcp-apps`) — https://policylayer.com/tools/2nd1st-open-mcp-apps.md
- Install: `npx -y @2nd1st/open-mcp-apps`
- Homepage: https://github.com/2nd1st/open-mcp-apps
- 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": "file_write",
    "arguments": {}
  }
}
```

## Why file_write is rated Medium

The tool creates or overwrites files, which is a reversible write operation. While 'overwrite' could suggest destructive potential, the primary function is file storage/creation within an app context, making it Write rather than Destructive. However, severity is high because overwriting files can cause data loss if misused by an agent without proper validation of paths or file contents.

From the tool's own definition: "Tool name 'file_write' with description 'Store a file for an app (create or overwrite by path)' indicates file creation or modification operations."

## Use case

AI agents use file_write to create or update resources in Open Mcp Apps, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Open Mcp Apps environment.

## Recommended policy (PolicyLayer)

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

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

## Other tools on Open Mcp Apps (31)

- `data_delete_item` — Destructive — https://policylayer.com/tools/2nd1st-open-mcp-apps/data-delete-item.md
- `delete_app` — Destructive — https://policylayer.com/tools/2nd1st-open-mcp-apps/delete-app.md
- `file_delete` — Destructive — https://policylayer.com/tools/2nd1st-open-mcp-apps/file-delete.md
- `call_function` — Execute — https://policylayer.com/tools/2nd1st-open-mcp-apps/call-function.md
- `app_store_list` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/app-store-list.md
- `data_changes` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/data-changes.md
- `data_list` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/data-list.md
- `file_list` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/file-list.md
- `file_read` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/file-read.md
- `get_app` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/get-app.md
- `get_app_guide` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/get-app-guide.md
- `get_app_html` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/get-app-html.md
- `get_data_version` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/get-data-version.md
- `get_ui_preference_schema` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/get-ui-preference-schema.md
- `list_app_checkpoints` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/list-app-checkpoints.md
- `list_apps` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/list-apps.md
- `list_data_collections` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/list-data-collections.md
- `preview_app_store_entry` — Read — https://policylayer.com/tools/2nd1st-open-mcp-apps/preview-app-store-entry.md
- `apply_data_writes` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/apply-data-writes.md
- `data_add_item` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/data-add-item.md
- `data_move_item` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/data-move-item.md
- `data_update_item` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/data-update-item.md
- `edit_app` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/edit-app.md
- `file_write_begin` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/file-write-begin.md
- `file_write_chunk` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/file-write-chunk.md
- `file_write_commit` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/file-write-commit.md
- `install_from_app_store` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/install-from-app-store.md
- `promote_app` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/promote-app.md
- `restore_app` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/restore-app.md
- `save_app` — Write — https://policylayer.com/tools/2nd1st-open-mcp-apps/save-app.md
- …and 1 more: https://policylayer.com/tools/2nd1st-open-mcp-apps.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=2nd1st-open-mcp-apps · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/2nd1st-open-mcp-apps
