AIWG

MCP access to AIWG's catalog of agents, skills, rules and templates, plus its project artifacts and CLI

By Joseph Magly (individual) TypeScript Local · stdio Developer toolsKnowledge and memory

65 popularity score ★ 229 ↓ 8.7k/wk

Connect your client

Local (npm)

Add in one click

Opens the app, which asks before it adds the server.

Or add it by command or config

FirstTerminal
npm i -g aiwg
Claude CodeTerminal
claude mcp add aiwg -- aiwg mcp serve
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "aiwg": {
      "command": "aiwg",
      "args": [
        "mcp",
        "serve"
      ]
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "aiwg": {
      "command": "aiwg",
      "args": [
        "mcp",
        "serve"
      ]
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "aiwg": {
      "type": "stdio",
      "command": "aiwg",
      "args": [
        "mcp",
        "serve"
      ]
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.aiwg]
command = "aiwg"
args = ["mcp", "serve"]
Gemini CLITerminal
gemini mcp add --scope user aiwg aiwg -- mcp serve

Settings 5

AIWG_MCP_TOOLSETS Optional: Comma-separated opt-in toolsets (flows, missions, memory, kb, research, activity-log, index, ralph, mc, ops, sandbox, decision, all, workers); none by default, and all leaves out workers.
AIWG_ROOT Optional: Path to the AIWG installation the catalog and allow-list are read from. Default ~/.local/share/ai-writing-guide.
Set together: sandbox
AIWG_SANDBOX_MANAGEMENT_URL Optional: Agentic Sandbox management origin; must be HTTPS unless it is a loopback address. For sandbox toolset.
AIWG_SANDBOX_MANAGEMENT_TOKEN_FILE Optional: Path to a private file holding the bearer token; takes precedence over the store entry. For sandbox toolset.
AIWG_SANDBOX_MANAGEMENT_TOKEN_STORE Optional: Named OS credential-store entry holding the bearer token, used when no token file is set. For sandbox toolset.

What it does

AIWG is a large framework that puts agents, skills, commands, rules and templates into the folders AI coding tools read, and keeps project records such as requirements and decisions in a .aiwg/ directory so they survive between sessions. The `aiwg` npm package ships an MCP server you start with `aiwg mcp serve`. It talks over stdio. Through it an assistant can search and read that catalog, fill in templates, read and write files under .aiwg/, and call AIWG's own CLI without knowing where each provider keeps things.

The server registers 17 core tools. Two of them are missing from the tool table in the MCP docs: `ask-user`, which puts a pick-one or pick-several question to the operator (a native form where the client supports MCP elicitation, a markdown prompt elsewhere), and `rule-inventory`, which reports how rules are configured and activated at workspace, user, installation or catalog scope. `command-run` reaches the CLI's allow-list of roughly 94 commands. Arguments go in as an array and are never handed to a shell. A destructive command is refused unless the call sets `confirmed: true`. Runs time out after 2 minutes unless `timeout_ms` asks for something between 1 second and 10 minutes (src/mcp/tools/command-run.mjs).

Extra toolsets are off until you name them with `--toolsets=` or `AIWG_MCP_TOOLSETS`: flows, missions, memory, kb, research, activity-log, index, ralph, mc, ops, sandbox and decision, or all. A `workers` toolset that can start and cancel direct worker runs is left out of `all` on purpose and only loads when named explicitly. The server also serves catalog resources under aiwg://, writer profiles kept at project or user scope, and three prompts. The CLI can write the client config for you with `aiwg mcp install claude-code`, `claude-desktop` or `cursor`.

What it needs

RuntimeNode.js 24+
Runs onmacOS, Windows, Linux
Also
  • The aiwg CLI installed globally so `aiwg` is on PATH

Install with `npm i -g aiwg`. The package now asks for Node.js 24 or later. Project setup moved to a guided `aiwg setup` command (`aiwg setup --scope project --providers <provider>`, then `--review` and `--apply`), and `aiwg use all --provider <provider>` is still there for a direct full deployment. The server is most useful in a project already set up this way. The opt-in sandbox toolset also needs an Agentic Sandbox management endpoint in AIWG_SANDBOX_MANAGEMENT_URL and a bearer token, from a private file named by AIWG_SANDBOX_MANAGEMENT_TOKEN_FILE or an OS credential-store entry named by AIWG_SANDBOX_MANAGEMENT_TOKEN_STORE.

Limits

  • Not covered Speaks stdio only. Without opt-in toolsets just the 17 core tools are registered.
  • Not covered command-run reaches only allow-listed aiwg commands, with a 2-minute timeout by default and a 10-minute cap.
  • Limit Its docs say artifact path containment does not guard against another local process changing the .aiwg/ tree at the same time.
  • Limit A failed artifact write can leave temporary files behind, according to its docs.
  • Limit Artifacts default to the directory the server was launched from. A client started elsewhere has to pass project_dir.
  • Not covered The workers toolset is not loaded by `all` and is skipped when the server is not started inside an AIWG project.
  • Limit Bare `aiwg mcp install claude` is deprecated. Use claude-code or claude-desktop.

Only the stdio transport is offered. Without opt-in toolsets only the 17 core tools are registered. `workflow-run` has been removed, so use `command-run` or the flows toolset instead. `command-run` runs only allow-listed AIWG commands, with a 10-minute cap per call. Its docs say artifact path containment does not protect against another local process changing the artifact tree at the same time, and a failed write can leave temporary files behind. By default, artifacts go to the directory the server was launched from. A client launched in a subdirectory has to pass `project_dir`. `aiwg mcp install` does not yet write the Claude Desktop chat app's config file.

Who it suits

It suits teams that already run AIWG's frameworks and want an assistant to look up AIWG skills, agents, rules and templates, or keep .aiwg/ project records, through tool calls. It runs locally, needs no account, and stays small unless you switch on more toolsets. A project that does not use AIWG gets little from it, since every tool works on AIWG's own catalog, artifacts or CLI. If you want an assistant to edit ordinary project files or run arbitrary commands, a general filesystem or shell server is the better fit.

Tools 17

15 only read, 2 can delete or overwrite. A ? marks an optional parameter.

discover
Search AIWG skills, agents, commands, rules, flows, runbooks, templates and behaviors; 5 results by default, up to 50phrase: stringtype?: enumlimit?: integer
skill-list
List skills, optionally filtered by name; 50 by default, up to 500filter?: stringlimit?: integer
skill-show
Show one skill's metadata card, with its full text or chosen sections on requestname: stringbody?: booleansection?: array
command-list
List the aiwg CLI commands that command-run acceptsfilter?: string
command-show
Show one command's metadata card and, on request, its definitionname: stringbody?: boolean
rule-inventory
Report which rules are configured and active at a given scopescope?: enumcapability?: stringactivation?: stringtier?: stringprovider?: stringbodies?: boolean
rule-list
List the enforcement rulesfilter?: string
rule-show
Show one rule's metadata card and, on request, its textname: stringbody?: boolean
agent-list
List agents, by framework or categoryframework?: enumcategory?: string
agent-show
Show one agent's metadata card and, on request, its definitionname: stringbody?: boolean
template-list
List document templates, by framework or nameframework?: stringfilter?: string
template-show
Return a template's raw text without filling it intemplate: string
template-render
Fill a template with the values suppliedtemplate: stringvariables?: object
artifact-read
Read a file under the project's .aiwg/ directorypath: stringproject_dir?: string
artifact-write deletes
Create or overwrite a file under the project's .aiwg/ directorypath: stringcontent: stringproject_dir?: string
command-run deletes
Run an allow-listed aiwg CLI command; destructive ones need confirmed: truecommand: stringargs?: arrayproject_dir?: stringconfirmed?: booleantimeout_ms?: integer
ask-user
Put a single- or multi-select question to the operatorquestion: stringoptions: arraymultiSelect?: booleancontext?: string

Resources 8

aiwg://prompts/catalog
Catalog of AIWG prompts
aiwg://templates/catalog
Catalog of AIWG templates
aiwg://agents/catalog
Catalog of AIWG agents
aiwg://prompts/{category}/{name}
One prompt by category and name
aiwg://templates/{framework}/{category}/{name}
One template by framework, category and name
aiwg://agents/{framework}/{name}
One agent definition
aiwg://writer-profiles/catalog
Writer profile ids and revisions at project and user scope, without raw samples
aiwg://writer-profiles/{scope}/{id}
One writer profile in its shared export form

Prompts 3

decompose-task
Break a task into smaller steps
parallel-execution
Plan work that can run in parallel
recovery-protocol
Steps for recovering from a failed task

Similar servers