Skip to content

SMI Aware Assistant

by mcp.smiaware.com · remote · no sign-in to list tools · v0.1.1 · published by com.smiaware.mcp

Remote MCP server exposing SMI Aware tools, resources, and skills over Streamable HTTP.

Changes · 24

40 tools: 24 change things and 16 only read.

Scanned Oct 21, 2026

2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http smi-aware-assistant https://mcp.smiaware.com/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn1 info
  • Warnsearch

    The server marks "search" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "search" says "search": a word for reading.

    What this check looks for
  • The description mentions "credentials".

    Matched text

    description: "...twork calls and never reads or requires credentials."

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

40 tools

Changes things 24Claude Code: ask
  • onboarding_next_stepPre-connection onboarding helper, callable before any SMI token is set.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 read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Info

      The description mentions "credentials".

      Matched text

      description: "...twork calls and never reads or requires credentials."

      What this check looks for
    Description, as the server wrote it
    Pre-connection onboarding helper, callable before any SMI token is set. With no input, returns the fork question "Do you already have an SMI token?" — call again with hasToken: "yes" for connect guidance (then verify_access), or hasToken: "no" for prospect-intake guidance. Runs locally; makes no network calls and never reads or requires credentials.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • smi_add_subject_addressAttaches a postal address to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_address" says "add": a word for a change.
    Description, as the server wrote it
    Attaches a postal address to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_aliasAttaches an alias to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_alias" says "add": a word for a change.
    Description, as the server wrote it
    Attaches an alias to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_educationAttaches an educational institution to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_education" says "add": a word for a change.
    Description, as the server wrote it
    Attaches an educational institution to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_emailAttaches an email address to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_email" says "add": a word for a change.
    Description, as the server wrote it
    Attaches an email address to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_employeeAttaches an employee to an SMI subject (for COMPANY-type subjects).No findings

    Why it is in this group

    • The name "smi_add_subject_employee" says "add": a word for a change.
    Description, as the server wrote it
    Attaches an employee to an SMI subject (for COMPANY-type subjects).

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_employee_urlAttaches a url to an SMI subject employee, referenced by the subjectEmployeeId returned from smi_add_subject_employee.No findings

    Why it is in this group

    • The name "smi_add_subject_employee_url" says "add": a word for a change.
    Description, as the server wrote it
    Attaches a url to an SMI subject employee, referenced by the subjectEmployeeId returned from smi_add_subject_employee.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_employerAttaches an employer to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_employer" says "add": a word for a change.
    Description, as the server wrote it
    Attaches an employer to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_phoneAttaches a phone number to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_phone" says "add": a word for a change.
    Description, as the server wrote it
    Attaches a phone number to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_relationshipAttaches a relationship to an SMI subject, using a relationshipId from smi_list_relationships.No findings

    Why it is in this group

    • The name "smi_add_subject_relationship" says "add": a word for a change.
    Description, as the server wrote it
    Attaches a relationship to an SMI subject, using a relationshipId from smi_list_relationships.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_relationship_urlAttaches a url to an SMI subject relationship, referenced by the subjectRelationshipId returned from smi_add_subject_relationship.No findings

    Why it is in this group

    • The name "smi_add_subject_relationship_url" says "add": a word for a change.
    Description, as the server wrote it
    Attaches a url to an SMI subject relationship, referenced by the subjectRelationshipId returned from smi_add_subject_relationship.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_surnameAttaches a surname to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_surname" says "add": a word for a change.
    Description, as the server wrote it
    Attaches a surname to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_add_subject_urlAttaches a url to an SMI subject.No findings

    Why it is in this group

    • The name "smi_add_subject_url" says "add": a word for a change.
    Description, as the server wrote it
    Attaches a url to an SMI subject.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_check_order_completeChecks the status of a deep report or export record (by its record id, e.g.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.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Checks the status of a deep report or export record (by its record id, e.g. from smi_create_deep_report draftIds). Returns state = ready | in_progress | draft | failed | unknown and a terminal flag. Poll with bounded attempts and backoff while in_progress; stop as soon as terminal is true (ready or failed) — a failed record will never become ready. Also stop when state is draft: the record was never submitted, so it will not progress until smi_submit_deep_reports or smi_submit_exports is called on it.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_confirm_uploadConfirms a file already PUT to a presigned URL returned by smi_request_upload_url and persists the deep report upload record.No findings

    Why it is in this group

    • The name "smi_confirm_upload" says "upload": a word for a change.
    Description, as the server wrote it
    Confirms a file already PUT to a presigned URL returned by smi_request_upload_url and persists the deep report upload record. Requires the version (the x-amz-version-id response header captured during the PUT).

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_create_deep_reportCreates one or more SMI deep report drafts from subject orders.No findings

    Why it is in this group

    • The name "smi_create_deep_report" says "create": a word for a change.
    Description, as the server wrote it
    Creates one or more SMI deep report drafts from subject orders. Returns the draft ids for review before submission. All orders in one call are filed under a single project; call once per project.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_create_exportCreates one or more SMI export drafts from profile-url orders.No findings

    Why it is in this group

    • The name "smi_create_export" says "create": a word for a change.
    Description, as the server wrote it
    Creates one or more SMI export drafts from profile-url orders. Returns the draft ids for review before submission. All orders in one call are filed under a single project; call once per project.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_request_upload_urlRequests a presigned URL for uploading a large deep-report reference file (csv, doc, docx, gif, jpg, jpeg, pdf, png, txt, webp, xls, xlsx) directly to storage.No findings

    Why it is in this group

    • The name "smi_request_upload_url" says "request": a word for a change.
    Description, as the server wrote it
    Requests a presigned URL for uploading a large deep-report reference file (csv, doc, docx, gif, jpg, jpeg, pdf, png, txt, webp, xls, xlsx) directly to storage. This server never proxies file bytes: the caller must PUT the file to the returned signedUrl, capture the x-amz-version-id response header from that PUT, and then call smi_confirm_upload with that version to persist the upload record.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_submit_deep_reportsSubmits previously created SMI deep report drafts (Draft status only) for processing.No findings

    Why it is in this group

    • The name "smi_submit_deep_reports" says "submit": a word for a change.
    Description, as the server wrote it
    Submits previously created SMI deep report drafts (Draft status only) for processing.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_submit_exportsSubmits previously created SMI export drafts (Draft status only) for processing.No findings

    Why it is in this group

    • The name "smi_submit_exports" says "submit": a word for a change.
    Description, as the server wrote it
    Submits previously created SMI export drafts (Draft status only) for processing.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • smi_update_subjectPartially updates an SMI subject via PATCH /subjects/:id.No findings

    Why it is in this group

    • The name "smi_update_subject" says "update": a word for a change.
    Description, as the server wrote it
    Partially updates an SMI subject via PATCH /subjects/:id. type (PERSON or COMPANY) is required on every call — the SMI backend requires it as a discriminator on every subject PATCH. Editable fields match the API contract: firstName/lastName (or companyName for a COMPANY), birthYear/birthMonth/birthDay, and gender. At least one editable field must be provided.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • submit_contact_requestSubmits a prospect contact request — first name, last name, email, and organization — to SMI so the sales team can follow up.No findings

    Why it is in this group

    • The name "submit_contact_request" says "submit": a word for a change.
    Description, as the server wrote it
    Submits a prospect contact request — first name, last name, email, and organization — to SMI so the sales team can follow up. For prospects who do not yet have an SMI Aware token.

    Annotations the server declares

    • readOnlyHint: false
    • idempotentHint: false
    • destructiveHint: false
    • openWorldHint: true
  • verify_accessVerifies the session Personal Access Token (PAT) against the SMI identity endpoint and returns the resolved account identity.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.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Verifies the session Personal Access Token (PAT) against the SMI identity endpoint and returns the resolved account identity.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
Only reads 16Claude Code: allow
  • fetchFetches the full SMI record for a typed reference ("<type>:<id>") that search returned.No findings

    Why it is in this group

    • The name "fetch" says "fetch": a word for reading.
    Description, as the server wrote it
    Fetches the full SMI record for a typed reference ("<type>:<id>") that search returned. Pass only an id that appeared in a search result; do not construct one. If you already have a plain SMI record id, use smi_get_deep_report or smi_get_export to read it, or smi_check_order_complete for its readiness.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_analyzeScores free-text case notes against 5 weighted gap-analysis signals (no prior SMI order, high-relevance case type, known online presence, date of loss, social media mentioned) and …No findings

    Why it is in this group

    • The name "smi_analyze" says "analyze": a word for reading.
    Description, as the server wrote it
    Scores free-text case notes against 5 weighted gap-analysis signals (no prior SMI order, high-relevance case type, known online presence, date of loss, social media mentioned) and returns a RECOMMEND/REVIEW/NO ACTION verdict, a confidence rating, which signals were/were not detected, a suggested product, and a best-effort orderData prefill (subject, matter id, case type, date of loss, handles/urls, suggested scope) for smi_create_deep_report. Runs entirely locally; makes no network calls.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • smi_get_cowork_instructionsReturns a consolidated, copy-paste-ready Markdown system prompt of SMI Aware house rules and a when-to-call-which-tool routing guide, plus exact paste-in locations for Claude Proje…No findings

    Why it is in this group

    • The name "smi_get_cowork_instructions" says "get": a word for reading.
    Description, as the server wrote it
    Returns a consolidated, copy-paste-ready Markdown system prompt of SMI Aware house rules and a when-to-call-which-tool routing guide, plus exact paste-in locations for Claude Projects/Cowork/Desktop, Cursor, and other clients, so the assistant calls the right smi_* tools automatically. Runs locally; makes no network calls and takes no case data.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • smi_get_deep_reportFetches a single SMI deep report by id.No findings

    Why it is in this group

    • The name "smi_get_deep_report" says "get": a word for reading.
    Description, as the server wrote it
    Fetches a single SMI deep report by id. Research Bundles are deep-report products, so use this tool for a Research Bundle id too rather than constructing a research_bundle: reference for the generic fetch tool. Accepts product-prefixed ids: RB-11751 (Research Bundle) and DR-11751 (Deep Report) both resolve here.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_get_deep_report_releasesLists releases for a given SMI deep report, with pagination.No findings

    Why it is in this group

    • The name "smi_get_deep_report_releases" says "get": a word for reading.
    Description, as the server wrote it
    Lists releases for a given SMI deep report, with pagination. Each release links its downloadable deliverable files (report PDF, CSV, JSON) and the findings screenshot archive when available — use this tool to fetch the generated report PDF.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_get_exportFetches a single SMI export by id.No findings

    Why it is in this group

    • The name "smi_get_export" says "get": a word for reading.
    Description, as the server wrote it
    Fetches a single SMI export by id. Accepts product-prefixed ids: EX-30001 resolves here, while RB and DR ids belong to smi_get_deep_report.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_get_export_releasesLists releases for a given SMI export, with pagination.No findings

    Why it is in this group

    • The name "smi_get_export_releases" says "get": a word for reading.
    Description, as the server wrote it
    Lists releases for a given SMI export, with pagination.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_get_report_findingsLists SMI release findings with pagination and optional filtering by report, platform, scope, and confirmation status.No findings

    Why it is in this group

    • The name "smi_get_report_findings" says "get": a word for reading.
    Description, as the server wrote it
    Lists SMI release findings with pagination and optional filtering by report, platform, scope, and confirmation status. Report filters accept the displayed identifier (RB-11751, DR-402) or a bare numeric id, and platform filters accept a platform name (Facebook) or its numeric id. Each finding includes its summary, profile URL, and screenshot/evidence links. Findings are grouped by report and ordered by ascending sequence, so sequence 1 is Finding #1 of that report; refer to a finding by that number rather than by its id, which is an internal record key the reader cannot see. The ordering covers the returned page: SMI decides which findings a page carries, so a report with more findings than take may not begin at Finding #1 on page 1.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_get_subjectReads a subject's full profile out of a deep report (no standalone GET /subjects/{id} exists upstream, so the input is a deepReportId, not a subject id).No findings

    Why it is in this group

    • The name "smi_get_subject" says "get": a word for reading.
    Description, as the server wrote it
    Reads a subject's full profile out of a deep report (no standalone GET /subjects/{id} exists upstream, so the input is a deepReportId, not a subject id). Returns the subject as structured JSON — any atomic field (e.g. date of birth via `subject.birthDate`) can be extracted from it directly.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_list_deep_reportsLists SMI deep reports with pagination and optional filtering.No findings

    Why it is in this group

    • The name "smi_list_deep_reports" says "list": a word for reading.
    Description, as the server wrote it
    Lists SMI deep reports with pagination and optional filtering.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_list_exportsLists SMI exports with pagination and optional filtering.No findings

    Why it is in this group

    • The name "smi_list_exports" says "list": a word for reading.
    Description, as the server wrote it
    Lists SMI exports with pagination and optional filtering.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_list_platformsLists the SMI reference set of platforms.No findings

    Why it is in this group

    • The name "smi_list_platforms" says "list": a word for reading.
    Description, as the server wrote it
    Lists the SMI reference set of platforms.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_list_productsLists the SMI reference set of products.No findings

    Why it is in this group

    • The name "smi_list_products" says "list": a word for reading.
    Description, as the server wrote it
    Lists the SMI reference set of products.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_list_projectsLists SMI projects with pagination.No findings

    Why it is in this group

    • The name "smi_list_projects" says "list": a word for reading.
    Description, as the server wrote it
    Lists SMI projects with pagination.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_list_relationshipsLists the SMI reference set of relationships.No findings

    Why it is in this group

    • The name "smi_list_relationships" says "list": a word for reading.
    Description, as the server wrote it
    Lists the SMI reference set of relationships.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true
  • smi_list_statusesLists the SMI reference set of statuses.No findings

    Why it is in this group

    • The name "smi_list_statuses" says "list": a word for reading.
    Description, as the server wrote it
    Lists the SMI reference set of statuses.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: true

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 0.1.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http smi-aware-assistant https://mcp.smiaware.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__smi-aware-assistant__smi_get_cowork_instructions",
      "mcp__smi-aware-assistant__smi_list_deep_reports",
      "mcp__smi-aware-assistant__smi_get_deep_report",
      "mcp__smi-aware-assistant__smi_list_exports",
      "mcp__smi-aware-assistant__smi_get_export",
      "mcp__smi-aware-assistant__smi_list_projects",
      "mcp__smi-aware-assistant__smi_list_products",
      "mcp__smi-aware-assistant__smi_list_platforms",
      "mcp__smi-aware-assistant__smi_list_statuses",
      "mcp__smi-aware-assistant__smi_list_relationships",
      "mcp__smi-aware-assistant__smi_get_report_findings",
      "mcp__smi-aware-assistant__smi_get_deep_report_releases",
      "mcp__smi-aware-assistant__smi_get_export_releases",
      "mcp__smi-aware-assistant__fetch",
      "mcp__smi-aware-assistant__smi_analyze",
      "mcp__smi-aware-assistant__smi_get_subject"
    ],
    "ask": [
      "mcp__smi-aware-assistant__onboarding_next_step",
      "mcp__smi-aware-assistant__verify_access",
      "mcp__smi-aware-assistant__submit_contact_request",
      "mcp__smi-aware-assistant__smi_create_deep_report",
      "mcp__smi-aware-assistant__smi_submit_deep_reports",
      "mcp__smi-aware-assistant__smi_request_upload_url",
      "mcp__smi-aware-assistant__smi_confirm_upload",
      "mcp__smi-aware-assistant__smi_create_export",
      "mcp__smi-aware-assistant__smi_submit_exports",
      "mcp__smi-aware-assistant__smi_check_order_complete",
      "mcp__smi-aware-assistant__search",
      "mcp__smi-aware-assistant__smi_add_subject_address",
      "mcp__smi-aware-assistant__smi_add_subject_phone",
      "mcp__smi-aware-assistant__smi_add_subject_email",
      "mcp__smi-aware-assistant__smi_add_subject_alias",
      "mcp__smi-aware-assistant__smi_add_subject_surname",
      "mcp__smi-aware-assistant__smi_add_subject_url",
      "mcp__smi-aware-assistant__smi_add_subject_employer",
      "mcp__smi-aware-assistant__smi_add_subject_employee",
      "mcp__smi-aware-assistant__smi_add_subject_employee_url",
      "mcp__smi-aware-assistant__smi_add_subject_education",
      "mcp__smi-aware-assistant__smi_add_subject_relationship",
      "mcp__smi-aware-assistant__smi_add_subject_relationship_url",
      "mcp__smi-aware-assistant__smi_update_subject"
    ],
    "deny": []
  }
}

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 smi-aware-assistant. Review it before you use it.