ProfitDrawer

Read-only small business Q&A, product prices, IRS datasets and calculators from ProfitDrawer.

사용해야 할까요

품질 및 안전성

B
설명 품질
100%
스키마 완전성
84%
이름 품질
98%
오염 위험
20%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (5)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainestimate_startup_costs에서
  • MEDIUMTool description contains URL to non-standard domaincalculate_price_per_job에서
  • MEDIUMTool description contains URL to non-standard domaincalculate_loan_payoff에서
  • MEDIUMTool description contains URL to non-standard domaincalculate_tax_set_aside에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~3,897토큰 (도구 정의)
~3.4 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 3.04%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "profitdrawer": {
      "url": "https://profitdrawer.com/mcp"
    }
  }
}

원격 엔드포인트

https://profitdrawer.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (10)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_profitdrawer(query, limit)

Searches the questions and answers published by ProfitDrawer on small business bookkeeping, taxes, pricing and money. Categories: Bookkeeping basics; Small business taxes; Start a business; Pricing and profit; Personal budgeting; Google Sheets and Excel how-tos; About ProfitDrawer files. Returns up to 10 matching answers, each with id, question, short answer, category, last-updated date and the URL of the answer page. Use get_answer with an id for the full text and source.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500,
      "description": "Search words or a question."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5,
      "description": "Maximum number of answers (1-10). Default 5."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "query": {
      "type": "string"
    },
    "total_matches": {
      "type": "integer"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "question": {
            "type": "string"
          },
          "answer": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "md_url": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "category_name": {
            "type": "string"
          },
          "updated": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "question",
          "answer",
          "url",
          "category",
          "updated"
        ]
      }
    },
    "hint": {
      "type": "string"
    }
  },
  "required": [
    "query",
    "total_matches",
    "results",
    "citations"
  ]
}
🟢get_answer(id)

Returns one answer published by ProfitDrawer by id: question, short answer, full detail, source with label, published and updated dates, answer page URL, Markdown URL, related questions, and the products and calculators the answer mentions. Ids come from search_profitdrawer.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 1,
      "description": "Answer id, as returned by search_profitdrawer."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "id": {
      "type": "integer"
    },
    "question": {
      "type": "string"
    },
    "answer": {
      "type": "string"
    },
    "detail": {
      "type": "string"
    },
    "category": {
      "type": "string"
    },
    "category_name": {
      "type": "string"
    },
    "source": {
      "type": "string"
    },
    "source_label": {
      "type": "string"
    },
    "published": {
      "type": "string"
    },
    "updated": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "md_url": {
      "type": "string"
    },
    "related": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "question": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "question",
          "url"
        ]
      }
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "price": {
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "url"
        ]
      }
    },
    "tools": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "url"
        ]
      }
    }
  },
  "required": [
    "id",
    "question",
    "answer",
    "detail",
    "source",
    "updated",
    "url",
    "related",
    "citations"
  ]
}
🟢list_categories

Lists the categories of ProfitDrawer's published answers with description, number of answers and category page URL.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "count": {
            "type": "integer"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "count",
          "url"
        ]
      }
    },
    "total_answers": {
      "type": "integer"
    },
    "answers_page": {
      "type": "string"
    }
  },
  "required": [
    "categories",
    "total_answers",
    "citations"
  ]
}
🟢get_company_info

Returns public facts about ProfitDrawer: description, website, founding year with its source, area served, currency, support channels, social profiles and other facts, each with a source. Includes the About page URL.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "company": {
      "type": "object"
    },
    "url": {
      "type": "string"
    },
    "website": {
      "type": "string"
    }
  },
  "required": [
    "company",
    "url",
    "citations"
  ]
}
🟢list_products(query, collection, max_price, format, limit)

Lists ProfitDrawer products (spreadsheets, printables, templates, planners and printed goods) with name, price in USD, file formats, availability, product page URL and Etsy listing URL. Optional filters: words to match, collection, maximum price and file format.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 200,
      "description": "Words to match in the product name, type or collection, for example \"cleaning bookkeeping\"."
    },
    "collection": {
      "type": "string",
      "enum": [
        "money",
        "business-templates",
        "planners",
        "kids",
        "bookkeeping-spreadsheets",
        "printed"
      ],
      "description": "Collection: money = Money & Budget; business-templates = Business Templates & Kits; planners = Planners; kids = Kids & Family; bookkeeping-spreadsheets = Bookkeeping Spreadsheets; printed = Printed Goods."
    },
    "max_price": {
      "type": "number",
      "minimum": 0,
      "description": "Only products at or below this price in USD."
    },
    "format": {
      "type": "string",
      "maxLength": 60,
      "description": "File format to match, for example \"Google Sheets\", \"Excel\", \"PDF\", \"PowerPoint\". Matched as text, case-insensitive."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of products (1-100). Default 25."
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "filters": {
      "type": "object"
    },
    "total_matches": {
      "type": "integer"
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "collection": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "price": {
            "type": [
              "number",
              "null"
            ]
          },
          "currency": {
            "type": [
              "string",
              "null"
            ]
          },
          "formats": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "available": {
            "type": "boolean"
          },
          "url": {
            "type": "string"
          },
          "etsy_url": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "slug",
          "name",
          "price",
          "formats",
          "url",
          "etsy_url"
        ]
      }
    },
    "collections": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name"
        ]
      }
    },
    "products_page": {
      "type": "string"
    }
  },
  "required": [
    "products",
    "total_matches",
    "citations"
  ]
}
🟢query_dataset(slug, filters, limit)

