Sign Customiser

Discovery

search_docs

read

Search Sign Customiser documentation

Copy page

Look up how Sign Customiser documents something, rather than inferring it from a tool result.

Overview

Searches the published Sign Customiser API and connector reference and returns matching sections with their title, a short excerpt and the URL the section is documented at. It exists so an assistant can look up an enum values, a pricing-model rule, an operation required scope or an error code instead of guessing. It reads published documentation rather than the merchant Store, requires no scope beyond a valid connection, returns no Store data and has no side effects.

Permission

Needs no permission beyond a connected store.

Annotations

readOnlyHinttrue
destructiveHintfalse
idempotentHinttrue
openWorldHinttrue

Prerequisites

  • A valid connection. No scope is required.

Arguments

querystringrequired

The words to look for. Matching is on term overlap against section titles, document names and body text, so a short phrase of the words you expect to appear works better than a question.

limitinteger

How many sections to return, between 1 and 20. Defaults to 5.

Result

At most `limit` sections, most relevant first, each with an excerpt truncated to 400 characters and the public URL of the page it came from. A query that matches nothing returns an empty list rather than unrelated sections.

request_idstringalways present
storeobjectalways present
store.idintegeralways present
store.namestringalways present
querystringalways present

The query that was searched, echoed back.

resultsarray of objectalways present

The matching sections, most relevant first.

results[].titlestringalways present
results[].sectionstringalways present

The document the section belongs to.

results[].excerptstringalways present

The opening of the section, at most 400 characters.

results[].urlstringalways present

Where the section is published.

Error cases

internal_error

The reference artefact is not present in this deployment. Quote request_id when reporting it; no argument change will help.

validation_failed

query was empty or longer than 200 characters. Send a short phrase of the words you expect in the documentation.

Look up how idempotent writes are retried

tools/call
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "search_docs",
    "arguments": {
      "query": "retry writes with idempotency",
      "limit": 1
    }
  }
}
result
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "structuredContent": {
      "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t",
      "store": {
        "id": 12,
        "name": "Demo Signs"
      },
      "query": "retry writes with idempotency",
      "results": [
        {
          "title": "Retry writes with idempotency",
          "section": "Errors and retries",
          "excerpt": "Send an Idempotency-Key header on every write. Retrying the identical request with the same key replays the original response instead of executing again.",
          "url": "https://www.signcustomiser.com/help/api/guides/errors-and-retries/"
        }
      ]
    }
  }
}

An empty query (error)

tools/call
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "search_docs",
    "arguments": {
      "query": ""
    }
  }
}
result
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "isError": true,
    "structuredContent": {
      "error": {
        "code": "validation_failed",
        "title": "Validation failed",
        "detail": "The query field is required.",
        "recovery": "Correct every field listed in errors, using its pointer to locate the value and allowed_values where one is given, then call the tool again.",
        "pointer": "/query"
      }
    }
  }
}