# Resistance Tools (remote · app.resistance.dog)

MCP tools for TON Sites, TON DNS and TON Storage.

- Trust score: 54/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `app.resistance.dog`: 54/100 (this document), [markdown](https://verifymcp.io/servers/tonresistor-resistance-tools-mcp/api-mcp.md), [page](https://verifymcp.io/servers/tonresistor-resistance-tools-mcp/api-mcp)

## Channel facts

- Endpoint: `https://app.resistance.dog/api/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.2.6`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (mcp.access.revoke_consent).
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 33/100
  - 0% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (fair).
  - Tool/resource definitions use about 1948 tokens (~38/item across 51 items; 46 tools + 5 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 67/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http tonresistor-resistance-tools-mcp https://app.resistance.dog/api/mcp
```

### Codex

```toml
[mcp_servers.tonresistor-resistance-tools-mcp]
url = "https://app.resistance.dog/api/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "tonresistor-resistance-tools-mcp": {
      "type": "remote",
      "url": "https://app.resistance.dog/api/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add tonresistor-resistance-tools-mcp --url https://app.resistance.dog/api/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  tonresistor-resistance-tools-mcp:
    url: "https://app.resistance.dog/api/mcp"
```

### Other

```json
{
  "mcpServers": {
    "tonresistor-resistance-tools-mcp": {
      "type": "http",
      "url": "https://app.resistance.dog/api/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 54, −1)

- [security] Tool “dns.send_record_tx” rewrote its description, which is the text the model reads
- [security] Tool “sites.send_link_tx” rewrote its description, which is the text the model reads
- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 0.2.4 → 0.2.6
- [functional] Server version: 0.2.2 → 0.2.4

### 2026-08-02 (score 55)

First indexed and scored.

## MCP tools (46)

### `auth.status` (~16 tokens)

MCP auth status

Return whether this MCP session is authenticated.

### `auth.policy` (~25 tokens)

MCP auth and safety policy

Return public MCP auth flows, scopes, safety controls, retention, and confirmation rules.

### `wallet.me` (~18 tokens)

Wallet context

Return the authenticated MCP owner/actor wallet context.

### `mcp.access.list` (~25 tokens)

List MCP access

List MCP consents and redacted active sessions for the authenticated owner wallet.

### `mcp.audit.list` (~52 tokens)

List MCP audit events

List recent redacted MCP audit events for the authenticated owner wallet.

Input parameters:

- `limit` (integer)
- `method` (string)
- `resultStatus` (string)
- `since` (string)

### `mcp.audit.summary` (~42 tokens)

Summarize MCP audit events

Return owner-scoped aggregate MCP audit metrics without raw headers or request bodies.

Input parameters:

- `topMethodsLimit` (integer)
- `windowHours` (integer)

### `mcp.access.revoke_consent` (~45 tokens)

Revoke MCP consent

Revoke one MCP consent by id and invalidate matching access/refresh tokens.

Input parameters:

- `confirmConsentId` (string, required)
- `consentId` (string, required)

### `sites.list` (~17 tokens)

List TON Sites

List TON Sites owned by the authorized wallet.

### `sites.get_content` (~27 tokens)

Get site template content

Read the stored template/content metadata for an owned site.

Input parameters:

- `site` (string, required)

### `sites.send_link_tx` (~41 tokens)

Create TON Site confirmation link

Validate indexed ownership and return one HTTPS page where the user reviews and confirms the exact TON DNS site transaction with TON Connect.

Input parameters:

- `site` (string, required)

### `payments.send_tx` (~38 tokens)

Create product payment confirmation link

Create a backend-owned payment invoice and return one HTTPS page where the user reviews and confirms it with TON Connect.

Input parameters:

- `action` (string, required)

### `sites.list_releases` (~25 tokens)

List site releases

List retained releases for an owned site.

Input parameters:

- `site` (string, required)

### `sites.publish_files` (~35 tokens)

Publish site files

Deploy or update an owned TON Site from explicit file contents.

Input parameters:

- `files` (array, required)
- `site` (string, required)

### `sites.publish_template` (~40 tokens)

Publish template site

Validate, render, and publish a template-based TON Site.

Input parameters:

- `content`
- `site` (string, required)
- `template` (string, required)

### `sites.rollback` (~42 tokens)

Rollback site

Rollback an owned TON Site to a retained release.

Input parameters:

- `confirmSite` (string, required)
- `releaseId` (string, required)
- `site` (string, required)

### `sites.delete` (~33 tokens)

Delete site

Delete an owned TON Site deployment and served files.

Input parameters:

- `confirmSite` (string, required)
- `site` (string, required)

### `deployments.list` (~16 tokens)

List deployments

List retained deployments across the owner's sites.

### `dns.lookup` (~28 tokens)

Lookup TON DNS name

Lookup public TON DNS status and records for a .ton name.

Input parameters:

- `name` (string, required)

### `domains.list` (~18 tokens)

List owned domains

List .ton domains owned by the authorized wallet.

### `domains.records` (~25 tokens)

Read domain records

Read DNS records for an owned .ton domain.

Input parameters:

- `domain` (string, required)

### `dns.send_record_tx` (~76 tokens)

Create DNS record confirmation link

Revalidate indexed ownership and return one HTTPS page where the user reviews and confirms the exact TON DNS record transaction.

Input parameters:

- `domain` (string, required)
- `keyName` (string)
- `kind` (string, required)
- `rawCategory` (string)
- `value` (string|null)
- `valueKind`

### `dns.send_name_tx` (~44 tokens)

Create TON DNS name confirmation link

Return one HTTPS page for a validated .ton mint, auction bid, or expired-name release transaction.

Input parameters:

- `action` (string, required)
- `domain` (string, required)

### `dns.send_renew_tx` (~41 tokens)

Create TON DNS renewal confirmation link

Revalidate one to four owned .ton names and return one HTTPS page for a single TON Connect multi-message confirmation.

Input parameters:

- `domains` (array, required)

### `subdomains.list_collections` (~36 tokens)

List owned Subdomain collections

List TON Subdomain collections controlled by the authenticated wallet.

Input parameters:

- `cursor` (string)
- `limit` (integer)

### `subdomains.list_items` (~36 tokens)

List owned Subdomain items

List TON Subdomain NFT items owned by the authenticated wallet.

Input parameters:

- `cursor` (string)
- `limit` (integer)

### `subdomains.get_collection` (~33 tokens)

Read Subdomain collection

Read a fresh collection snapshot when the authenticated wallet holds collection or parent rights.

Input parameters:

- `collectionAddress` (string, required)

### `subdomains.get_item` (~30 tokens)

Read owned Subdomain item

Read a Subdomain NFT item owned by the authenticated wallet.

Input parameters:

- `itemAddress` (string, required)

### `subdomains.control` (~30 tokens)

Read Subdomain control state

Read fresh collection authorization and parent-return state for the authenticated wallet.

Input parameters:

- `collectionAddress` (string, required)

### `subdomains.create_collection_tx` (~59 tokens)

Create Subdomain collection confirmation link

Revalidate parent ownership, create collection metadata, and return one HTTPS transaction confirmation page.

Input parameters:

- `minChars` (integer, required)
- `mode` (string, required)
- `parentAddress` (string, required)
- `priceGrid` (array, required)

### `subdomains.mint_tx` (~65 tokens)

Create Subdomain mint confirmation link

Revalidate availability and access, build metadata, and return one HTTPS mint or pending-mint confirmation page.

Input parameters:

- `collectionAddress` (string, required)
- `label` (string, required)
- `parent` (string, required)
- `setWalletToMinter` (boolean)

### `subdomains.collection_action_tx` (~86 tokens)

Create Subdomain action confirmation link

Revalidate current collection or parent rights and return one HTTPS management transaction confirmation page.

Input parameters:

- `accessMode` (string)
- `action` (string, required)
- `allowed` (boolean)
- `collectionAddress` (string, required)
- `label` (string)
- `newAdmin` (string)
- `reserved` (boolean)
- `wallet` (string)

### `subdomains.transfer_item_tx` (~43 tokens)

Create Subdomain transfer confirmation link

Revalidate current NFT ownership and return one HTTPS Subdomain item transfer confirmation page.

Input parameters:

- `itemAddress` (string, required)
- `newOwner` (string, required)

### `subdomains.recovery_tx` (~52 tokens)

Create Subdomain recovery confirmation link

Re-derive an owned collection and return one HTTPS page for its deployment or resolver recovery transaction.

Input parameters:

- `action` (string, required)
- `mode` (string, required)
- `parentAddress` (string, required)

### `media.upload_image` (~38 tokens)

Upload template image

Upload one PNG, JPEG, GIF, or WebP image to the authenticated owner's template media store.

Input parameters:

- `contentBase64` (string, required)

### `storage.list_bags` (~20 tokens)

List TON Storage bags

List TON Storage bags owned by the authorized wallet.

### `storage.bag_details` (~30 tokens)

Read TON Storage bag details

Read metadata and live state for an owned TON Storage bag.

Input parameters:

- `bagId` (string, required)

### `storage.providers` (~36 tokens)

List paid Storage providers

List backend-verified providers compatible with an owned TON Storage bag.

Input parameters:

- `bagId` (string, required)
- `sort` (string)

### `storage.provider_funding_session` (~44 tokens)

Create provider funding session

Freeze a short-lived live provider and shared-balance snapshot for an owned bag.

Input parameters:

- `bagId` (string, required)
- `providerPubkeys` (array, required)

### `storage.provider_funding_preview` (~55 tokens)

Preview provider funding

Calculate exact integer funding and coverage from a live provider session.

Input parameters:

- `bagId` (string, required)
- `proofSpanSeconds` (integer, required)
- `sessionId` (string, required)
- `targetCoverageSeconds` (required)

### `storage.provider_quote` (~59 tokens)

Create provider quote

Create the signed backend quote that will be revalidated before a provider confirmation link is returned.

Input parameters:

- `bagId` (string, required)
- `proofSpanSeconds` (integer, required)
- `sessionId` (string, required)
- `targetCoverageSeconds` (required)

### `storage.provider_operation` (~28 tokens)

Read provider operation

Read and reconcile one paid TON Storage provider operation.

Input parameters:

- `providerOperationId` (string, required)

### `storage.send_bag_link_tx` (~47 tokens)

Create Storage-backed site confirmation link

Validate bag and domain ownership, then return one HTTPS page for the exact TON Storage DNS site transaction.

Input parameters:

- `bagId` (string, required)
- `domain` (string, required)

### `storage.send_provider_tx` (~90 tokens)

Create paid Storage provider confirmation link

Revalidate the live contract, providers, shared balance, and exact amount before returning one HTTPS pin, top-up, stop, or withdraw confirmation page.

Input parameters:

- `acknowledgeOtherProviders` (boolean)
- `action` (string, required)
- `bagId` (string, required)
- `providerPubkey` (string)
- `quoteId` (string)
- `targetCoverageSeconds` (integer)

### `storage.create_bag` (~37 tokens)

Create TON Storage bag

Create and seed a new TON Storage bag from explicit file contents.

Input parameters:

- `files` (array, required)
- `name` (string)

### `storage.pin_bag` (~37 tokens)

Pin TON Storage bag

Pin/import an existing public TON Storage bag by bag id.

Input parameters:

- `bagId` (string, required)
- `name` (string)

### `storage.delete_bag` (~43 tokens)

Delete TON Storage bag

Delete an owned TON Storage bag reference and remove platform-seeded bytes when safe.

Input parameters:

- `bagId` (string, required)
- `confirmBagId` (string, required)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/tonresistor-resistance-tools-mcp/api-mcp#diagnostics

## Score history

- 2026-08-03: 54
- 2026-08-02: 55

## Links

- Remote endpoint: https://app.resistance.dog/api/mcp
- Repository: https://github.com/TONresistor/resistance-tools-mcp
- Changelog RSS feed: https://verifymcp.io/servers/tonresistor-resistance-tools-mcp/api-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/tonresistor-resistance-tools-mcp/api-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/tonresistor-resistance-tools-mcp/api-mcp