Returns rows from the datasets published by ProfitDrawer: irs-small-business-tax-deadlines-2027 (IRS small business tax deadlines 2027); irs-standard-mileage-rates (IRS standard mileage rates for business use, 2020 to 2026). Each row includes its IRS source URL and the date it was checked. Optional: filter by column values. Includes the dataset page URL and license.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "enum": [
        "irs-small-business-tax-deadlines-2027",
        "irs-standard-mileage-rates"
      ],
      "description": "Dataset slug."
    },
    "filters": {
      "type": "object",
      "additionalProperties": {
        "type": [
          "string",
          "number"
        ]
      },
      "description": "Column key to value. Text matches case-insensitively as a substring; numbers match exactly. Example: {\"year\": 2025}."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 100,
      "description": "Maximum number of rows (1-200). Default 100."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "dataset": {
      "type": "object",
      "properties": {
        "slug": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "license": {
          "type": "string"
        },
        "updated": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "json_url": {
          "type": "string"
        },
        "csv_url": {
          "type": "string"
        },
        "columns": {
          "type": "array",
          "items": {
            "type": "object"
          }
        }
      },
      "required": [
        "slug",
        "title",
        "url"
      ]
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "total_rows": {
      "type": "integer"
    },
    "returned": {
      "type": "integer"
    }
  },
  "required": [
    "dataset",
    "rows",
    "total_rows",
    "returned",
    "citations"
  ]
}
🟢estimate_startup_costs(preset, one_time_costs, monthly_costs, starting_cash)

Adds up one-time startup costs and monthly costs and works out cash left and months of runway (cash left divided by monthly costs, rounded down to 0.1, assuming no sales). Same formula as https://profitdrawer.com/tools/startup-cost-calculator.html. Optional preset with example amounts: Cleaning, Lawn care, Vending machine, Food truck, Any business; cost lists you pass replace the preset lines. Preset amounts are rough examples, not quotes.

입력 스키마

{
  "type": "object",
  "properties": {
    "preset": {
      "type": "string",
      "enum": [
        "Cleaning",
        "Lawn care",
        "Vending machine",
        "Food truck",
        "Any business"
      ],
      "description": "Example cost lines from the website calculator."
    },
    "one_time_costs": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "maxLength": 60
          },
          "amount": {
            "type": "number",
            "minimum": 0,
            "description": "USD"
          }
        },
        "required": [
          "amount"
        ]
      },
      "description": "One-time costs [{label, amount}] in USD. Replaces the preset one-time lines."
    },
    "monthly_costs": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "maxLength": 60
          },
          "amount": {
            "type": "number",
            "minimum": 0,
            "description": "USD"
          }
        },
        "required": [
          "amount"
        ]
      },
      "description": "Monthly costs [{label, amount}] in USD. Replaces the preset monthly lines."
    },
    "starting_cash": {
      "type": "number",
      "minimum": 0,
      "description": "Starting cash in USD. Default 0."
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "preset": {
      "type": [
        "string",
        "null"
      ]
    },
    "one_time_costs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "monthly_costs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "starting_cash": {
      "type": "number"
    },
    "one_time_total": {
      "type": "number"
    },
    "monthly_total": {
      "type": "number"
    },
    "cash_left": {
      "type": "number"
    },
    "runway_months": {
      "type": [
        "number",
        "null"
      ]
    },
    "runway": {
      "type": "string"
    },
    "short_by": {
      "type": [
        "number",
        "null"
      ]
    },
    "display": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "one_time_total",
    "monthly_total",
    "cash_left",
    "runway_months",
    "runway",
    "url",
    "citations"
  ]
}
🟢calculate_price_per_job(hours, hourly_rate, materials, travel, monthly_overhead, ...)

Works out a price for one service job: cost = hours x hourly pay + materials + travel + monthly overhead / jobs per month; price = cost / (1 - profit margin). Also returns profit per job, monthly revenue and break-even jobs per month. Same formula as https://profitdrawer.com/tools/price-per-job-calculator.html. Margins above 95% are treated as 95%.

입력 스키마

