Blackbook Protocol Advisor
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Purchaser-gated MCP for Vault, HMRC TRS, 95/5 equity, and Companies House PSC.
| Author | io.github.koynlabs |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2309 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Blackbook Protocol Advisor": {
"url": "https://theblackbook.pro",
"transport": "streamable-http"
}
}
}
Measured tools (25)
search_bookread-onlyREQUIRED before substantive Protocol answers. Search approved Blackbook Protocol passages and return cited excerpts. Prefer Protocol vocabulary from hits over generic UK legal advice. Returns ranked results plus the educational boundary.
Parameters:
query(required) — string — Search text using Protocol terms. Example: 95/5 equity split Vault PSC trusteeslimit— integer — Maximum number of cited excerpts to return. Default 5. Example: 5
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_module_playbookread-onlyREQUIRED when coaching setup. Return the ordered Protocol checklist for a module. For 95/5 / share transfer into the Trust use equity_95_5 (not a freestyle solicitor checklist). Modules: vault, trs, equity_95_5, psc, banking, ip, philosophy, legacy, property.
Parameters:
module(required) — string — Protocol module id. Example: equity_95_5
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_skillsread-onlyList Protocol Architect workflow skills (Vault, TRS, 95/5, PSC, portal co-pilot). Call when the Owner asks how to set something up; then get_skill for the matching workflow.
Parameters:
query— string — Optional text to filter skill names or descriptions. Example: psc
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_skillread-onlyLoad a Protocol workflow skill as markdown. Names: establish-vault-trust, register-trust-trs, implement-95-5-equity-split, update-psc-companies-house, run-portal-copilot.
Parameters:
name(required) — string — Skill name from list_skills. Example: implement-95-5-equity-split
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_modulesread-onlyList available Protocol advisor modules in coaching order.
Parameters:
query— string — Optional text to filter module id or title. Example: vault
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_hmrc_guidanceread-onlyRetrieve approved GOV.UK/HMRC trust and inheritance-tax guidance by topic. Returns a title, official URL, and short summary. Not a live scrape of GOV.UK.
Parameters:
topic(required) — string — Guidance topic. Example: trs or inheritance taxjurisdiction— string — Jurisdiction filter. Example: UK
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_companies_house_guidanceread-onlyRetrieve approved Companies House / PSC / WebFiling guidance. PSC filings name individuals (trustees), never the Trust itself.
Parameters:
topic(required) — string — Guidance topic. Example: psc or webfiling
Hints: read-only yes · destructive no · idempotent yes · open-world yes
run_trust_intakeValidate a structured trust setup intake and return missing facts, Protocol warnings, and next modules. Call before drafting forms or opening portals.
Parameters:
jurisdiction(required) — string — Governing law of the trust. Example: England and Walesobjective(required) — string — Why the Owner is setting up the Vault. Example: Family wealth planningassets(required) — string — Assets intended for the Trust. Example: 95 ordinary shares in Example Ltdsettlor(required) — string — Person settling the Trust. Example: Alex Exampleparties(required) — string — Trustees and beneficiaries in Protocol terms. Example: Alex Example (Lead Trustee); Class: childrendeadlines— string — Known filing or lender deadlines. Example: TRS within 90 days of the deedquestions— string — Owner questions the Architect should address. Example: Can the Trust be named as PSC?trustName— string — Vault / settlement name. Example: Example Family Settlement 2026assetValue— string — Optional indicative value of those assets. Example: 100000 GBPcompanyName— string — Engine (limited company) name. Example: Example LtdcompanyNumber— string — Companies House number. Example: 12345678existingArrangements— string — Existing companies, trusts, or wills that affect setup. Example: Sole shareholder of Example Ltd
Hints: read-only no · destructive no · idempotent no · open-world no
draft_form_answersDraft preparation notes for TRS, IHT100, IHT400, and related professional-review questions from a completed intake. Label as a Protocol guide for solicitor execution.
Parameters:
intake(required) — object — Structured Owner facts for Protocol coaching and portal field mappingformFamily— string — Form family to draft against. Example: TRS
Hints: read-only no · destructive no · idempotent no · open-world no
prepare_portal_fillMap intake facts to a fill_fields payload for TRS or Companies House PSC. Secrets (auth code) are listed but never filled. Call after Owner login; align labels with list_fillable_fields. Never maps the Trust as a PSC organisation.
Parameters:
intake(required) — object — Structured Owner facts for Protocol coaching and portal field mappingformFamily— string — Portal family to map. Example: COMPANIES_HOUSE_PSC
Hints: read-only no · destructive no · idempotent no · open-world no
generate_review_bundleGenerate a cited professional-review bundle from a completed intake for the Owner to take to a solicitor or CTA.
Parameters:
intake(required) — object — Structured Owner facts for Protocol coaching and portal field mappingformat— string — Bundle format. Example: markdown
Hints: read-only no · destructive no · idempotent no · open-world no
list_risk_flagsread-onlyReturn legal, tax, and practical red flags detected from customer facts (settlor-as-beneficiary, lender consent, offshore, time pressure).
Parameters:
intake(required) — object — Structured Owner facts for Protocol coaching and portal field mapping
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_implementation_modesread-onlyList Owner choices: self_serve (own browser + guidance) vs assisted (Browserbase live view + optional fill). Ask before starting co-pilot.
Parameters:
preferred— string — Optional Owner preference if already stated. Example: self_serve
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_self_serve_portalread-onlySelf-serve path: return the official portal URL plus Protocol checklist for the Owner’s own browser. Present portalUrl as a clickable markdown link (MCP cannot launch local browsers). Do not start Browserbase.
Parameters:
portalId(required) — string — Allowlisted official portal. Example: trs for HMRC Trust Registration Service
Hints: read-only yes · destructive no · idempotent yes · open-world yes
start_browser_sessionASSISTED mode only. Start a fresh ephemeral Browserbase (or mock) co-pilot session. Returns liveViewUrl — no purchaser email. If Owner prefers their own browser, use get_self_serve_portal instead.
Parameters:
reason— string — Why assisted mode is needed. Example: Owner asked for live TRS fill help
Hints: read-only no · destructive no · idempotent no · open-world yes
open_portalNavigate the assisted session to an allowlisted portal: trs, trs_manage, companies_house_webfiling, or companies_house_psc.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789portalId(required) — string — Allowlisted official portal. Example: trs for HMRC Trust Registration Service
Hints: read-only no · destructive no · idempotent no · open-world yes
explain_current_screenread-onlySummarise the current portal page: URL, text excerpt, fillable fields, Protocol hint, signedInLikely.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789
Hints: read-only yes · destructive no · idempotent yes · open-world yes
list_fillable_fieldsread-onlyInventory visible non-secret form controls (label/name/type) on the current portal page. Use to align prepare_portal_fill keys.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789
Hints: read-only yes · destructive no · idempotent yes · open-world yes
fill_fieldsFill non-secret form fields (label/placeholder/name). Never passwords, OTPs, or Companies House auth codes.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789fields(required) — object — Map of visible field label, placeholder, or name to a non-secret value. Example: {"Trust name":"Example Family Settlement 2026"}
Hints: read-only no · destructive no · idempotent no · open-world yes
request_user_actionPause for Owner login, CAPTCHA, 2FA, or review in the Browserbase live view. Never ask the Owner to paste passwords into chat.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789action(required) — string — Why the Owner must use the live view. Example: login
Hints: read-only no · destructive no · idempotent no · open-world yes
wait_for_user_readyAfter request_user_action(login|2fa), poll until the page leaves the sign-in surface (or timeout). Then continue fill.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789pollMs— integer — Polling interval in milliseconds. Default 3000. Example: 3000timeoutMs— integer — How long to wait for sign-in in milliseconds. Default 90000. Example: 90000
Hints: read-only no · destructive no · idempotent no · open-world yes
prepare_submit_confirmationCreate a one-time confirmation token required before confirm_and_submit. Show the token to the human Owner; do not submit without it.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789
Hints: read-only no · destructive no · idempotent no · open-world yes
confirm_and_submitdestructiveSubmit the current portal form only after the human provides a valid one-time confirmationToken from prepare_submit_confirmation. This can file on a government portal.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789confirmationToken(required) — string — One-time token the Owner typed from prepare_submit_confirmation. Example: 7K2Q9M
Hints: read-only no · destructive yes · idempotent yes · open-world yes
end_browser_sessiondestructiveTear down the assisted browser session. No credentials are persisted. Safe to call more than once for the same id after expiry.
Parameters:
sessionId(required) — string — Ephemeral co-pilot session id returned by start_browser_session. Example: 8f3c2a1b-4d5e-6789-abcd-ef0123456789
Hints: read-only no · destructive yes · idempotent yes · open-world yes
get_legal_boundaryread-onlyReturn the mandatory educational / non-advice boundary statement. Call when the Owner asks if this is legal advice.
Parameters:
audience— string — Who will read the boundary line. Example: owner
Hints: read-only yes · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.