MCP 服务器

asset-register

io.github.theluckystrike/asset-register
商业与运营 金融与投资 公开且可连接 MCP 2026-07-28

此 MCP 可以做什么

Maintains a fixed-asset register with tax-table depreciation schedules, disposals, net book values, and depreciation journals.

asset_add
Add a fixed asset
Add one fixed asset to the register and return its id with the rate, useful life and convention taken from the bundled tax table. Cost and residual are whole minor units. Free tier holds ten assets.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name', 'category', 'cost_minor', 'purchase_date'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'What the asset is, e.g. "MacBook Pro 16" or "Delivery van"'}, 'note': {'type': 'string', 'maxLength': 2000}, 'method': {'enum': ['straight-line', 'declining-balance'], 'type': 'string', 'description': '"straight-line" or "declining-balance". Default: the table row method, straight-line for the Polish annex and the reducing-balance pool rate for the UK'}, 'scheme': {'enum': ['pl', 'uk', 'us'], 'type': 'string', 'description': '"pl" Polish KST annex rates, "uk" HMRC capital allowance pools, "us" IRS MACRS GDS. Omit to derive it from the shared business profile currency'}, 'project': {'type': 'string', 'maxLength': 200, 'description': 'Project, department or cost centre this asset belongs to'}, 'category': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'A code or name from the bundled table, e.g. "487" or "Computers and computer sets" (pl), "main" (uk), "5-year" (us). Read assets://categories for the list'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO code. Defaults to the shared business profile currency, else the scheme table currency'}, 'rate_pct': {'type': 'number', 'description': 'Override the annual percentage derived from the table. Use for a lowered Polish rate under art. 16i'}, 'cost_minor': {'type': 'integer', 'description': 'Acquisition cost in MINOR units (integer cents/grosze), e.g. 549900 for 5499.00. Never a decimal'}, 'life_years': {'type': 'number', 'description': 'Override the useful life derived from the table, in years. The answer reports that it was an override'}, 'purchase_date': {'type': 'string', 'maxLength': 10, 'description': 'ISO date YYYY-MM-DD the asset was bought'}, 'residual_minor': {'type': 'integer', 'description': 'Residual or salvage value in MINOR units, default 0. Must be less than cost. MACRS ignores it and the answer says so'}, 'in_service_date': {'type': 'string', 'maxLength': 10, 'description': 'ISO date YYYY-MM-DD the asset entered use and the register. Defaults to purchase_date'}, 'declining_coefficient': {'type': 'number', 'description': 'Declining-balance coefficient. Polish default 2.0, capped by the table; ignored with straight-line'}}, 'additionalProperties': False}
asset_delete
Delete an asset
Remove one asset from the register when nothing depends on it: not disposed of, never journaled. Its free-tier slot is free again. An asset with a dependent is refused and the dependent is named. Free.
可能执行破坏性操作
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asset'], 'properties': {'asset': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Asset id such as ASSET-2026-0001, or an exact or partial name'}}, 'additionalProperties': False}
asset_dispose
Dispose of an asset
Record that an asset left the business on a date and return the gain or loss against net book value. proceeds_minor is in MINOR units. Depreciation stops here, and a second disposal is refused.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asset', 'date'], 'properties': {'date': {'type': 'string', 'maxLength': 10, 'description': 'ISO date YYYY-MM-DD the asset left the business. It cannot be before the in-service date'}, 'note': {'type': 'string', 'maxLength': 2000, 'description': 'What happened, e.g. sold to a dealer, written off after a fire'}, 'asset': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Asset id such as ASSET-2026-0001, or an exact or partial name'}, 'proceeds_minor': {'type': 'integer', 'description': 'Sale proceeds in MINOR units, default 0 for a scrapping or a write-off'}}, 'additionalProperties': False}
asset_journal
Journal the month's depreciation
Return the depreciation journal for one month: debit depreciation expense and credit accumulated depreciation, per asset and in total, plus an expense_add-ready payload per currency. It writes no expense. Pro.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['month'], 'properties': {'month': {'type': 'string', 'maxLength': 10, 'description': 'The month to journal, YYYY-MM. A date YYYY-MM-DD is read as its month'}, 'scheme': {'enum': ['pl', 'uk', 'us'], 'type': 'string', 'description': 'Only assets on this tax scheme'}, 'project': {'type': 'string', 'maxLength': 200, 'description': 'Only assets on this project or cost centre'}, 'category': {'type': 'string', 'maxLength': 200, 'description': 'Expense category to put on the expense_add payload. Default "depreciation"'}, 'expense_account': {'type': 'string', 'maxLength': 200, 'description': 'Debit account name. Default "Depreciation expense"'}, 'accumulated_account': {'type': 'string', 'maxLength': 200, 'description': 'Credit account name. Default "Accumulated depreciation"'}}, 'additionalProperties': False}
asset_list
List the fixed asset register
List the assets in the register with cost, method, rate and net book value at a date, filtered by scheme, category, project, currency or disposal state. Free and unlimited.
只读 幂等
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'as_of': {'type': 'string', 'maxLength': 10, 'description': 'Value the register at this month or date, YYYY-MM or YYYY-MM-DD. Default today'}, 'limit': {'type': 'integer', 'maximum': 2000, 'minimum': 1, 'description': 'Maximum rows, default and ceiling 2000'}, 'scheme': {'enum': ['pl', 'uk', 'us'], 'type': 'string', 'description': 'Only assets on this tax scheme'}, 'project': {'type': 'string', 'maxLength': 200, 'description': 'Only assets on this project or cost centre'}, 'category': {'type': 'string', 'maxLength': 200, 'description': 'Only assets in this table category code or name'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'Only assets held in this currency'}, 'include_disposed': {'type': 'boolean', 'description': 'Include assets already disposed of. Default false'}}, 'additionalProperties': False}
asset_report
Report the register
For one year: net book value by category, scheme and currency at as_of, the year's depreciation charge per currency, and every disposal with its gain or loss. Pro; asset_list and asset_schedule are free per-asset views.
只读 幂等
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'year': {'type': 'integer', 'description': 'Calendar year to report, e.g. 2026. Default the year of as_of, else this year'}, 'as_of': {'type': 'string', 'maxLength': 10, 'description': 'Value the register at this month or date, YYYY-MM or YYYY-MM-DD. Default the last day of the year'}, 'scheme': {'enum': ['pl', 'uk', 'us'], 'type': 'string', 'description': 'Only assets on this tax scheme'}, 'project': {'type': 'string', 'maxLength': 200, 'description': 'Only assets on this project or cost centre'}}, 'additionalProperties': False}
asset_schedule
Build a depreciation schedule
Build the depreciation schedule for a stored asset, or price one not in the register, per year or per month, to residual or zero, with the table's rate, life and convention. Periods sum exactly to the base.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'asset': {'type': 'string', 'maxLength': 200, 'description': 'Asset id such as ASSET-2026-0001, or an exact or partial name. Omit and pass the fields below to price an asset that is not in the register'}, 'method': {'enum': ['straight-line', 'declining-balance'], 'type': 'string', 'description': '"straight-line" or "declining-balance"'}, 'scheme': {'enum': ['pl', 'uk', 'us'], 'type': 'string', 'description': 'Scheme, when pricing an asset that is not in the register'}, 'category': {'type': 'string', 'maxLength': 200, 'description': 'Table category code or name, when pricing an asset that is not in the register'}, 'currency': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'ISO code, when pricing an asset that is not in the register'}, 'rate_pct': {'type': 'number', 'description': 'Override the annual percentage from the table'}, 'cost_minor': {'type': 'integer', 'description': 'Cost in MINOR units, when pricing an asset that is not in the register'}, 'life_years': {'type': 'number', 'description': 'Override the useful life from the table, in years'}, 'granularity': {'enum': ['year', 'month'], 'type': 'string', 'description': '"year" for one row per period, "month" for the monthly charge. Default "year"'}, 'purchase_date': {'type': 'string', 'maxLength': 10, 'description': 'ISO date YYYY-MM-DD, when pricing an asset that is not in the register'}, 'residual_minor': {'type': 'integer', 'description': 'Residual in MINOR units, default 0'}, 'in_service_date': {'type': 'string', 'maxLength': 10, 'description': 'ISO date YYYY-MM-DD the asset entered use. Defaults to purchase_date'}, 'declining_coefficient': {'type': 'number', 'description': 'Declining-balance coefficient; ignored with straight-line'}}, 'additionalProperties': False}
license_activate
Activate license
Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['key'], 'properties': {'key': {'type': 'string', 'description': 'License key from checkout, MCPL1.<payload>.<signature>'}}, 'additionalProperties': False}
license_status
License status
Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.
只读 幂等
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
已更改
license_activate
2026年9月21日 02:56
已更改
license_status
2026年9月21日 02:56
已更改
asset_report
2026年9月21日 02:56
已更改
asset_delete
2026年9月21日 02:56
已更改
asset_dispose
2026年9月21日 02:56
已更改
asset_journal
2026年9月21日 02:56
已更改
asset_schedule
2026年9月21日 02:56
已更改
asset_list
2026年9月21日 02:56
已更改
asset_add
2026年9月21日 02:56
已添加
license_activate
2026年9月17日 12:52
已添加
license_status
2026年9月17日 12:52
已添加
asset_report
2026年9月17日 12:52
已添加
asset_delete
2026年9月17日 12:52
已添加
asset_dispose
2026年9月17日 12:52
已添加
asset_journal
2026年9月17日 12:52
已添加
asset_schedule
2026年9月17日 12:52
已添加
asset_list
2026年9月17日 12:52
已添加
asset_add
2026年9月17日 12:52