Safe Merchant Solutions Assistant

Safe Merchant Solutions assistant: search services and knowledge, and request a contact.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
98%
Naming quality
96%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~779Tokens (tool definitions)
~1.2 KBTypical response size
Moderate attention impact (0.61% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "sms-assistant": {
      "url": "https://walnbot.safemerchantsolutions.com/mcp/sms-assistant"
    }
  }
}

Remote endpoints

https://walnbot.safemerchantsolutions.com/mcp/sms-assistantstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search(query, topK)

Search this knowledge base for content relevant to a natural-language query. Returns the closest-matching snippets with their source, not an exhaustive list.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "The natural-language query to search for.",
      "type": "string"
    },
    "topK": {
      "description": "Maximum number of results to return (1–20).",
      "type": "integer",
      "default": 8
    }
  },
  "required": [
    "query"
  ]
}
🟢list_services(filter, limit, offset)

List this business's services from its extracted catalogue. This is a complete, enumerable list with a total count — unlike `services`, which is a semantic search returning only the closest matches. Use `filter` to narrow by name and `offset` to page.

Input Schema

{
  "type": "object",
  "properties": {
    "filter": {
      "description": "Optional words to narrow the list; case-insensitive. Each word must appear in the name or summary, in any order — so fewer, more distinctive words match more. Omit it to list the whole catalogue.",
      "type": [
        "string",
        "null"
      ],
      "default": null
    },
    "limit": {
      "description": "How many to return (1-100). Default 25.",
      "type": "integer",
      "default": 25
    },
    "offset": {
      "description": "How many to skip. Pass the nextOffset from the previous call to get the next page.",
      "type": "integer",
      "default": 0
    }
  }
}
🟢get_service(name)

Look up one service by name, as returned by list_services, with a short excerpt of the page describing it. If no such service exists this says so plainly and suggests the nearest names — treat that as authoritative: the business does not offer it.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "description": "The service name, exactly as returned by list_services. Matching is case-insensitive.",
      "type": "string"
    }
  },
  "required": [
    "name"
  ]
}
🟢services(query, topK)

Find service offerings relevant to a natural-language query. Returns the closest matches, not a complete list — use `list_services` for the complete catalogue.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "What the user wants — describe the service they're looking for.",
      "type": "string"
    },
    "topK": {
      "description": "Maximum number of results to return (1–20).",
      "type": "integer",
      "default": 8
    }
  },
  "required": [
    "query"
  ]
}
🟡submit_contact(what_is_your_name, what_is_your_phone_number_include_country_code, can_you_provide_your_whatsapp_or_telegram_for_easier_communicati)

Get someone from safe merchant solutions to contact you. At least one of these is required: what_is_your_phone_number_include_country_code, can_you_provide_your_whatsapp_or_telegram_for_easier_communicati. Ask for the others as well and include any the visitor is happy to give — only the group as a whole is mandatory, so never refuse to submit over one they declined.

Input Schema

{
  "type": "object",
  "properties": {
    "what_is_your_name": {
      "type": "string",
      "description": "What is your name?"
    },
    "what_is_your_phone_number_include_country_code": {
      "type": "string",
      "description": "What is your phone number ? (include country code) Always offer this, even after can_you_provide_your_whatsapp_or_telegram_for_easier_communicati has been given — at that point it is optional, so take it if the visitor is willing and move on if they are not."
    },
    "can_you_provide_your_whatsapp_or_telegram_for_easier_communicati": {
      "type": "string",
      "description": "Can you provide your whatsapp or telegram for easier communication? Always offer this, even after what_is_your_phone_number_include_country_code has been given — at that point it is optional, so take it if the visitor is willing and move on if they are not."
    }
  },
  "required": [
    "what_is_your_name"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools