# set_trading_stop

Set take profit and stop loss orders for an existing position. These orders automatically close your position at specified profit or loss levels to manage risk.

Agent View of the PolicyLayer registry record for `set_trading_stop`. HTML page: https://policylayer.com/tools/bcusack-bybit-py-mcp/set-trading-stop

## Facts

- Tool: `set_trading_stop`
- Server: Bybit MCP Server (`bcusack/bybit-py-mcp`) — https://policylayer.com/tools/bcusack-bybit-py-mcp.md
- Homepage: https://github.com/BCusack/bybit-py-mcp
- 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": "set_trading_stop",
    "arguments": {}
  }
}
```

## Why set_trading_stop is rated Critical

This tool modifies financial trading positions by setting automated order triggers (take profit/stop loss) that will execute trades when price levels are hit. It directly affects financial outcomes by controlling when positions are closed, constituting a financial commitment.

From the tool's own definition: "Set take profit and stop loss orders for an existing position. These orders automatically close your position at specified profit or loss levels"

## Use case

AI agents use set_trading_stop to commit financial operations through Bybit MCP Server, 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 Bybit MCP Server:

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

## Other tools on Bybit MCP Server (35)

- `batch_cancel_order` — Destructive — https://policylayer.com/tools/bcusack-bybit-py-mcp/batch-cancel-order.md
- `cancel_all_orders` — Destructive — https://policylayer.com/tools/bcusack-bybit-py-mcp/cancel-all-orders.md
- `cancel_order` — Destructive — https://policylayer.com/tools/bcusack-bybit-py-mcp/cancel-order.md
- `set_leverage` — Execute — https://policylayer.com/tools/bcusack-bybit-py-mcp/set-leverage.md
- `switch_cross_isolated_margin` — Execute — https://policylayer.com/tools/bcusack-bybit-py-mcp/switch-cross-isolated-margin.md
- `batch_amend_order` — Financial — https://policylayer.com/tools/bcusack-bybit-py-mcp/batch-amend-order.md
- `batch_place_order` — Financial — https://policylayer.com/tools/bcusack-bybit-py-mcp/batch-place-order.md
- `place_order` — Financial — https://policylayer.com/tools/bcusack-bybit-py-mcp/place-order.md
- `place_trigger_order` — Financial — https://policylayer.com/tools/bcusack-bybit-py-mcp/place-trigger-order.md
- `get_account_info` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-account-info.md
- `get_closed_pnl` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-closed-pnl.md
- `get_funding_rate_history` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-funding-rate-history.md
- `get_index_price_kline` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-index-price-kline.md
- `get_instruments_info` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-instruments-info.md
- `get_insurance` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-insurance.md
- `get_kline` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-kline.md
- `get_long_short_ratio` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-long-short-ratio.md
- `get_mark_price_kline` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-mark-price-kline.md
- `get_open_closed_orders` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-open-closed-orders.md
- `get_open_interest` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-open-interest.md
- `get_order_book` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-order-book.md
- `get_order_history` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-order-history.md
- `get_position_info` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-position-info.md
- `get_premium_index_price_kline` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-premium-index-price-kline.md
- `get_recent_trades` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-recent-trades.md
- `get_risk_limit` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-risk-limit.md
- `get_server_time` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-server-time.md
- `get_single_coin_balance` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-single-coin-balance.md
- `get_tickers` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-tickers.md
- `get_trade_history` — Read — https://policylayer.com/tools/bcusack-bybit-py-mcp/get-trade-history.md
- …and 5 more: https://policylayer.com/tools/bcusack-bybit-py-mcp.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=bcusack-bybit-py-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/bcusack-bybit-py-mcp
