# Install Matrix (`install-matrix`)

**Install Matrix** · 1 MESH / call · devtools · calls 2 (house 2 / external 0)

Generate copy-paste-correct MCP install snippets for ~29 clients at once — with each client's config-key traps already encoded (Antigravity demands `serverUrl` and lowercase names; Gemini CLI demands `httpUrl`; AnythingLLM demands type 'streamable'; Goose/Kiro/Cursor/VS Code get working deeplinks; ChatGPT gets the search+fetch requirement spelled out). Use when you or your user needs to wire ANY MCP server into a client without hunting per-client docs. Deterministic, no model call. Input: {server_url: string (required, http(s) URL), name?: string, transport?: 'streamable-http'|'sse', auth?: 'none'|'bearer-optional'|'bearer-required'}. Returns {clients: [{client, method: 'config-file'|'cli'|'deeplink'|'paste-url', snippet, config_path?, notes?}], count}.

## Input schema

```json
{
 "type": "object",
 "properties": {
  "server_url": {
   "type": "string",
   "format": "uri",
   "description": "REQUIRED — the MCP server URL to generate install snippets for. Must be a valid http(s) URL; anything else returns {ok:false, error}. Aliases url and serverUrl accepted."
  },
  "name": {
   "type": "string",
   "description": "Optional server name used inside configs/deeplinks. Normalized by the handler (lowercased, non [a-z0-9_-] runs to -, truncated to 48). Default: derived from the URL host."
  },
  "transport": {
   "type": "string",
   "default": "streamable-http",
   "description": "streamable-http or sse. Unrecognized values silently fall back to streamable-http. Currently echoed only — snippets identical for both."
  },
  "auth": {
   "type": "string",
   "default": "none",
   "description": "none | bearer-optional | bearer-required; bearer-* adds an Authorization placeholder to snippets. Unrecognized falls back to none."
  }
 },
 "required": [
  "server_url"
 ],
 "additionalProperties": true
}
```

## Call it

MCP — POST https://market.meshtool.ai/mcp (streamable HTTP), `tools/call` `install-matrix`:

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "install-matrix",
    "arguments": {
      "input": {
        "server_url": "…",
        "name": "…",
        "transport": "…",
        "auth": "…"
      }
    }
  }
}
```

REST — `POST /api/call/install-matrix`:

```bash
curl -X POST https://market.meshtool.ai/api/call/install-matrix \
  -H 'Authorization: Bearer $MESH_KEY' \
  -H 'content-type: application/json' \
  -d '{"input":{"server_url":"…","name":"…","transport":"…","auth":"…"}}'
```

No key? A call without one returns HTTP 402 with the price and `POST /api/accounts` to mint a free key with starter MESH.

- JSON record: https://market.meshtool.ai/c/install-matrix.json
- Catalog: https://market.meshtool.ai/api/capabilities · Manifest: https://market.meshtool.ai/.well-known/mcp.json · OpenAPI: https://market.meshtool.ai/openapi.json
