# study.vela/corpus (remote · vela.study)

Read-only MCP access to Vela's corpus of human experience: cited passages, coordinates, reading path

- Trust score: 86/100 (high trust)
- Change this week: 0
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `vela.study`: 86/100 (this document), [markdown](https://verifymcp.io/servers/study-vela-corpus/vela.md), [page](https://verifymcp.io/servers/study-vela-corpus/vela)

## Channel facts

- Endpoint: `https://vela.study/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.1.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-11-05.

- **Endpoint Security**: 80/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - 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**: 71/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1392 tokens (~139/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 100/100
  - No destabilizing schema changes in the last 30 days.
- **Tool Coverage**: 94/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 79% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the study.vela/corpus MCP server?

study.vela/corpus is a hosted endpoint at https://vela.study/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 study-vela-corpus 'https://vela.study/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "study-vela-corpus": {
      "url": "https://vela.study/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "study-vela-corpus": {
      "type": "http",
      "url": "https://vela.study/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.study-vela-corpus]
url = "https://vela.study/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "study-vela-corpus": {
      "type": "remote",
      "url": "https://vela.study/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add study-vela-corpus --url 'https://vela.study/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  study-vela-corpus:
    url: "https://vela.study/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "study-vela-corpus": {
      "Transport": "http",
      "Url": "https://vela.study/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add study-vela-corpus -t streamable-http -u 'https://vela.study/mcp'
```

### Other

```json
{
  "mcpServers": {
    "study-vela-corpus": {
      "type": "http",
      "url": "https://vela.study/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-10-25 (score 86, +1)

- [security improvement] Stability: fail → pass

### 2026-10-21 (score 85, +1)

No change was recorded against any check on this day. Stability & Change Management went from 86 to 89.

### 2026-10-10 (score 84, −2)

- [security regression] Stability: pass → fail

### 2026-10-09 (score 86, +1)

- [security] Stability: 0.93 → pass

### 2026-10-06 (score 85, +1)

No change was recorded against any check on this day. Stability & Change Management went from 87 to 93. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-01 (score 0)

- [functional regression] Schema quality: 1262 → 1392
- [functional] Schema quality: excellent → good
- [functional] New tool “vela.library.reading_list”

### 2026-09-28 (score 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-25 (score 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

## MCP tools (10)

### `vela.corpus.query` (~248 tokens)

Ask the corpus by COORDINATE rather than keyword. Filter works by axis weights (e.g. religion ∈ {T,s} AND work ∈ {T,s} returns the God-and-Work source set across genres), controlled themes, qualities/emotions, genre, and free text. Returns card metadata: the one-line claim, themes, coordinates, qualities. FREE and read-only.

[capability: library-extraction-cards · mirrors: POST /api/corpus/query]

Input parameters:

- `axes` (object): Axis → allowed weights. ALL listed axes must match. e.g. {"religion":["T","s"],"work":["T","s"]}
- `genre` (string)
- `include_passages` (boolean): Include theme-anchored passage pointers.
- `limit` (integer)
- `offset` (integer)
- `qualities` (array): Cards carrying ANY of these qualities (emotions, for being-human).
- `text` (string): Substring match over title / author / one-line claim.
- `themes` (array): Cards citing ANY of these controlled themes.
- `topic` (string): Coordinate system to query (topic_configs.slug).

Output parameters:

- `applied` (object)
- `hits` (array)
- `returned` (number)
- `topic` (string)
- `total` (number)
- `truncated` (boolean)

### `vela.library.reading_list` (~130 tokens)

The reading list an emotion or theme page shows: books with one-line claims and a short attributed passage (≤300 chars). Exactly one of emotion or theme. FREE and read-only. Every url carries ?ref=mcp for citation arrival measurement.

[capability: library-extraction-cards · mirrors: GET /api/corpus/reading-list]

Input parameters:

- `emotion` (string): Emotion primary slug (e.g. grief). Mutually exclusive with theme.
- `limit` (integer)
- `theme` (string): Controlled theme slug (e.g. desire). Mutually exclusive with emotion.

Output parameters:

- `kind` (string)
- `limit` (number)
- `ok` (boolean)
- `rows` (array)
- `slug` (string)

### `vela.corpus.list_topics` (~73 tokens)

List the coordinate systems the corpus can be queried through — each with its thesis, axes, and controlled vocabularies. Call this before vela.corpus.query to learn what axes and themes exist. FREE and read-only.

[capability: topic-coordinate-systems · mirrors: GET /api/corpus/topics]

Output parameters:

- `topics` (array)

### `vela.corpus.describe_topic` (~93 tokens)

Describe ONE topic in full — its axes and their operative definitions, its complete controlled theme and quality vocabularies, plus the vocabulary actually IN USE across the corpus with counts. The declared vocabulary and the used vocabulary are different facts; this returns both. FREE and read-only.

[capability: topic-coordinate-systems · mirrors: GET /api/corpus/topics/:slug]

Input parameters:

- `topic` (string)

Output parameters:

- `declared` (object)
- `inUse` (object)

### `vela.corpus.ground_claim` (~111 tokens)

Ground a claim in the corpus: hybrid semantic + theme retrieval over real passages, returning citations with source, passage code, scores, and a SHORT snippet. Use to check whether the corpus supports, complicates or is silent on an assertion. COSTS a small amount (one embedding per call).

[capability: corpus-ingestion-dual-grade · mirrors: internal — lib/audit/retrieve.ts]

Input parameters:

- `claim` (string, required): The claim to ground.
- `limit` (integer)

Output parameters:

- `claim` (string)
- `hits` (array)

### `vela.corpus.witness` (~315 tokens)

Literary Witness Rail (ASN-1577): return passages and one-line claims from Vela's 762-work corpus that illuminate the given themes and/or emotions. Designed for frame-family profile pages — PersonFrame × ProblemFrame × ConditionFrame — to add an inside-out layer (what writers who lived this say) alongside the outside-in portrait the frame join produces. Results carry evidence_grade 'T1' (single-extractor) until PRN-282 lands. FREE for claims; costs one embedding for the passage path.

[capability: literary-witness · mirrors: GET /api/vela/witness]

Input parameters:

- `axes` (object): Axis weight filters for claims only — same format as vela.corpus.query (e.g. {work:["T","s"]}).
- `condition_slug` (string): ConditionFrame entity slug (same reservation as problem_slug).
- `emotions` (array): Emotions to match (e.g. 'shame', 'betrayal', 'grief'). At least one of themes or emotions is required.
- `max_claims` (integer): Max one-line claims to return (default 3).
- `max_passages` (integer): Max passages to return (default 5).
- `problem_slug` (string): ProblemFrame entity slug (echoed in response; reserved for frame_tags[] pre-cache after PA-1153 ID-freeze).
- `themes` (array): Controlled themes from Vela's vocabulary (e.g. 'fairness', 'recognition').

Output parameters:

- `claims` (array)
- `evidence_grade` (string)
- `passages` (array)
- `query` (object)

### `vela.magazine.sequence_path` (~144 tokens)

Ask what this magazine would actually give a reader who said they wanted these things. Returns the REAL sequenced path with the rationale for each piece — the same core the anonymous intake calls, not a preview. Read-only: writes nothing and records no signal.

[capability: adaptive-magazine-engine · mirrors: POST /api/magazine/start-path]

Input parameters:

- `emotions` (array): Emotions the reader is steering by.
- `forms` (array): Article forms to steer by. At least one of emotions/forms is required.
- `limit` (integer): Pieces to return (default 4).
- `property` (string): Property id; defaults to vela.

Output parameters:

- `path` (array)
- `property` (string)

### `vela.magazine.relation_floor` (~104 tokens)

Whether a magazine's corpus can support the adaptive promise its pages render. Reports, per property, each relational dimension's fill AND its separating power — a field present on every piece with one distinct value carries no information, so fill rate alone is misleading. Read-only.

[capability: adaptive-magazine-engine · mirrors: npm run magazine:relation-floor]

Input parameters:

- `property` (string): Restrict to one property id; omit for every property with published pieces.

Output parameters:

- `properties` (array)

### `vela.research.list_studies` (~98 tokens)

List FieldStation research ideas as a library-kit DiscoveryDTO. Each card is a study we can support, not a running participant surface. The honesty gate (limitations, readiness, doNotClaim) is enforced by research:catalog-check — this tool publishes that same file. FREE and read-only. Presence is gated; truth is not.

[capability: study-catalogue · mirrors: GET /api/research/studies]

Output parameters:

- `count` (number)
- `discovery` (object)
- `note` (string)
- `ok` (boolean)
- `problems` (array)
- `sendable` (number)
- `studies` (array)

### `vela.research.get_study` (~76 tokens)

One FieldStation study as a library-kit ProfileDTO plus the raw StudyRecord. Unknown id is an error. FREE and read-only.

[capability: study-catalogue · mirrors: GET /api/research/studies/:id]

Input parameters:

- `id` (string, required): Catalogue id, e.g. S-01.

Output parameters:

- `note` (string)
- `ok` (boolean)
- `problems` (array)
- `profile` (object)
- `study` (object)

## Diagnostics

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

## Score history

- 2026-11-05: 86
- 2026-11-04: 86
- 2026-11-03: 86
- 2026-11-02: 86
- 2026-11-01: 86
- 2026-10-31: 86
- 2026-10-30: 86
- 2026-10-29: 86
- 2026-10-28: 86
- 2026-10-27: 86
- 2026-10-26: 86
- 2026-10-25: 86
- 2026-10-24: 85
- 2026-10-23: 85
- 2026-10-22: 85
- 2026-10-21: 85
- 2026-10-20: 84
- 2026-10-19: 84
- 2026-10-18: 84
- 2026-10-17: 84
- 2026-10-16: 84
- 2026-10-15: 84
- 2026-10-14: 84
- 2026-10-13: 84
- 2026-10-12: 84
- 2026-10-10: 84
- 2026-10-09: 86
- 2026-10-06: 85
- 2026-10-04: 84
- 2026-10-03: 84

## Common questions

### What is the study.vela/corpus MCP server?

study.vela/corpus is an MCP server listed in the public MCP registry as study.vela/corpus. Read-only MCP access to Vela's corpus of human experience: cited passages, coordinates, reading path. This page covers its hosted endpoint (https://vela.study/mcp).

### Is the study.vela/corpus MCP server safe to use?

study.vela/corpus scores 86 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 study.vela/corpus MCP server expose?

study.vela/corpus exposes 10 tools: vela.corpus.query, vela.library.reading_list, vela.corpus.list_topics, vela.corpus.describe_topic, vela.corpus.ground_claim, and 5 more. Their descriptions and schemas cost roughly 1,392 tokens of context every time the server is loaded.

### Does the study.vela/corpus MCP server require authentication?

No. We connected to study.vela/corpus without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the study.vela/corpus MCP server still maintained?

study.vela/corpus 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.

## Links

- Remote endpoint: https://vela.study/mcp
- Repository: https://github.com/people-analyst/vela
- Website: https://vela.study/
- Changelog RSS feed: https://verifymcp.io/servers/study-vela-corpus/vela.xml
- Changelog JSON feed: https://verifymcp.io/servers/study-vela-corpus/vela.json
- HTML version of this page: https://verifymcp.io/servers/study-vela-corpus/vela
