Skip to content

Scope by Ouroboros Apps

by LAHutchins91 · remote · no sign-in to list tools · v1.0.3 · published by GitHub user LAHutchins91

Freelance scope of work, rates, deadlines, and change orders for AI assistants

Deletes · 5Changes · 2

9 tools: 5 can delete or cancel things, 2 change things and 2 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http scope https://scope-continuity2.vercel.app/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

9 tools

Deletes or cancels 5Claude Code: deny
  • approve_change_orderApply one proposed change order after the freelancer explicitly approves that order.No findings

    Why it is in this group

    • The name "approve_change_order" says "approve": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Apply one proposed change order after the freelancer explicitly approves that order. Pass confirmed true only then. This is the path that may discount a rate or add work. Calling it is not a substitute for the freelancer's approval.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • approve_scopeMark the current draft as the approved scope.No findings

    Why it is in this group

    • The name "approve_scope" says "approve": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Mark the current draft as the approved scope. Pass confirmed true only after the freelancer explicitly approves the current items, rates, and deadlines.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • save_deadlineSet or move the deadline for one scope item.No findings

    Why it is in this group

    • The name "save_deadline" says "save": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Set or move the deadline for one scope item. The date is a calendar day in YYYY-MM-DD form.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
  • save_rateSet a draft rate, or update an approved rate without lowering it or changing its unit.No findings

    Why it is in this group

    • The name "save_rate" says "save": a word for a change.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Set a draft rate, or update an approved rate without lowering it or changing its unit. A lower amount is a discount and is refused. A new rate code after approval is refused. Use file_change_order and approve_change_order for those.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
  • save_scope_itemAdd or update a scope item the freelancer has accepted.No findings

    Why it is in this group

    • The name "save_scope_item" says "save": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Add or update a scope item the freelancer has accepted. After approval, a new item is refused until approve_change_order adds that work. Renaming approved work is refused.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
Changes things 2Claude Code: ask
  • create_engagementCreate a draft engagement.No findings

    Why it is in this group

    • The name "create_engagement" says "create": a word for a change.
    Description, as the server wrote it
    Create a draft engagement. Draft terms are not an approved commitment until approve_scope.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • file_change_orderRecord a proposed change order.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Record a proposed change order. This does not change scope, rates, or deadlines. kind add_work requires workTitle and workDescription. kind discount_rate requires rateCode and a lower amountMinor. kind add_rate requires rateCode, rateLabel, amountMinor, and unit. kind move_deadline requires scopeItemId and dueOn.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
Only reads 2Claude Code: allow
  • get_approved_recordRead the approved scope, rates, deadlines, and change orders before answering.No findings

    Why it is in this group

    • The name "get_approved_record" says "get": a word for reading.
    Description, as the server wrote it
    Read the approved scope, rates, deadlines, and change orders before answering. Quote only this record. Draft status is not an approved commitment. Proposed change orders do not authorize a discount or extra work.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_engagementsList the signed-in freelancer's engagements.No findings

    Why it is in this group

    • The name "list_engagements" says "list": a word for reading.
    Description, as the server wrote it
    List the signed-in freelancer's engagements. Use a returned id with get_approved_record. Do not guess an engagement.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http scope https://scope-continuity2.vercel.app/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__scope__list_engagements",
      "mcp__scope__get_approved_record"
    ],
    "ask": [
      "mcp__scope__create_engagement",
      "mcp__scope__file_change_order"
    ],
    "deny": [
      "mcp__scope__save_scope_item",
      "mcp__scope__save_rate",
      "mcp__scope__save_deadline",
      "mcp__scope__approve_scope",
      "mcp__scope__approve_change_order"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as scope. Review it before you use it.