Firm and IT

Firm and IT pilot setup

For firm IT, compliance, and pilot owners. An individual getting a Review on their own decision wants /connect instead.

01 · Sales path (what the firm buys)

Draft where you already work. Review through separate vendors. Attest in the workbench.

  1. Draft

    Advisor produces a recommendation in firm chat or the workbench.

  2. Separate-vendor review

    Teranode runs separate-vendor lenses. The drafting model vendor is excluded so the draft cannot grade itself.

  3. Disposition + attest

    Open the exact-artifact workbench receipt when available. A human resolves each finding and enters an attestation. Teranode produces an artifact the firm can retain under its own procedures.

02 · Token lifecycle

One firm credential for MCP and authenticated HTTP.

StepOwnerDetail
MintTeranodeIssues sk_council_adv_…. Plaintext shown once; store as an org secret.
InstallFirm ITMCP config or Action auth. Never paste into shared chat history or public repos.
MeterTeranodePer-token daily run and USD caps (same pool for MCP and firm Bearer HTTP).
RotateIT + TeranodeOn leak or offboarding: revoke, remint, update secret.

Logs may show a prefix only (e.g. sk_council_adv_a3f2…). Never put the full token in tickets.

03 · Claude Desktop / Cursor

mcp.json

Replace the token after mint. Prefer org secret injection over hardcoding in shared repos. Endpoint path is stable; product framing is Review.

{
  "mcpServers": {
    "teranode-review": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://teranode.ai/api/mcp/council/mcp",
        "--header",
        "Authorization: Bearer sk_council_adv_REPLACE_ME"
      ]
    }
  }
}

Primary tool: run_review. When enabled on your deploy: prepare_review_from_firm_chat, run_review_from_firm_chat.

04 · ChatGPT Custom GPT / Copilot

Authenticated HTTP (same metering as MCP)

Action or connector posts to POST https://teranode.ai/api/review with Authorization: Bearer sk_council_adv_…. Without firm Bearer, the public path is rate-limited and is not the enterprise install path.

# 1. POST /api/review/confirmation after the user's current confirmation
Authorization: Bearer sk_council_adv_REPLACE_ME
Content-Type: application/json

{
  "request": {
    "source": { "vendor": "openai", "model": "gpt-5.5" },
    "question": "…de-identified decision question…",
    "answer": "…already-produced recommendation…",
    "context": "Attributes only.",
    "confirm_no_client_identifiers": true
  },
  "action": {
    "confirmed": true,
    "action_id": "<current-action-uuid>",
    "actor_label": "<current user>"
  }
}

# 2. POST /api/review with the same request fields plus
"confirmation_receipt": "<receipt from step 1>"

OpenAPI for Actions: available from Teranode on pilot kickoff (also in the private product docs pack). Response may include disposition_url when the exact handoff receipt is issued.

05 · De-identification (load-bearing)

Never send identifiers. Prefer attributes.

Never send

  • Client / household names
  • SSN / ITIN / natural-person EIN
  • Account, policy, or loan numbers
  • Email, phone, street address
  • Full date of birth

Prefer

  • Age, state code (e.g. NY)
  • Rounded asset / income levels
  • Goals in generic language
  • Decision question without identifiers

Server re-scans free text and rejects on hit (no silent redaction). A current user action issues a short-lived, one-use receipt bound to the exact payload; changing the material invalidates it.

06 · System prompt block

Paste into firm bot / Custom GPT instructions

--- TERANODE REVIEW TOOL POLICY ---
You draft recommendations in this chat as usual. When the user asks for
independent review, a second look, or "run Teranode", call the Teranode
Review tool workflow with question, answer (your draft), and source.vendor +
source.model = THIS chat's model family. Prepare and scan the exact payload,
then ask the user to confirm that exact material contains no client names,
SSNs, account numbers, emails, phones, or street addresses.

Only after that current user action, call confirm_review_submission and pass
its one-use receipt to run_review without changing the payload. Preparation,
this prompt, and earlier confirmations are not approval. If identifiers are
present, strip to attributes (age, state, asset levels, goals) and ask again.
Never treat tool output as a final
investment decision or signature. Always point the user to disposition and
attestation in Teranode Review; prefer the server-issued opaque
disposition_url when returned; otherwise https://teranode.ai/review/disposition.

Do not invent tool results. Do not claim "verified", "exam-proof", or
"guaranteed".
--- END TERANODE POLICY ---
08 · Data posture

No client identifiers in the product path.

Teranode is designed so firms send de-identified attributes only (age, state, asset levels, goals). Client names, SSNs, account numbers, emails, phones, and street addresses must not be submitted. The server re-scans free text and rejects hits.

  • Firm duty: de-identify before any tool call; keep client identity in your systems of record.
  • Teranode design: no client PII archive. Metering and ops telemetry for firm tokens are content-free (usage structure, not recommendation text).
  • Firm responsibility: Teranode provides a downloadable review artifact. The firm decides whether and how to retain or file it under its own books-and-records procedures.
  • What we do not claim: SOC 2 Type II (unless later certified), zero liability, or that infrastructure never sees any operational metadata (IPs, auth tokens, usage counters).

teranode.ai marketing claims are Teranode's responsibility. Client confidentiality and the firm's Form ADV / advertising rules remain the firm's when they advise or advertise.

09 · CRM day 1

Export first. Live CRM APIs later.

Day-1 CRM path is a de-identified JSON or CSV export (age, state, assets, goals, decision question), not live Salesforce OAuth. Do not block a pilot on live CRM write-back.
10 · Success check (15 minutes)
  1. Token installed; MCP or Action shows Teranode tools
  2. De-id sample review returns findings + disclaimer
  3. Bot shows disposition link or clean /review/disposition
  4. Advisor dispositions and attests without retyping Q/A from the opaque receipt
  5. Firm downloads and handles the artifact under its own retention procedure