# com.theartofservice/compliance-intelligence (remote · api.theartofservice.com)

Research 723 compliance frameworks, then find the course that helps a buyer act on them.

- Trust score: 62/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-20

## Components

- remote · `api.theartofservice.com`: 62/100 (this document), [markdown](https://verifymcp.io/servers/com-theartofservice-compliance-intelligence/api.md), [page](https://verifymcp.io/servers/com-theartofservice-compliance-intelligence/api)

## Channel facts

- Endpoint: `https://api.theartofservice.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## 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-20.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 20 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - 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**: 74/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2346 tokens (~117/item across 20 items; 20 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 7/100
  - Stability observed for 2 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 83/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 48% 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 com-theartofservice-compliance-intelligence https://api.theartofservice.com/mcp
```

### Codex

```toml
[mcp_servers.com-theartofservice-compliance-intelligence]
url = "https://api.theartofservice.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-theartofservice-compliance-intelligence": {
      "type": "remote",
      "url": "https://api.theartofservice.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-theartofservice-compliance-intelligence --url https://api.theartofservice.com/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-theartofservice-compliance-intelligence:
    url: "https://api.theartofservice.com/mcp"
```

### Other

```json
{
  "mcpServers": {
    "com-theartofservice-compliance-intelligence": {
      "type": "http",
      "url": "https://api.theartofservice.com/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-20 (score 62, 0)

- [security] Tool “agent_list_crosswalk_pairs” rewrote its description, which is the text the model reads
- [functional regression] Tool coverage: 65% → 48%
- [functional regression] Schema quality: 1859 → 2346
- [functional] Server version: Access 723 compliance frameworks, 20,766+ controls, and 345K+ cross-framework mappings.  Query the compliance knowledge graph to research requirements, map controls across frameworks, and analyse coverage gaps. → Access 688 compliance frameworks, 21,539+ controls, and 397K+ cross-framework mappings.  Query the compliance knowledge graph to research requirements, map controls across frameworks, and analyse coverage gaps.
- [functional] New tool “agent_buy_crosswalk”
- [functional] New tool “agent_combined_coverage”
- [functional] New tool “agent_crosswalk_provenance”
- [functional] New tool “agent_crosswalk_refuted”

### 2026-08-19 (score 62, 0)

- [functional regression] Schema quality: 1512 → 1859
- [functional improvement] Tool coverage: 60% → 65%
- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: Access 723 compliance frameworks, 20,400+ controls, and 332K+ cross-framework mappings.  Query the compliance knowledge graph to research requirements, map controls across frameworks, and analyse coverage gaps. → Access 723 compliance frameworks, 20,766+ controls, and 345K+ cross-framework mappings.  Query the compliance knowledge graph to research requirements, map controls across frameworks, and analyse coverage gaps.
- [functional] New tool “agent_coverage_crosswalk”
- [functional] New tool “agent_list_crosswalk_pairs”

### 2026-08-18 (score 62)

First indexed and scored.

## MCP tools (20)

### `agent_search_courses` (~153 tokens)

Search the course catalogue

Find courses by need, framework, role or industry. Free-text search over the catalogue, optionally narrowed to a named standard.

Examples: q='soc 2 evidence collection', q='first 90 days as CISO', q='data governance healthcare', or q='audit preparation' with framework='ISO 27001'.

Returns up to 25 courses with a direct purchase URL. No authentication required.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `framework` (string): Narrow to a standard, e.g. 'SOC 2'
- `limit` (integer)
- `q` (string, required): What the buyer needs to do

### `agent_get_course` (~74 tokens)

Get one course

Full detail for a single course by product id, including every standard it covers and its purchase URL. Use after agent_search_courses to justify a recommendation. No authentication required.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `product_id` (integer, required)

### `agent_courses_for_frameworks` (~144 tokens)

Find courses covering several standards at once

Given two or more standards, returns courses that address ALL of them together, which is what an organisation running overlapping programmes actually needs.

Example: frameworks='SOC 2,ISO 27001' returns courses on running both from one evidence set, rather than one course per standard.

Falls back to reporting which standards have coverage if no single course spans them all. No authentication required.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `frameworks` (string, required): Comma-separated, e.g. 'SOC 2,ISO 27001'
- `limit` (integer)

### `agent_list_course_frameworks` (~65 tokens)

List standards the catalogue covers

Every standard that has courses, with a course count each. Use this to discover valid values for the framework filter before searching. No authentication required.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

### `agent_search_frameworks` (~162 tokens)

Search and list compliance frameworks

Search the compliance knowledge graph for frameworks by name, keyword, or jurisdiction.  Returns framework metadata including name, description, jurisdiction, domain count, control count, and mapping-partner count.  Without a query, returns all frameworks.  Use this as the starting point to discover available frameworks.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `jurisdiction` (string): Filter by jurisdiction (e.g. 'International', 'Australia', 'United States', 'European Union')
- `limit` (integer): Maximum frameworks to return
- `q` (string): Search query to filter by name or keyword (e.g. 'ISO 27001', 'privacy', 'Australian')

### `agent_get_framework` (~83 tokens)

Get detailed information about a compliance framework

Returns comprehensive details about a specific compliance framework: description, jurisdiction, version, domains with control counts, and cross-framework mapping statistics.  Use the exact framework name as returned by agent_search_frameworks.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `name` (string, required)

### `agent_get_framework_controls` (~110 tokens)

Get all controls for a compliance framework

Returns all controls belonging to a framework, optionally filtered by domain.  Each control includes: code, title, description, and domain.  For large frameworks (e.g. NIST SP 800-53 Rev 5), use the domain filter to narrow results.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `domain` (string): Filter controls by domain name
- `name` (string, required)

### `agent_get_control` (~100 tokens)

Get detailed information about a specific control

Returns full details for a single control by its code identifier: title, description, domain, and framework.  Control codes are framework-specific (e.g. 'A.5.1' for ISO 27001, 'AC-1' for NIST 800-53).

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `code` (string, required)

### `agent_get_control_cross_references` (~102 tokens)

Get cross-framework mappings for a control

Returns all controls in other frameworks that map to the given control via MAPS_TO relationships.  This is the core cross-framework mapping capability: use it to find equivalent controls across different compliance frameworks (e.g. NIST 800-53 equivalents of ISO 27001 controls).

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `code` (string, required)

### `agent_cross_framework_map` (~140 tokens)

Map controls between two compliance frameworks

Returns the complete control-to-control mapping between a source and target framework.  Each mapping shows which source control maps to which target control(s).  This enables multi-framework compliance: satisfy one control to cover requirements in both frameworks.  Use exact framework names as returned by agent_search_frameworks.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `source` (string, required): Source framework name (e.g. 'ISO 27001:2022')
- `target` (string, required): Target framework name (e.g. 'NIST Cybersecurity Framework 2.0')

### `agent_coverage_report` (~96 tokens)

Get cross-framework coverage report for a framework

Returns a coverage analysis showing how many controls in the given framework map to controls in every other framework.  Includes total controls, mapped control counts, and coverage percentages per target framework.  Use this to understand which frameworks overlap most and plan multi-framework strategies.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `name` (string, required)

### `agent_search` (~157 tokens)

Full-text search across controls and frameworks

Search the compliance knowledge graph using full-text search.  Type 'controls' searches control titles and descriptions.  Type 'frameworks' searches framework names and descriptions.  Use specific compliance terms for best results (e.g. 'access control', 'encryption at rest', 'data breach notification').

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `limit` (integer): Maximum results to return
- `query` (string, required): Search query (e.g. 'access control', 'encryption at rest')
- `type` (string): Search type: 'controls' for control titles/descriptions, 'frameworks' for framework names/descriptions

### `agent_platform_stats` (~58 tokens)

Get platform statistics

Returns current platform statistics: total framework count, control count, cross-framework mapping count, and domain count.  No authentication required.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

### `agent_pricing_info` (~68 tokens)

Get API pricing and rate limit information

Returns current API pricing tiers, monthly call limits, and (if authenticated) your current month's usage.  Use this to understand costs before making API calls.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

### `agent_coverage_crosswalk` (~210 tokens)

What one framework already evidences of another

Given a framework you already hold and one you are working toward, returns which of the target's controls your existing evidence already covers, which remain as gaps, and the reasoning for every claim.

Example: source='SOC 2', target='ISO 27001:2022'.

Mappings are derived judgements, not text lifted from either standard, and each has survived an adversarial verification pass. Where no mappings exist between the pair, the response says so explicitly rather than reporting zero coverage, because an absence of data is not a coverage of zero.

No authentication required.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `min_confidence` (string): high, medium or low
- `source` (string, required): Framework you already hold, e.g. 'SOC 2'
- `target` (string, required): Framework you are working toward, e.g. 'ISO 27001:2022'

### `agent_crosswalk_provenance` (~138 tokens)

How do you know this: the grounding behind a crosswalk's claims

For any released framework pair, return the reasoning and the provenance behind its mappings: what document each control was verified against, when, who judged the mapping, on what date, and whether it survived an adversarial pass that argued against it.

Free, no authentication. A claim you cannot check is worth nothing, so the checking is not the paid part.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `limit` (integer)
- `source` (string, required)
- `target` (string, required)

### `agent_crosswalk_refuted` (~129 tokens)

What was claimed and did not hold, with the reason

The mappings that were proposed for a pair and then refuted, each with why it failed. Refuted mappings are kept in the graph rather than deleted, so what was rejected is as inspectable as what survived.

This is the check worth running on any coverage claim: a crosswalk that never rejects anything is not being judged.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `limit` (integer)
- `source` (string, required)
- `target` (string, required)

### `agent_combined_coverage` (~118 tokens)

What everything you already hold covers, together

Give the frameworks an organisation already holds and one it needs. Returns what they cover TOGETHER, what each one adds that the others do not, and what none of them reaches.

No organisation holds one certification, and the marginal number is the one worth knowing: a second and third certification often add far less than expected.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

Input parameters:

- `holds` (string, required)
- `target` (string, required)

### `agent_buy_crosswalk` (~102 tokens)

Get a checkout link for a crosswalk report

Returns a payment link for the crosswalk between two frameworks. Released pairs are delivered immediately on payment; any other pair is built to order at the same price.

This returns a LINK, it does not take payment. An agent hands the link to whoever it is acting for. No card details pass through the agent.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

### `agent_list_crosswalk_pairs` (~137 tokens)

Framework pairs with a released coverage crosswalk

Lists the framework pairs that have a reviewed, signed-off coverage crosswalk, with the coverage figure for each. Call this before agent_coverage_crosswalk to find out which pairs return a number.

A pair that is not listed here has not been through review. Asking for it returns an honest 'not released' rather than an unreviewed percentage. Any pair across the any framework pair in the graph can be built to order, one pair being one unit of work.

No authentication required.

\### Responses:

\**200**: Successful Response (Success Response)
Content-Type: application/json

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-theartofservice-compliance-intelligence/api#diagnostics

## Score history

- 2026-08-20: 62
- 2026-08-19: 62
- 2026-08-18: 62

## Links

- Remote endpoint: https://api.theartofservice.com/mcp
- Repository: https://github.com/GJB65/compliance-mcp-skill-example
- Website: https://compliance.theartofservice.com/developers
- Changelog RSS feed: https://verifymcp.io/servers/com-theartofservice-compliance-intelligence/api.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-theartofservice-compliance-intelligence/api.json
- HTML version of this page: https://verifymcp.io/servers/com-theartofservice-compliance-intelligence/api
