# Arthur Online MCP by usefulapi (remote · arthur-online.usefulapi.io)

Read Arthur properties, units and tenancies; track maintenance and add tasks or notes.

- Trust score: 18/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `arthur-online.usefulapi.io`: 18/100 (this document), [markdown](https://verifymcp.io/servers/io-usefulapi-arthur-online/arthur-online.md), [page](https://verifymcp.io/servers/io-usefulapi-arthur-online/arthur-online)

## Channel facts

- Endpoint: `https://arthur-online.usefulapi.io/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.6.3`

## 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-11-05.

- **Endpoint Security**: 46/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.
  - HTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 0/100
  - Transport check failed: declared streamable-http, but the endpoint redirected instead of responding directly.
- **Schema Quality & AI Usability**: 0/100
  - Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Tool Safety**: 0/100
  - Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Capabilities**: 0/100
  - Capabilities not yet verified: we couldn't read the endpoint's capabilities.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the Arthur Online MCP by usefulapi server?

Arthur Online MCP by usefulapi is a hosted endpoint at https://arthur-online.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http io-usefulapi-arthur-online 'https://arthur-online.usefulapi.io/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "io-usefulapi-arthur-online": {
      "url": "https://arthur-online.usefulapi.io/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "io-usefulapi-arthur-online": {
      "type": "http",
      "url": "https://arthur-online.usefulapi.io/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.io-usefulapi-arthur-online]
url = "https://arthur-online.usefulapi.io/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-usefulapi-arthur-online": {
      "type": "remote",
      "url": "https://arthur-online.usefulapi.io/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add io-usefulapi-arthur-online --url 'https://arthur-online.usefulapi.io/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  io-usefulapi-arthur-online:
    url: "https://arthur-online.usefulapi.io/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "io-usefulapi-arthur-online": {
      "Transport": "http",
      "Url": "https://arthur-online.usefulapi.io/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add io-usefulapi-arthur-online -t streamable-http -u 'https://arthur-online.usefulapi.io/mcp'
```

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-arthur-online": {
      "type": "http",
      "url": "https://arthur-online.usefulapi.io/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-11-02 (score 18, −46)

- [security regression] Endpoint reachability: reachable → not serving MCP
- [security regression] Stability: 0.07 → unverified
- [security regression] Tool safety: pass → unverified
- [security regression] Authorization: pass → unverified
- [functional regression] Schema quality: 100 → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified

### 2026-10-31 (score 64, +4)

- [security improvement] Authorization: partial → pass
- [functional improvement] Stability: unverified → 0.03
- [functional improvement] MCP protocol: fail → pass
- [functional] New prompt “check_property_certificate_expiry_dates”
- [functional] New prompt “create_a_maintenance_task_for_a_selected_unit”
- [functional] New prompt “review_overdue_rent_transactions”
- [functional] New prompt “review_vacant_units_and_upcoming_availability”
- [functional] MCP protocol version: 2025-06-18 → 2025-11-25
- [functional] Server version: 1.2.0 → 1.4.0
- [functional] Server version: 1.1.0 → 1.2.0
- [functional] Server version: 1.0.0 → 1.1.0

### 2026-10-30 (score 60)

First indexed and scored.

## MCP tools (20)

### `arthur_list_properties` (~204 tokens)

List properties

Properties, their addresses, type, owner and managing agent. GET /v2/properties. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `_q` (string)
- `city` (string)
- `direction` (string): Sort direction (default ASC when sorting).
- `full_address` (string)
- `letting_agent_id` (integer): Arthur numeric record id, from the corresponding list tool.
- `limit` (integer): Records per page, 1–100 (default 20).
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `postcode` (string)
- `property_owner_id` (integer): Arthur numeric record id, from the corresponding list tool.
- `property_type` (string)
- `sort` (string): Vendor field to sort by, for example id or created.
- `unit_status` (string)

### `arthur_get_property` (~48 tokens)

Get property

Properties, their addresses, type, owner and managing agent. GET /v2/properties/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_units` (~223 tokens)

List units

Units, vacancy, availability, unit type, market rent and location. GET /v2/units. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `_q` (string)
- `available_move_in_date` (string): Calendar date in YYYY-MM-DD format.
- `available_move_out_date` (string): Calendar date in YYYY-MM-DD format.
- `city` (string)
- `direction` (string): Sort direction (default ASC when sorting).
- `limit` (integer): Records per page, 1–100 (default 20).
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `postcode` (string)
- `sort` (string): Vendor field to sort by, for example id or created.
- `unit_owner_id` (integer): Arthur numeric record id, from the corresponding list tool.
- `unit_ref` (string)
- `unit_status` (string)
- `unit_vacant` (boolean)

### `arthur_get_unit` (~50 tokens)

Get unit

Units, vacancy, availability, unit type, market rent and location. GET /v2/units/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_tenancies` (~257 tokens)

List tenancies

Tenancies, their status, dates, unit and rent details. GET /v2/tenancies. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `_q` (string)
- `assigned_to` (integer): Arthur numeric record id, from the corresponding list tool.
- `direction` (string): Sort direction (default ASC when sorting).
- `end_date` (string): Calendar date in YYYY-MM-DD format.
- `full_address` (string)
- `limit` (integer): Records per page, 1–100 (default 20).
- `modifiedFrom` (string): Calendar date in YYYY-MM-DD format.
- `modifiedTo` (string): Calendar date in YYYY-MM-DD format.
- `moveInDate` (string): Calendar date in YYYY-MM-DD format.
- `moveOutDate` (string): Calendar date in YYYY-MM-DD format.
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `sort` (string): Vendor field to sort by, for example id or created.
- `start_date` (string): Calendar date in YYYY-MM-DD format.
- `status` (string)

### `arthur_get_tenancy` (~52 tokens)

Get tenancy

Tenancies, their status, dates, unit and rent details. GET /v2/tenancies/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_tenants` (~199 tokens)

List tenants

Tenant contact details and their linked tenancy; invitation codes are removed. GET /v2/tenants. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `direction` (string): Sort direction (default ASC when sorting).
- `email` (string)
- `full_address` (string)
- `limit` (integer): Records per page, 1–100 (default 20).
- `mobile` (string)
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `property_id` (integer): Arthur numeric record id, from the corresponding list tool.
- `sort` (string): Vendor field to sort by, for example id or created.
- `tenancy_id` (integer): Arthur numeric record id, from the corresponding list tool.
- `unit_id` (integer): Arthur numeric record id, from the corresponding list tool.

### `arthur_get_tenant` (~51 tokens)

Get tenant

Tenant contact details and their linked tenancy; invitation codes are removed. GET /v2/tenants/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_tasks` (~233 tokens)

List tasks

Maintenance tasks, status, descriptions, due dates, assigned managers and tags. GET /v2/tasks. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `_q` (string)
- `assigned_to` (string)
- `created_date_from` (string): Calendar date in YYYY-MM-DD format.
- `created_date_to` (string): Calendar date in YYYY-MM-DD format.
- `direction` (string): Sort direction (default ASC when sorting).
- `due_date_from` (string): Calendar date in YYYY-MM-DD format.
- `due_date_to` (string): Calendar date in YYYY-MM-DD format.
- `limit` (integer): Records per page, 1–100 (default 20).
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `sort` (string): Vendor field to sort by, for example id or created.
- `status` (string): Comma-separated task statuses.
- `tags` (string): Comma-separated tags.
- `task_type` (string)

### `arthur_get_task` (~50 tokens)

Get task

Maintenance tasks, status, descriptions, due dates, assigned managers and tags. GET /v2/tasks/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_workorders` (~206 tokens)

List workorders

Contractor work orders, status, title, costs, dates and linked maintenance task. GET /v2/workorders. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `_q` (string)
- `contractor` (string)
- `direction` (string): Sort direction (default ASC when sorting).
- `due_date` (string): Calendar date in YYYY-MM-DD format.
- `emergency` (boolean)
- `limit` (integer): Records per page, 1–100 (default 20).
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `quote_required` (boolean)
- `ref` (string)
- `sort` (string): Vendor field to sort by, for example id or created.
- `start_date` (string): Calendar date in YYYY-MM-DD format.
- `status` (string)
- `title` (string)

### `arthur_get_workorder` (~53 tokens)

Get workorder

Contractor work orders, status, title, costs, dates and linked maintenance task. GET /v2/workorders/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_transactions` (~209 tokens)

List transactions

Read financial transactions and rent charges, with payment status and dates; never posts money. GET /v2/transactions. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `date_from` (string): Calendar date in YYYY-MM-DD format.
- `date_to` (string): Calendar date in YYYY-MM-DD format.
- `direction` (string): Sort direction (default ASC when sorting).
- `limit` (integer): Records per page, 1–100 (default 20).
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `sort` (string): Vendor field to sort by, for example id or created.
- `statement` (string)
- `status` (string)
- `transaction_date_from` (string): Calendar date in YYYY-MM-DD format.
- `transaction_date_to` (string): Calendar date in YYYY-MM-DD format.
- `transaction_type` (string)

### `arthur_get_transaction` (~53 tokens)

Get transaction

Read financial transactions and rent charges, with payment status and dates; never posts money. GET /v2/transactions/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_invoices` (~191 tokens)

List invoices

Read contractor invoices, amounts, outstanding balances and payment status; never pays or changes an invoice. GET /v2/invoices. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `completed_date` (string): Calendar date in YYYY-MM-DD format.
- `direction` (string): Sort direction (default ASC when sorting).
- `limit` (integer): Records per page, 1–100 (default 20).
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `paid_date` (string): Calendar date in YYYY-MM-DD format.
- `sort` (string): Vendor field to sort by, for example id or created.
- `status` (string)
- `submitted` (boolean)
- `workorder_id` (integer): Arthur numeric record id, from the corresponding list tool.

### `arthur_get_invoice` (~55 tokens)

Get invoice

Read contractor invoices, amounts, outstanding balances and payment status; never pays or changes an invoice. GET /v2/invoices/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_list_certificates` (~122 tokens)

List certificates

Property and unit certificates, type, expiry date and status. GET /v2/certificates. Returns data plus the vendor pagination; this is one page, not the whole portfolio.

Input parameters:

- `direction` (string): Sort direction (default ASC when sorting).
- `limit` (integer): Records per page, 1–100 (default 20).
- `page` (integer): Results page (default 1). Read pagination.pageCount before requesting the next page.
- `sort` (string): Vendor field to sort by, for example id or created.

### `arthur_get_certificate` (~49 tokens)

Get certificate

Property and unit certificates, type, expiry date and status. GET /v2/certificates/{id}.

Input parameters:

- `id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_create_unit_task` (~172 tokens)

Create maintenance task on a unit

WRITE: create a maintenance task associated with a unit when the user requests it. Confirm the intended unit and task details first. POST /v2/units/{unit_id}/tasks. No files, tenant invitations or financial changes; creates once and is never retried automatically.

Input parameters:

- `api_notes` (string)
- `assigned_managers` (array)
- `description` (string, required)
- `due_date` (string): Calendar date in YYYY-MM-DD format.
- `due_time` (string): Due time HH:MM in the Arthur account's local time.
- `emergency` (boolean)
- `private` (boolean)
- `tags` (array)
- `task_type` (string)
- `unit_id` (integer, required): Arthur numeric record id, from the corresponding list tool.

### `arthur_add_task_note` (~97 tokens)

Add note to maintenance task

WRITE: add a note to an existing maintenance task when the user requests it. Confirm the intended task and note first. POST /v2/tasks/{task_id}/notes. This creates a note once; it is not a tenant message and is never retried automatically.

Input parameters:

- `content` (string, required)
- `tags` (array)
- `task_id` (integer, required): Arthur numeric record id, from the corresponding list tool.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/io-usefulapi-arthur-online/arthur-online#diagnostics

## Score history

- 2026-11-05: 18
- 2026-11-04: 18
- 2026-11-03: 18
- 2026-11-02: 18
- 2026-11-01: 64
- 2026-10-31: 64
- 2026-10-30: 60

## Common questions

### What is the Arthur Online MCP by usefulapi server?

Arthur Online MCP by usefulapi is listed in the public MCP registry as io.usefulapi/arthur-online. Read Arthur properties, units and tenancies; track maintenance and add tasks or notes. This page covers its hosted endpoint (https://arthur-online.usefulapi.io/mcp).

### Is the Arthur Online MCP by usefulapi server safe to use?

Arthur Online MCP by usefulapi scores 18 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Arthur Online MCP by usefulapi server expose?

Arthur Online MCP by usefulapi exposes 20 tools: arthur_list_properties, arthur_get_property, arthur_list_units, arthur_get_unit, arthur_list_tenancies, and 15 more. Their descriptions and schemas cost roughly 2,574 tokens of context every time the server is loaded.

### Does the Arthur Online MCP by usefulapi server require authentication?

Its publisher declares no required credentials for Arthur Online MCP by usefulapi. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.

### Is the Arthur Online MCP by usefulapi server still maintained?

Arthur Online MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the Arthur Online MCP by usefulapi server?

VerifyMCP ran 4 checks on Arthur Online MCP by usefulapi, covering TLS certificate, HSTS header, DNSSEC and Transport. 7 items could not be completed, a gap on our side rather than a finding about Arthur Online MCP by usefulapi: Authorization, HTTPS, Schema quality, Stability and 3 more. 5 categories score 0 for that reason, because we only credit what we can confirm. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://arthur-online.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/arthur-online/
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-arthur-online/arthur-online.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-arthur-online/arthur-online/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/io-usefulapi-arthur-online/arthur-online.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-arthur-online/arthur-online
