# complete_and_invoice_milestone

Mark a consulting deliverable as delivered and auto-create a draft invoice for the milestone. Combines status update and invoice generation in one step.

Agent View of the PolicyLayer registry record for `complete_and_invoice_milestone`. HTML page: https://policylayer.com/tools/app-businys-mcp-server/complete-and-invoice-milestone

## Facts

- Tool: `complete_and_invoice_milestone`
- Server: Businys (`@businys/mcp-server`) — https://policylayer.com/tools/app-businys-mcp-server.md
- Install: `npx -y @businys/mcp-server`
- Homepage: https://github.com/hiatys/businys-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

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

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

## Why complete_and_invoice_milestone is rated Medium

The tool updates a milestone status and creates a draft invoice. Both are reversible write operations — the invoice is a draft (not yet sent or paid), and status updates can presumably be undone. No money is moved, no data is destroyed. The most severe applicable category is Write.

From the tool's own definition: "Mark a consulting deliverable as delivered and auto-create a draft invoice for the milestone. Combines status update and invoice generation in one step."

## Use case

AI agents use complete_and_invoice_milestone to create or update resources in Businys, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Businys environment.

## Recommended policy (PolicyLayer)

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

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

## Other tools on Businys (247)

- `archive_contract` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/archive-contract.md
- `archive_invoice` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/archive-invoice.md
- `cancel_booking` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/cancel-booking.md
- `cancel_invitation` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/cancel-invitation.md
- `delete_account` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-account.md
- `delete_asset` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-asset.md
- `delete_automation` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-automation.md
- `delete_blackout` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-blackout.md
- `delete_exercise` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-exercise.md
- `delete_gear_item` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-gear-item.md
- `delete_goal` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-goal.md
- `delete_measurement` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-measurement.md
- `delete_personal_record` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-personal-record.md
- `delete_program` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-program.md
- `delete_sub_profile` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-sub-profile.md
- `delete_workout` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-workout.md
- `delete_workout_set` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/delete-workout-set.md
- `remove_member` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/remove-member.md
- `revoke_api_key` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/revoke-api-key.md
- `revoke_portal_access` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/revoke-portal-access.md
- `skip_nurture` — Destructive — https://policylayer.com/tools/app-businys-mcp-server/skip-nurture.md
- `create_automation` — Execute — https://policylayer.com/tools/app-businys-mcp-server/create-automation.md
- `switch_organization` — Execute — https://policylayer.com/tools/app-businys-mcp-server/switch-organization.md
- `cancel_recurring_billing` — Financial — https://policylayer.com/tools/app-businys-mcp-server/cancel-recurring-billing.md
- `create_credit_pack` — Financial — https://policylayer.com/tools/app-businys-mcp-server/create-credit-pack.md
- `create_deposit_invoice` — Financial — https://policylayer.com/tools/app-businys-mcp-server/create-deposit-invoice.md
- `create_recurring_billing` — Financial — https://policylayer.com/tools/app-businys-mcp-server/create-recurring-billing.md
- `deduct_credit` — Financial — https://policylayer.com/tools/app-businys-mcp-server/deduct-credit.md
- `forfeit_deposit` — Financial — https://policylayer.com/tools/app-businys-mcp-server/forfeit-deposit.md
- `pause_recurring_billing` — Financial — https://policylayer.com/tools/app-businys-mcp-server/pause-recurring-billing.md
- …and 217 more: https://policylayer.com/tools/app-businys-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=app-businys-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/app-businys-mcp-server
