Deposit by Ouroboros Apps
by LAHutchins91 · remote · no sign-in to list tools · v1.0.3 · published by GitHub user LAHutchins91
Freelance deposit and payment schedule for AI assistants
12 tools: 8 can delete or cancel things, 2 change things and 2 only read.
Scanned Oct 21, 2026
- Deletes or cancels8Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things2Claude Code: ask: see these tools
- Only reads2Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http deposit https://deposit-continuity2.vercel.app/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
12 tools
Deletes or cancels 8Claude Code: deny
accept_schedule_changeApply one suggested schedule change after the freelancer explicitly approves that change.No findings
Why it is in this group
- The name "accept_schedule_change" says "schedule": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Apply one suggested schedule change after the freelancer explicitly approves that change. Pass confirmed true only then. This is the path that may waive the deposit, mark it paid, or move a payment date. Calling it is not a substitute for the freelancer's approval.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: false
add_later_paymentAdd one later payment: a label, an amount in whole minor units, and a payment date.No findings
Why it is in this group
- The name "add_later_payment" says "add": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Add one later payment: a label, an amount in whole minor units, and a payment date. After the schedule is approved, a new later payment is refused until accept_schedule_change applies an add_later_payment suggestion.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: false
commit_scheduleMark the current draft as the approved schedule.No findings
Why it is in this group
- The name "commit_schedule" says "commit": 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 schedule. Pass confirmed true only after the freelancer explicitly approves the deposit, the later payment dates, and what the assistant may tell the client.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: false
mark_deposit_paidMark the deposit paid.No findings
Why it is in this group
- The name "mark_deposit_paid" says "mark": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Mark the deposit paid. After the schedule is approved, marking it paid is refused until accept_schedule_change applies a mark_deposit_paid suggestion. Do not tell the client the deposit is paid unless the record already says so.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: false
move_payment_dateMove a payment date.No findings
Why it is in this group
- The name "move_payment_date" says "move": a word for a change.
- The name "move_payment_date" also says "payment": a word that usually means money moves, which cannot be taken back.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Move a payment date. target deposit moves the deposit date. target later moves one later payment and requires paymentId. After the schedule is approved, a different date is refused until accept_schedule_change applies a move_payment_date suggestion.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: false
record_depositRecord the deposit amount in whole minor units and the deposit date as YYYY-MM-DD.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.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Record the deposit amount in whole minor units and the deposit date as YYYY-MM-DD. This does not waive the deposit and does not mark it paid. After the schedule is approved, a different amount or date is refused until an accepted schedule change.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: false
waive_depositWaive the deposit.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.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Waive the deposit. After the schedule is approved, waiving is refused until accept_schedule_change applies a waive_deposit suggestion. Do not tell the client the deposit is waived unless the record already says so.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: false
write_client_scriptRecord what the assistant may tell the client about the deposit and payment dates.No findings
Why it is in this group
- The name "write_client_script" says "write": a word for a change.
- The input takes a statement or command to run (input.script), which can change anything it can reach.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Record what the assistant may tell the client about the deposit and payment dates. After the schedule is approved, different wording is refused until an accepted revise_client_script suggestion. The assistant must not go beyond this script and the facts in read_schedule.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: false
Changes things 2Claude Code: ask
start_scheduleStart a draft deposit schedule for one client project.No findings
Why it is in this group
- The name "start_schedule" says "start": a word for a change.
Description, as the server wrote it Start a draft deposit schedule for one client project. Draft figures are not an approved commitment until commit_schedule. Currency is a three-letter code. Amounts later are minor units of that currency and are the freelancer's figures.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
suggest_schedule_changeRecord a suggested change.No findings
Why it is in this group
- The name "suggest_schedule_change" says "schedule": a word for a change.
- The input takes a statement or command to run (input.script), which can change anything it can reach.
Description, as the server wrote it Record a suggested change. This does not change the schedule. kind waive_deposit and kind mark_deposit_paid need only a summary. kind move_payment_date requires dueOn and target; target later also requires paymentId. kind revise_deposit requires amountMinor. kind add_later_payment requires label, amountMinor, and dueOn. kind revise_client_script requires script.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
Only reads 2Claude Code: allow
list_schedulesList the signed-in freelancer's deposit schedules.No findings
Why it is in this group
- The name "list_schedules" says "list": a word for reading.
Description, as the server wrote it List the signed-in freelancer's deposit schedules. Use a returned id with read_schedule. Do not guess a schedule.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
read_scheduleRead the schedule before answering.No findings
Why it is in this group
- The name "read_schedule" says "read": a word for reading.
Description, as the server wrote it Read the schedule before answering. Quote only this record. mayTellClient and clientScript are what the assistant may tell the client. Draft status is not an approved commitment. Proposed changes do not authorize a waiver, a paid deposit, or a new payment date.
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 deposit https://deposit-continuity2.vercel.app/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__deposit__list_schedules",
"mcp__deposit__read_schedule"
],
"ask": [
"mcp__deposit__start_schedule",
"mcp__deposit__suggest_schedule_change"
],
"deny": [
"mcp__deposit__record_deposit",
"mcp__deposit__add_later_payment",
"mcp__deposit__move_payment_date",
"mcp__deposit__waive_deposit",
"mcp__deposit__mark_deposit_paid",
"mcp__deposit__write_client_script",
"mcp__deposit__commit_schedule",
"mcp__deposit__accept_schedule_change"
]
}
}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 deposit. Review it before you use it.
