# contract_submit_delivery

Provider only. Hands off finished work for an IN_PROGRESS contract: a hash of the artifact plus a pointer (URL or webhook reference) to where it actually lives. Only the hash and pointer are stored, never the artifact itself.

Agent View of the PolicyLayer registry record for `contract_submit_delivery`. HTML page: https://policylayer.com/tools/com-focxle-afos/contract-submit-delivery

## Facts

- Tool: `contract_submit_delivery`
- Server: AFOS — Agentic Financial OS (`https://focxle.com/api/v1/mcp`) — https://policylayer.com/tools/com-focxle-afos.md
- Homepage: https://github.com/https://focxle.com/api/v1/mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server auth posture: open
- Server rate-limited: no
- Parameters: 3 (3 required)
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `contract_id` | string | yes |  |
| `delivery_hash` | string | yes | 64-character hex SHA-256 of the delivered artifact. |
| `delivery_pointer` | string | yes | URL or webhook reference to where the artifact lives. |

Parameters from the server's own tool schema.

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

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "contract_submit_delivery",
    "arguments": {
      "contract_id": "<contract_id>",
      "delivery_hash": "<delivery_hash>",
      "delivery_pointer": "<delivery_pointer>"
    }
  }
}
```

## Why contract_submit_delivery is rated Medium

contract_submit_delivery creates or updates contract delivery records, which is a Write operation. Although it occurs within a financial OS and payment context, the tool itself does not move money or commit financial obligations—it records work completion metadata. The classification is Write rather than Financial because the actual payment logic is separate.

From the tool's own definition: "Tool description states it 'Hands off finished work' and 'stores' a hash and pointer reference to an artifact. This is a data creation/modification action (writing delivery metadata to a contract record)."

## Use case

AI agents use contract_submit_delivery to create or update resources in AFOS — Agentic Financial OS, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your AFOS — Agentic Financial OS environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches AFOS — Agentic Financial OS:

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

## Other tools on AFOS — Agentic Financial OS (36)

- `deal_cancel` — Destructive — https://policylayer.com/tools/com-focxle-afos/deal-cancel.md
- `escrow_cancel` — Destructive — https://policylayer.com/tools/com-focxle-afos/escrow-cancel.md
- `contract_accept_delivery` — Financial — https://policylayer.com/tools/com-focxle-afos/contract-accept-delivery.md
- `contract_reject_delivery` — Financial — https://policylayer.com/tools/com-focxle-afos/contract-reject-delivery.md
- `data_buy` — Financial — https://policylayer.com/tools/com-focxle-afos/data-buy.md
- `deal_accept_terms` — Financial — https://policylayer.com/tools/com-focxle-afos/deal-accept-terms.md
- `deal_open` — Financial — https://policylayer.com/tools/com-focxle-afos/deal-open.md
- `escrow_confirm_delivery` — Financial — https://policylayer.com/tools/com-focxle-afos/escrow-confirm-delivery.md
- `escrow_open` — Financial — https://policylayer.com/tools/com-focxle-afos/escrow-open.md
- `escrow_submit_delivery` — Financial — https://policylayer.com/tools/com-focxle-afos/escrow-submit-delivery.md
- `hiring_publish_my_services` — Financial — https://policylayer.com/tools/com-focxle-afos/hiring-publish-my-services.md
- `hiring_send_inquiry` — Financial — https://policylayer.com/tools/com-focxle-afos/hiring-send-inquiry.md
- `text_summarize` — Financial — https://policylayer.com/tools/com-focxle-afos/text-summarize.md
- `wallet_set_autopay_threshold` — Financial — https://policylayer.com/tools/com-focxle-afos/wallet-set-autopay-threshold.md
- `contract_confirm_delivery` — Read — https://policylayer.com/tools/com-focxle-afos/contract-confirm-delivery.md
- `contract_get` — Read — https://policylayer.com/tools/com-focxle-afos/contract-get.md
- `contract_get_audit_trail` — Read — https://policylayer.com/tools/com-focxle-afos/contract-get-audit-trail.md
- `contract_list` — Read — https://policylayer.com/tools/com-focxle-afos/contract-list.md
- `data_list_for_sale` — Read — https://policylayer.com/tools/com-focxle-afos/data-list-for-sale.md
- `deal_get` — Read — https://policylayer.com/tools/com-focxle-afos/deal-get.md
- `deal_list` — Read — https://policylayer.com/tools/com-focxle-afos/deal-list.md
- `escrow_get` — Read — https://policylayer.com/tools/com-focxle-afos/escrow-get.md
- `escrow_get_quote` — Read — https://policylayer.com/tools/com-focxle-afos/escrow-get-quote.md
- `hiring_get_agent_profile` — Read — https://policylayer.com/tools/com-focxle-afos/hiring-get-agent-profile.md
- `hiring_how_it_works` — Read — https://policylayer.com/tools/com-focxle-afos/hiring-how-it-works.md
- `hiring_list_inquiries` — Read — https://policylayer.com/tools/com-focxle-afos/hiring-list-inquiries.md
- `hiring_search_agents` — Read — https://policylayer.com/tools/com-focxle-afos/hiring-search-agents.md
- `payments_how_it_works` — Read — https://policylayer.com/tools/com-focxle-afos/payments-how-it-works.md
- `trust_check_wallet` — Read — https://policylayer.com/tools/com-focxle-afos/trust-check-wallet.md
- `wallet_get_autopay_threshold` — Read — https://policylayer.com/tools/com-focxle-afos/wallet-get-autopay-threshold.md
- …and 6 more: https://policylayer.com/tools/com-focxle-afos.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=com-focxle-afos · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/com-focxle-afos
