# buy_market

Place a market buy order.

Agent View of the PolicyLayer registry record for `buy_market`. HTML page: https://policylayer.com/tools/af7007-mcp-trader/buy-market

## Facts

- Tool: `buy_market`
- Server: MCP Trader Server (`af7007/mcp-trader`) — https://policylayer.com/tools/af7007-mcp-trader.md
- Homepage: https://github.com/Af7007/mcp-trader
- 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": "buy_market",
    "arguments": {}
  }
}
```

## Why buy_market is rated Critical

A market buy order immediately commits financial capital at the current market price. This is a real-money trading operation with instant execution, no ability to retract once filled, and potential for significant financial loss if misused by an AI agent. It falls squarely in the Financial category, which takes precedence over all others.

From the tool's own definition: "'Place a market buy order' — directly executes a financial transaction at current market price with immediate effect"

## Use case

AI agents use buy_market to commit financial operations through MCP Trader 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 MCP Trader Server:

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

## Other tools on MCP Trader Server (44)

- `cancel_order` — Destructive — https://policylayer.com/tools/af7007-mcp-trader/cancel-order.md
- `close_positions_by_symbol` — Destructive — https://policylayer.com/tools/af7007-mcp-trader/close-positions-by-symbol.md
- `delete_model` — Destructive — https://policylayer.com/tools/af7007-mcp-trader/delete-model.md
- `chat_completion` — Execute — https://policylayer.com/tools/af7007-mcp-trader/chat-completion.md
- `initialize` — Execute — https://policylayer.com/tools/af7007-mcp-trader/initialize.md
- `pull_model` — Execute — https://policylayer.com/tools/af7007-mcp-trader/pull-model.md
- `shutdown` — Execute — https://policylayer.com/tools/af7007-mcp-trader/shutdown.md
- `buy_limit` — Financial — https://policylayer.com/tools/af7007-mcp-trader/buy-limit.md
- `buy_stop` — Financial — https://policylayer.com/tools/af7007-mcp-trader/buy-stop.md
- `close_all_positions` — Financial — https://policylayer.com/tools/af7007-mcp-trader/close-all-positions.md
- `close_position` — Financial — https://policylayer.com/tools/af7007-mcp-trader/close-position.md
- `login` — Financial — https://policylayer.com/tools/af7007-mcp-trader/login.md
- `order_send` — Financial — https://policylayer.com/tools/af7007-mcp-trader/order-send.md
- `sell_limit` — Financial — https://policylayer.com/tools/af7007-mcp-trader/sell-limit.md
- `sell_market` — Financial — https://policylayer.com/tools/af7007-mcp-trader/sell-market.md
- `sell_stop` — Financial — https://policylayer.com/tools/af7007-mcp-trader/sell-stop.md
- `generate_text` — Other — https://policylayer.com/tools/af7007-mcp-trader/generate-text.md
- `analyze_trading_intent` — Read — https://policylayer.com/tools/af7007-mcp-trader/analyze-trading-intent.md
- `check_ollama_health` — Read — https://policylayer.com/tools/af7007-mcp-trader/check-ollama-health.md
- `copy_rates_from_date` — Read — https://policylayer.com/tools/af7007-mcp-trader/copy-rates-from-date.md
- `copy_rates_from_pos` — Read — https://policylayer.com/tools/af7007-mcp-trader/copy-rates-from-pos.md
- `copy_rates_range` — Read — https://policylayer.com/tools/af7007-mcp-trader/copy-rates-range.md
- `copy_ticks_from_date` — Read — https://policylayer.com/tools/af7007-mcp-trader/copy-ticks-from-date.md
- `copy_ticks_range` — Read — https://policylayer.com/tools/af7007-mcp-trader/copy-ticks-range.md
- `get_account_info` — Read — https://policylayer.com/tools/af7007-mcp-trader/get-account-info.md
- `get_available_models` — Read — https://policylayer.com/tools/af7007-mcp-trader/get-available-models.md
- `get_last_error` — Read — https://policylayer.com/tools/af7007-mcp-trader/get-last-error.md
- `get_symbol_info` — Read — https://policylayer.com/tools/af7007-mcp-trader/get-symbol-info.md
- `get_symbol_info_tick` — Read — https://policylayer.com/tools/af7007-mcp-trader/get-symbol-info-tick.md
- `get_symbols` — Read — https://policylayer.com/tools/af7007-mcp-trader/get-symbols.md
- …and 14 more: https://policylayer.com/tools/af7007-mcp-trader.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=af7007-mcp-trader · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/af7007-mcp-trader
