Blackbook Protocol Advisor
by koynlabs · remote · no sign-in to list tools · v1.0.3 · published by GitHub user koynlabs
Purchaser-gated MCP for Vault, HMRC TRS, 95/5 equity, and Companies House PSC.
25 tools: 2 can delete or cancel things, 10 change things and 13 only read.
Scanned Oct 21, 2026
- Deletes or cancels2Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things10Claude Code: ask: see these tools
- Only reads13Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http blackbook-advisor https://theblackbook.proFindings
Matches of fixed checks, with the text they matched.
The server marks "wait_for_user_ready" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "wait_for_user_ready" says "wait": a word for reading.
The description mentions "credentials".
What this check looks forMatched text
description: "...r down the assisted browser session. No credentials are persisted. Safe to call more than o..."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
25 tools
Deletes or cancels 2Claude Code: deny
confirm_and_submitSubmit the current portal form only after the human provides a valid one-time confirmationToken from prepare_submit_confirmation.No findings
Why it is in this group
- The name "confirm_and_submit" says "submit": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Submit 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.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: true
end_browser_sessionTear down the assisted browser session.1 finding
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).
Findings
- Info
The description mentions "credentials".
What this check looks forMatched text
description: "...r down the assisted browser session. No credentials are persisted. Safe to call more than o..."
Description, as the server wrote it Tear down the assisted browser session. No credentials are persisted. Safe to call more than once for the same id after expiry.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: true
Changes things 10Claude Code: ask
draft_form_answersDraft preparation notes for TRS, IHT100, IHT400, and related professional-review questions from a completed intake.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.
Description, as the server wrote it Draft preparation notes for TRS, IHT100, IHT400, and related professional-review questions from a completed intake. Label as a Protocol guide for solicitor execution.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
fill_fieldsFill non-secret form fields (label/placeholder/name).No findings
Why it is in this group
- The name "fill_fields" says "fill": a word for a change.
Description, as the server wrote it Fill non-secret form fields (label/placeholder/name). Never passwords, OTPs, or Companies House auth codes.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
generate_review_bundleGenerate a cited professional-review bundle from a completed intake for the Owner to take to a solicitor or CTA.No findings
Why it is in this group
- The name "generate_review_bundle" says "generate": a word for a change.
Description, as the server wrote it Generate a cited professional-review bundle from a completed intake for the Owner to take to a solicitor or CTA.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
open_portalNavigate the assisted session to an allowlisted portal: trs, trs_manage, companies_house_webfiling, or companies_house_psc.No findings
Why it is in this group
- The name "open_portal" says "open": a word for a change.
Description, as the server wrote it Navigate the assisted session to an allowlisted portal: trs, trs_manage, companies_house_webfiling, or companies_house_psc.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
prepare_portal_fillMap intake facts to a fill_fields payload for TRS or Companies House PSC.No findings
Why it is in this group
- The name "prepare_portal_fill" says "fill": a word for a change.
Description, as the server wrote it Map 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.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
prepare_submit_confirmationCreate a one-time confirmation token required before confirm_and_submit.No findings
Why it is in this group
- The name "prepare_submit_confirmation" says "submit": a word for a change.
Description, as the server wrote it Create a one-time confirmation token required before confirm_and_submit. Show the token to the human Owner; do not submit without it.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
request_user_actionPause for Owner login, CAPTCHA, 2FA, or review in the Browserbase live view.No findings
Why it is in this group
- The name "request_user_action" says "request": a word for a change.
Description, as the server wrote it Pause for Owner login, CAPTCHA, 2FA, or review in the Browserbase live view. Never ask the Owner to paste passwords into chat.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
run_trust_intakeValidate a structured trust setup intake and return missing facts, Protocol warnings, and next modules.No findings
Why it is in this group
- The name "run_trust_intake" says "run": a word for a change.
Description, as the server wrote it Validate a structured trust setup intake and return missing facts, Protocol warnings, and next modules. Call before drafting forms or opening portals.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
start_browser_sessionASSISTED mode only.No findings
Why it is in this group
- The name "start_browser_session" says "start": a word for a change.
Description, as the server wrote it ASSISTED 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.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
wait_for_user_readyAfter request_user_action(login|2fa), poll until the page leaves the sign-in surface (or timeout).1 finding
Why it is in this group
- The name "wait_for_user_ready" says "wait": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
Findings
- Warn
The server marks "wait_for_user_ready" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "wait_for_user_ready" says "wait": a word for reading.
Description, as the server wrote it After request_user_action(login|2fa), poll until the page leaves the sign-in surface (or timeout). Then continue fill.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
Only reads 13Claude Code: allow
explain_current_screenSummarise the current portal page: URL, text excerpt, fillable fields, Protocol hint, signedInLikely.No findings
Why it is in this group
- The name "explain_current_screen" says "explain": a word for reading.
Description, as the server wrote it Summarise the current portal page: URL, text excerpt, fillable fields, Protocol hint, signedInLikely.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_companies_house_guidanceRetrieve approved Companies House / PSC / WebFiling guidance.No findings
Why it is in this group
- The name "get_companies_house_guidance" says "get": a word for reading.
Description, as the server wrote it Retrieve approved Companies House / PSC / WebFiling guidance. PSC filings name individuals (trustees), never the Trust itself.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_hmrc_guidanceRetrieve approved GOV.UK/HMRC trust and inheritance-tax guidance by topic.No findings
Why it is in this group
- The name "get_hmrc_guidance" says "get": a word for reading.
Description, as the server wrote it Retrieve 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_legal_boundaryReturn the mandatory educational / non-advice boundary statement.No findings
Why it is in this group
- The name "get_legal_boundary" says "get": a word for reading.
Description, as the server wrote it Return the mandatory educational / non-advice boundary statement. Call when the Owner asks if this is legal advice.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_module_playbookREQUIRED when coaching setup.No findings
Why it is in this group
- The name "get_module_playbook" says "get": a word for reading.
Description, as the server wrote it REQUIRED 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_self_serve_portalSelf-serve path: return the official portal URL plus Protocol checklist for the Owner’s own browser.No findings
Why it is in this group
- The name "get_self_serve_portal" says "get": a word for reading.
Description, as the server wrote it Self-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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_skillLoad a Protocol workflow skill as markdown.No findings
Why it is in this group
- The name "get_skill" says "get": a word for reading.
Description, as the server wrote it Load 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_fillable_fieldsInventory visible non-secret form controls (label/name/type) on the current portal page.No findings
Why it is in this group
- The name "list_fillable_fields" says "list": a word for reading.
Description, as the server wrote it Inventory visible non-secret form controls (label/name/type) on the current portal page. Use to align prepare_portal_fill keys.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
list_implementation_modesList Owner choices: self_serve (own browser + guidance) vs assisted (Browserbase live view + optional fill).No findings
Why it is in this group
- The name "list_implementation_modes" says "list": a word for reading.
Description, as the server wrote it List Owner choices: self_serve (own browser + guidance) vs assisted (Browserbase live view + optional fill). Ask before starting co-pilot.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_modulesList available Protocol advisor modules in coaching order.No findings
Why it is in this group
- The name "list_modules" says "list": a word for reading.
Description, as the server wrote it List available Protocol advisor modules in coaching order.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_risk_flagsReturn legal, tax, and practical red flags detected from customer facts (settlor-as-beneficiary, lender consent, offshore, time pressure).No findings
Why it is in this group
- The name "list_risk_flags" says "list": a word for reading.
Description, as the server wrote it Return legal, tax, and practical red flags detected from customer facts (settlor-as-beneficiary, lender consent, offshore, time pressure).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_skillsList Protocol Architect workflow skills (Vault, TRS, 95/5, PSC, portal co-pilot).No findings
Why it is in this group
- The name "list_skills" says "list": a word for reading.
Description, as the server wrote it List 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_bookREQUIRED before substantive Protocol answers.No findings
Why it is in this group
- The name "search_book" says "search": a word for reading.
Description, as the server wrote it REQUIRED 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.
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 blackbook-advisor https://theblackbook.proRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__blackbook-advisor__search_book",
"mcp__blackbook-advisor__get_module_playbook",
"mcp__blackbook-advisor__list_skills",
"mcp__blackbook-advisor__get_skill",
"mcp__blackbook-advisor__list_modules",
"mcp__blackbook-advisor__get_hmrc_guidance",
"mcp__blackbook-advisor__get_companies_house_guidance",
"mcp__blackbook-advisor__list_risk_flags",
"mcp__blackbook-advisor__list_implementation_modes",
"mcp__blackbook-advisor__get_self_serve_portal",
"mcp__blackbook-advisor__explain_current_screen",
"mcp__blackbook-advisor__list_fillable_fields",
"mcp__blackbook-advisor__get_legal_boundary"
],
"ask": [
"mcp__blackbook-advisor__run_trust_intake",
"mcp__blackbook-advisor__draft_form_answers",
"mcp__blackbook-advisor__prepare_portal_fill",
"mcp__blackbook-advisor__generate_review_bundle",
"mcp__blackbook-advisor__start_browser_session",
"mcp__blackbook-advisor__open_portal",
"mcp__blackbook-advisor__fill_fields",
"mcp__blackbook-advisor__request_user_action",
"mcp__blackbook-advisor__wait_for_user_ready",
"mcp__blackbook-advisor__prepare_submit_confirmation"
],
"deny": [
"mcp__blackbook-advisor__confirm_and_submit",
"mcp__blackbook-advisor__end_browser_session"
]
}
}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 blackbook-advisor. Review it before you use it.
