# openai_chat_completion

Run a chat completion with an OpenAI model (GPT-4o, GPT-4, etc.).

Agent View of the PolicyLayer registry record for `openai_chat_completion`. HTML page: https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/openai-chat-completion

## Facts

- Tool: `openai_chat_completion`
- Server: UnClick (`@unclick/mcp-server`) — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server.md
- Install: `npx -y @unclick/mcp-server`
- Homepage: https://github.com/malamutemayhem/unclick-agent-native-endpoints.git
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 12 (1 required)
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `n` | number | no |  |
| `seed` | number | no |  |
| `model` | string | no | Model ID, e.g. gpt-4o, gpt-4o-mini (default: gpt-4o-mini) |
| `top_p` | number | no |  |
| `org_id` | string | no | OpenAI organization ID (optional) |
| `prompt` | string | no | Convenience: single user message (alternative to messages array) |
| `api_key` | string | yes |  |
| `messages` | object | no | Array of {role, content} message objects (alternative to prompt) |
| `max_tokens` | number | no |  |
| `temperature` | number | no |  |
| `system_prompt` | string | no | System instruction (used with prompt param) |
| `response_format` | object | no | e.g. {type: 'json_object'} |

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": "openai_chat_completion",
    "arguments": {
      "api_key": "<api_key>"
    }
  }
}
```

## Why openai_chat_completion is rated High

This tool executes arbitrary language model operations based on user-supplied prompts. While not destructive by itself, it can be weaponized to generate code, craft attacks, or produce harmful content depending on how an AI agent frames requests. The blast radius depends on what the model outputs and how downstream tools use those outputs.

From the tool's own definition: "Tool description states it can 'Run a chat completion' with OpenAI models, which is an operation that executes external code/API calls with effects determined by input prompts."

Risk signals: Handles credentials or secrets (api_key) · High parameter count (12 properties)

## Use case

AI agents invoke openai_chat_completion to trigger actions in UnClick. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "openai_chat_completion": {
      "limits": [
        {
          "counter": "openai_chat_completion_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on UnClick (1661)

- `delete_todo` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/delete-todo.md
- `email_delete` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/email-delete.md
- `file_sync_prune` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/file-sync-prune.md
- `pinecone_delete_vectors` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/pinecone-delete-vectors.md
- `telegram_manage_chat` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/telegram-manage-chat.md
- `upstash_redis_del` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/upstash-redis-del.md
- `vault_action` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/vault-action.md
- `vercel_delete_env` — Destructive — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/vercel-delete-env.md
- `ackermann` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/ackermann.md
- `anthropic_create_message` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/anthropic-create-message.md
- `avl_tree` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/avl-tree.md
- `baby_giant_step` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/baby-giant-step.md
- `bellman_ford` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/bellman-ford.md
- `bezier_curve` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/bezier-curve.md
- `bitmask_ops` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/bitmask-ops.md
- `bitwise_calc` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/bitwise-calc.md
- `bloom_filter` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/bloom-filter.md
- `bluesky_action` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/bluesky-action.md
- `burrows_wheeler` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/burrows-wheeler.md
- `cartesian_tree` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/cartesian-tree.md
- `chromatic_number` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/chromatic-number.md
- `circleci_trigger_pipeline` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/circleci-trigger-pipeline.md
- `cohere_chat` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/cohere-chat.md
- `cohere_classify` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/cohere-classify.md
- `cohere_generate` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/cohere-generate.md
- `commonsensepass_check` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/commonsensepass-check.md
- `complex_calc` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/complex-calc.md
- `compliancepass_run` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/compliancepass-run.md
- `convex_hull_3d` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/convex-hull-3d.md
- `convolution` — Execute — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server/convolution.md
- …and 1631 more: https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server.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=io-github-malamutemayhem-unclick-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-malamutemayhem-unclick-mcp-server