{
  "type": "object",
  "properties": {
    "hours": {
      "type": "number",
      "minimum": 0,
      "description": "Hours one job takes."
    },
    "hourly_rate": {
      "type": "number",
      "minimum": 0,
      "description": "Your pay per hour in USD."
    },
    "materials": {
      "type": "number",
      "minimum": 0,
      "description": "Materials per job in USD. Default 0."
    },
    "travel": {
      "type": "number",
      "minimum": 0,
      "description": "Travel cost per job in USD. Default 0."
    },
    "monthly_overhead": {
      "type": "number",
      "minimum": 0,
      "description": "Monthly overhead (insurance, phone, software, ...) in USD. Default 0."
    },
    "jobs_per_month": {
      "type": "number",
      "minimum": 0,
      "description": "Jobs expected per month; the overhead is shared across them. Default 0."
    },
    "profit_margin_percent": {
      "type": "number",
      "minimum": 0,
      "description": "Profit margin as a percent of the price, for example 20."
    }
  },
  "required": [
    "hours",
    "hourly_rate",
    "profit_margin_percent"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "inputs": {
      "type": "object"
    },
    "labor": {
      "type": "number"
    },
    "overhead_share": {
      "type": "number"
    },
    "cost": {
      "type": "number"
    },
    "price": {
      "type": "number"
    },
    "profit": {
      "type": "number"
    },
    "monthly_revenue": {
      "type": "number"
    },
    "breakeven_jobs": {
      "type": [
        "integer",
        "null"
      ]
    },
    "breakeven": {
      "type": "string"
    },
    "display": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "warning": {
      "type": "string"
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "price",
    "cost",
    "profit",
    "breakeven_jobs",
    "breakeven",
    "url",
    "citations"
  ]
}
🟢calculate_loan_payoff(balance, apr_percent, monthly_payment, extra_payment)

Works out how many months a loan takes to pay off and the total interest, month by month (one month of interest = APR / 12 is added, then the payment is taken off), and what an optional extra monthly payment saves in interest and time. Same method as https://profitdrawer.com/tools/loan-payoff-calculator.html. A close estimate; lenders can differ slightly.

입력 스키마

{
  "type": "object",
  "properties": {
    "balance": {
      "type": "number",
      "minimum": 0,
      "description": "Loan balance in USD."
    },
    "apr_percent": {
      "type": "number",
      "minimum": 0,
      "description": "Annual interest rate (APR) in percent, for example 6."
    },
    "monthly_payment": {
      "type": "number",
      "minimum": 0,
      "description": "Monthly payment in USD."
    },
    "extra_payment": {
      "type": "number",
      "minimum": 0,
      "description": "Optional extra payment each month in USD."
    }
  },
  "required": [
    "balance",
    "apr_percent",
    "monthly_payment"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "inputs": {
      "type": "object"
    },
    "one_month_interest": {
      "type": "number"
    },
    "current": {
      "type": "object"
    },
    "with_extra": {
      "type": [
        "object",
        "null"
      ]
    },
    "saved": {
      "type": [
        "object",
        "null"
      ]
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "display": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "note": {
      "type": "string"
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "current",
    "with_extra",
    "saved",
    "url",
    "citations"
  ]
}
🟢calculate_tax_set_aside(profit, period, set_aside_percent)

Estimates how much of a self-employed profit to set aside for taxes: set-aside = profit x chosen percent, and the US self-employment tax part = profit x 92.35% x 15.3% (12.4% Social Security + 2.9% Medicare), per month, quarter or year. Same formula as https://profitdrawer.com/tools/self-employed-tax-calculator.html. An estimate, not tax advice.

입력 스키마

{
  "type": "object",
  "properties": {
    "profit": {
      "type": "number",
      "minimum": 0,
      "description": "Profit (income minus business expenses) for one period, in USD."
    },
    "period": {
      "type": "string",
      "enum": [
        "month",
        "quarter",
        "year"
      ],
      "default": "month",
      "description": "The period the profit is for. Default month."
    },
    "set_aside_percent": {
      "type": "number",
      "minimum": 0,
      "description": "Share of the profit to set aside, in percent, for example 30."
    }
  },
  "required": [
    "profit",
    "set_aside_percent"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "sample_notice": {
      "type": "string"
    },
    "citations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "inputs": {
      "type": "object"
    },
    "set_aside": {
      "type": "number"
    },
    "set_aside_per_year": {
      "type": "number"
    },
    "self_employment_tax": {
      "type": "number"
    },
    "self_employment_tax_per_year": {
      "type": "number"
    },
    "left_for_income_tax": {
      "type": "number"
    },
    "shortfall": {
      "type": [
        "number",
        "null"
      ]
    },
    "display": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "sources": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "set_aside",
    "self_employment_tax",
    "left_for_income_tax",
    "notes",
    "url",
    "citations"
  ]
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 10개