Skip to main content
Glama
README.md
> [!WARNING]
> **DEPRECATED.** This package is superseded by the **Skill Heaven Claude Code
> plugin**, which bundles the summon MCP server directly — nothing to install
> separately. See
> [`gaia-research/gaia-skill-heaven`](https://github.com/gaia-research/gaia-skill-heaven).
>
> The engine that used to live in this repo now lives at `packages/skill-summon`
> in that monorepo, and ships esbuild-bundled straight into the plugin
> (`plugins/skill-heaven/mcp/skill-summon.mjs`) — no npx, no sibling checkout,
> no external binary, no runtime dependencies.
>
> **The published packages stay installable.** `@gaia-research/mcp` and
> `skill-hell` are not being unpublished — existing `install.sh` copies and
> version-pinned installs keep working. Deprecated means *don't start new work
> here*, not *it broke*. New work should target the plugin instead.
>
> See [`DEPRECATION.md`](DEPRECATION.md) for the full closeout notes, including
> the pending `npm deprecate` steps.

# Gaia MCP

Agent-native Gaia Registry discovery, evidence inspection, and temporary skill
summoning for [Gaia Skill Tree](https://github.com/gaia-research/gaia-skill-tree).

> **Status:** [`@gaia-research/mcp@0.4.0`](https://github.com/gaia-research/gaia-mcp/releases/tag/mcp-v0.4.0)
> is published. It is a working prototype: its current package interface is
> usable, while later Heaven/Summon profile work remains separate.

Gaia MCP consumes public Registry data; it does not own or mutate the Registry.

## Current package surface

The published **rich Registry/Bond package surface** has four tools:

| Tool | Current purpose |
|---|---|
| `gaia_search` | Find generic and Named Skills by task and constraints. |
| `gaia_inspect` | Return an evidence-backed skill dossier. |
| `summon` | Materialize matching Named Skills into an ephemeral Skill Hell session. |
| `gaia_status` | Report version, Registry freshness, compatibility, counts, and available tools. |

`summon` is the current tool name; `gaia_summon` is not a current package tool.
It materializes skills in a temporary session and may maintain a bounded,
temporary cross-session payload cache. It never changes the Registry, current
repository, or permanent harness/project configuration.

### Package surface versus the thin Heaven/Summon profile

The package's four tools are **not** an implementation or measurement of D4's
thin, two-tool Heaven/Summon profile (`search_skills`, `summon`). The latter is
a profile and schema-dose constraint for Skill Heaven work. It does not rename,
remove, or deprecate any of the published package tools above.

## Install and run

Requires Node.js 22.14 or newer.

### Add the MCP server to Claude Code

Use an explicit package selector and binary. `@gaia-research/mcp` registers two
binaries, so a package name alone cannot select the MCP server:

```sh
claude mcp add gaia -- npx --yes --package=@gaia-research/mcp@latest gaia-mcp
```

For another MCP client, use this command and argument shape:

```json
{
  "command": "npx",
  "args": ["--yes", "--package=@gaia-research/mcp@latest", "gaia-mcp"]
}
```

### Summon from a clean shell

The npx-friendly alias is the shortest one-shot command:

```sh
npx --yes skill-hell@latest summon "code review" --card
```

You can also select the `skill-hell` binary directly from the rich package:

```sh
npx --yes --package=@gaia-research/mcp@latest skill-hell summon "code review" --card
```

For a persistent shell installation, install the rich package and use either of
its two binaries:

```sh
npm install --global @gaia-research/mcp@latest
gaia-mcp
skill-hell summon "code review" --card
```

`skill-hell@latest` is an alias package with its own forwarding binary. The
scoped package deliberately exposes both `gaia-mcp` and `skill-hell`; always
select the intended binary with `--package` when running it through npx.

## Run from a checkout

```sh
npm ci
npm run build
node dist/bin/gaia-mcp.js
```

The server speaks MCP over stdio, so it normally appears idle when run directly.
Connect an MCP client to the absolute path of `dist/bin/gaia-mcp.js`.

For isolated source testing, override the public projection endpoints with
`TREE_URL` and `TREE_NAMED_URL`.

## Skill Hell sessions

`summon` materializes the whole skill directory — `SKILL.md` plus referenced
files, templates, scripts, and fixtures — under an ephemeral session root. It
returns cards, inspect links, timing, cache state, and its ranking disclosure.

```sh
skill-hell summon "code review" --count 3
skill-hell sessions
# Re-attach in a new shell/session:
eval "$(skill-hell attach skill-hell-AbCd12)"
```

`--count` is bounded to 1–5. Named Skills may publish an open `trust` object;
when there is no comparable signal, the result explicitly reports
relevance-only ordering. This per-invocation ordering is not Hell/Heaven
scoring, routing eligibility, or a content-hash admission policy. Those
features are not shipped.

Warm roots remain under `os.tmpdir()` for the configured TTL. `skill-hell`
never writes into the current repository, `~/.claude`, or permanent skill
configuration.

## Verify

```sh
npm run check       # format check, typecheck, unit/protocol/package tests
npm run test:live   # current Gaia public-data contract
npm pack --dry-run  # publishable artifact contents
```

## Reference documents

- [Compatibility](COMPATIBILITY.md)
- [Versioning and releases](VERSIONING.md)
- [Skill Hell prototype details](docs/SKILL-HELL.md)
- [Changelog](CHANGELOG.md)
- [Gaia MCP releases](https://github.com/gaia-research/gaia-mcp/releases)

## Non-goals

Gaia MCP is not:

- a second Registry implementation;
- a direct Registry or Skill Tree mutation path;
- a permanent skill installer or background update daemon;
- an implemented Hell/Heaven scoring, routing-eligibility, or content-hash
  admission system;
- the thin Heaven/Summon profile merely because it has a `summon` tool.

## License

[MIT](LICENSE)

TDQS

A4.2/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: gaia_inspect provides detailed information on a specific skill, gaia_search finds skills in the registry, and gaia_status reports server metadata. No overlap or ambiguity.

Naming Consistency5/5

All tool names follow the consistent pattern 'gaia_<verb>' (gaia_inspect, gaia_search, gaia_status), making it predictable and easy to understand.

Tool Count5/5

With 3 tools, the set is well-scoped for a registry querying server. Each tool serves a necessary function without redundancy.

Completeness4/5

Covers core query operations (search, inspect, status). Minor gaps like bulk listing or category browsing are absent, but the surface is adequate for typical tasks.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive