{"name":"open-bp","transport":"Streamable HTTP","endpoint":"https://open-bp.com/api/mcp","method":"POST","authenticationRequired":true,"protectedResourceMetadata":"https://open-bp.com/.well-known/oauth-protected-resource/api/mcp","tools":[{"name":"project_calculate","description":"Recalculer un brouillon et comparer ses scénarios avec le moteur financier.","scope":"read","scopeLabel":"Lire les projets","readOnly":true,"destructive":false,"idempotent":true,"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"draft":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"clientName":{"type":"string","maxLength":120},"input":{"type":"object","properties":{"start":{"type":"string","pattern":"^20\\d{2}-(0[1-9]|1[0-2])$"},"months":{"type":"integer","minimum":12,"maximum":60},"revenues":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"name":{"type":"string","minLength":1,"maxLength":120},"kind":{"type":"string","enum":["service","product","subscription"]},"quantity":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"evolution":{"type":"object","properties":{"quantity":{"type":"object","properties":{"ramp":{"type":"object","properties":{"target":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"endMonth":{"type":"integer","minimum":2,"maximum":60}},"required":["target","endMonth"],"additionalProperties":false},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?:[1-9]|[1-5][0-9]|60)$"},"additionalProperties":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}}},"additionalProperties":false},"price":{"type":"object","properties":{"ramp":{"type":"object","properties":{"target":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"endMonth":{"type":"integer","minimum":2,"maximum":60}},"required":["target","endMonth"],"additionalProperties":false},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?:[1-9]|[1-5][0-9]|60)$"},"additionalProperties":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}}},"additionalProperties":false},"unitCost":{"type":"object","properties":{"ramp":{"type":"object","properties":{"target":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"endMonth":{"type":"integer","minimum":2,"maximum":60}},"required":["target","endMonth"],"additionalProperties":false},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?:[1-9]|[1-5][0-9]|60)$"},"additionalProperties":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}}},"additionalProperties":false},"costRatio":{"type":"object","properties":{"ramp":{"type":"object","properties":{"target":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"endMonth":{"type":"integer","minimum":2,"maximum":60}},"required":["target","endMonth"],"additionalProperties":false},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?:[1-9]|[1-5][0-9]|60)$"},"additionalProperties":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}}},"additionalProperties":false},"newCustomers":{"type":"object","properties":{"ramp":{"type":"object","properties":{"target":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"endMonth":{"type":"integer","minimum":2,"maximum":60}},"required":["target","endMonth"],"additionalProperties":false},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?:[1-9]|[1-5][0-9]|60)$"},"additionalProperties":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}}},"additionalProperties":false},"churn":{"type":"object","properties":{"ramp":{"type":"object","properties":{"target":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"endMonth":{"type":"integer","minimum":2,"maximum":60}},"required":["target","endMonth"],"additionalProperties":false},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?:[1-9]|[1-5][0-9]|60)$"},"additionalProperties":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}}},"additionalProperties":false}},"additionalProperties":false},"price":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"unitCost":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"costRatio":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"newCustomers":{"default":"0","type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"churn":{"default":"0","type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"vat":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"costVat":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"costVatTiming":{"type":"string","enum":["invoice","payment"]},"vatTiming":{"type":"string","enum":["invoice","collection"]}},"required":["id","name","kind","quantity","price","unitCost","costRatio","vat"]}},"expenses":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","minLength":1,"maxLength":120},"amount":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"evolution":{"type":"object","properties":{"amount":{"type":"object","properties":{"ramp":{"type":"object","properties":{"target":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"endMonth":{"type":"integer","minimum":2,"maximum":60}},"required":["target","endMonth"],"additionalProperties":false},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?:[1-9]|[1-5][0-9]|60)$"},"additionalProperties":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}}},"additionalProperties":false}},"additionalProperties":false},"vat":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"vatTiming":{"type":"string","enum":["invoice","payment"]},"standardCostId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,59}$"},"costEstimate":{"oneOf":[{"type":"object","properties":{"method":{"type":"string","const":"annual"},"annualAmount":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["method","annualAmount"],"additionalProperties":false},{"type":"object","properties":{"method":{"type":"string","const":"area"},"surface":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"annualRate":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["method","surface","annualRate"],"additionalProperties":false},{"type":"object","properties":{"method":{"type":"string","const":"energy"},"surface":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"consumption":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"kwhPrice":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"annualSubscription":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["method","surface","consumption","kwhPrice","annualSubscription"],"additionalProperties":false},{"type":"object","properties":{"method":{"type":"string","const":"revenue"},"annualRevenue":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"rate":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["method","annualRevenue","rate"],"additionalProperties":false},{"type":"object","properties":{"method":{"type":"string","const":"units"},"quantity":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"monthlyRate":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["method","quantity","monthlyRate"],"additionalProperties":false}]}},"required":["id","name","amount","vat"]}},"payroll":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","minLength":1,"maxLength":120},"gross":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"count":{"type":"integer","minimum":1,"maximum":100},"startMonth":{"type":"integer","minimum":1,"maximum":60},"employerRate":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["id","name","gross","count","startMonth","employerRate"]}},"asset":{"type":"object","properties":{"amount":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"lifeMonths":{"type":"integer","minimum":1,"maximum":240},"vat":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["amount","lifeMonths","vat"]},"financing":{"type":"object","properties":{"equity":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"loan":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"annualRate":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"termMonths":{"type":"integer","minimum":1,"maximum":240}},"required":["equity","loan","annualRate","termMonths"]},"stock":{"type":"object","properties":{"initialPurchase":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"enabled":{"type":"boolean"},"vat":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["initialPurchase","enabled","vat"]},"collectionDelay":{"type":"integer","minimum":0,"maximum":3},"supplierDelay":{"type":"integer","minimum":0,"maximum":3},"tax":{"type":"object","properties":{"vatEnabled":{"type":"boolean"},"corporateRate":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"profile":{"type":"string","enum":["legacy","france-is"]},"reducedRateEligible":{"type":"boolean"},"capitalPaid":{"type":"boolean"},"ownershipEligible":{"type":"boolean"}},"required":["vatEnabled","corporateRate"]},"capacity":{"type":"object","properties":{"hoursPerMonth":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"minutesPerService":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"required":["hoursPerMonth","minutesPerService"]}},"required":["start","months","revenues","expenses","payroll","asset","financing","stock","collectionDelay","supplierDelay","tax","capacity"]},"document":{"type":"object","properties":{"presentation":{"type":"string","maxLength":15000},"market":{"type":"string","maxLength":15000},"operations":{"type":"string","maxLength":15000},"acquisition":{"type":"string","maxLength":15000},"funding":{"type":"string","maxLength":15000},"risks":{"type":"string","maxLength":15000}},"required":["presentation","market","operations"]},"scenario":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"salesMultiplier":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"hiringShift":{"type":"integer","minimum":-36,"maximum":36},"revenueOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":120},"additionalProperties":{"type":"object","properties":{"quantity":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"price":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"newCustomers":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"churn":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"additionalProperties":false}},"payrollShifts":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":120},"additionalProperties":{"type":"integer","minimum":-36,"maximum":36}},"collectionDelay":{"type":"integer","minimum":0,"maximum":3},"supplierDelay":{"type":"integer","minimum":0,"maximum":3}},"required":["name","salesMultiplier","hiringShift"],"additionalProperties":false},"scenarios":{"maxItems":19,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"salesMultiplier":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"hiringShift":{"type":"integer","minimum":-36,"maximum":36},"revenueOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":120},"additionalProperties":{"type":"object","properties":{"quantity":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"price":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"newCustomers":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"},"churn":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$"}},"additionalProperties":false}},"payrollShifts":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":120},"additionalProperties":{"type":"integer","minimum":-36,"maximum":36}},"collectionDelay":{"type":"integer","minimum":0,"maximum":3},"supplierDelay":{"type":"integer","minimum":0,"maximum":3},"id":{"type":"string","minLength":1,"maxLength":120}},"required":["name","salesMultiplier","hiringShift","id"],"additionalProperties":false}},"assumptions":{"maxItems":400,"type":"array","items":{"type":"object","properties":{"path":{"type":"string","minLength":1,"maxLength":240},"label":{"type":"string","minLength":1,"maxLength":240},"status":{"type":"string","enum":["missing","example","estimate","confirmed"]},"source":{"type":"string","maxLength":1500},"note":{"type":"string","maxLength":3000}},"required":["path","label","status","source","note"],"additionalProperties":false}}},"required":["name","input","document","scenario"]}},"required":["draft"],"additionalProperties":false}}]}