# em_withdraw_earnings

A financial tool on the Execution Market MCP server.

Agent View of the PolicyLayer registry record for `em_withdraw_earnings`. HTML page: https://policylayer.com/tools/market-execution-execution-market/em-withdraw-earnings

## Facts

- Tool: `em_withdraw_earnings`
- Server: Execution Market (`https://mcp.execution.market/mcp/`) — https://policylayer.com/tools/market-execution-execution-market.md
- Homepage: https://github.com/UltravioletaDAO/execution-market
- Risk category: Financial (Critical risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Approval-gated

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

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

## Why em_withdraw_earnings is rated Critical

em_withdraw_earnings performs withdrawal of financial assets (USDC cryptocurrency) from an escrow or wallet. This is a Financial operation because it commits and moves money. The severity is high due to potential for large unauthorized transfers if an agent misuses this tool without proper constraints.

From the tool's own definition: "Tool name 'em_withdraw_earnings' combined with server description stating 'Gasless USDC payments' indicates money movement."

## Use case

AI agents use em_withdraw_earnings to commit financial operations through Execution Market, usually the final step of a payment, billing, or trading workflow. A call moves real money.

## Recommended policy (PolicyLayer)

Verdict: **Approval-gated**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Execution Market:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "em_withdraw_earnings": {
      "deny_if": [
        {
          "conditions": [],
          "on_deny": "Requires human approval."
        }
      ]
    }
  }
}
```

## Other tools on Execution Market (80)

- `em_cancel_task` — Destructive — https://policylayer.com/tools/market-execution-execution-market/em-cancel-task.md
- `k1_emergency_stop` — Execute — https://policylayer.com/tools/market-execution-execution-market/k1-emergency-stop.md
- `k1_grip` — Execute — https://policylayer.com/tools/market-execution-execution-market/k1-grip.md
- `k1_pick` — Execute — https://policylayer.com/tools/market-execution-execution-market/k1-pick.md
- `k1_place` — Execute — https://policylayer.com/tools/market-execution-execution-market/k1-place.md
- `k1_sit` — Execute — https://policylayer.com/tools/market-execution-execution-market/k1-sit.md
- `k1_stand` — Execute — https://policylayer.com/tools/market-execution-execution-market/k1-stand.md
- `k1_walk_to` — Execute — https://policylayer.com/tools/market-execution-execution-market/k1-walk-to.md
- `ows_sign_eip191` — Execute — https://policylayer.com/tools/market-execution-execution-market/ows-sign-eip191.md
- `ows_sign_erc8128_request` — Execute — https://policylayer.com/tools/market-execution-execution-market/ows-sign-erc8128-request.md
- `ows_sign_message` — Execute — https://policylayer.com/tools/market-execution-execution-market/ows-sign-message.md
- `em_accept_agent_task` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-accept-agent-task.md
- `em_approve_submission` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-approve-submission.md
- `em_assign_task` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-assign-task.md
- `em_claim_task` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-claim-task.md
- `em_create_task` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-create-task.md
- `em_escrow_authorize` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-escrow-authorize.md
- `em_escrow_charge` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-escrow-charge.md
- `em_escrow_dispute` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-escrow-dispute.md
- `em_escrow_partial_release` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-escrow-partial-release.md
- `em_escrow_refund` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-escrow-refund.md
- `em_escrow_release` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-escrow-release.md
- `em_get_payment_info` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-get-payment-info.md
- `em_publish_task` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-publish-task.md
- `em_resolve_dispute` — Financial — https://policylayer.com/tools/market-execution-execution-market/em-resolve-dispute.md
- `moonpay_sign_onramp_url` — Financial — https://policylayer.com/tools/market-execution-execution-market/moonpay-sign-onramp-url.md
- `ows_sign_eip3009` — Financial — https://policylayer.com/tools/market-execution-execution-market/ows-sign-eip3009.md
- `robot_close_payshell_session` — Financial — https://policylayer.com/tools/market-execution-execution-market/robot-close-payshell-session.md
- `robot_open_payshell_session` — Financial — https://policylayer.com/tools/market-execution-execution-market/robot-open-payshell-session.md
- `robot_sign_voucher_tick` — Financial — https://policylayer.com/tools/market-execution-execution-market/robot-sign-voucher-tick.md
- …and 50 more: https://policylayer.com/tools/market-execution-execution-market.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=market-execution-execution-market · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/market-execution-execution-market
