Setup & clients
Install Signalint, generate project-aware defaults, connect Claude Code, Cursor, Codex CLI, or Antigravity, and verify the stdio handshake.
Install in the checked project
Run setup from the JavaScript or TypeScript project Signalint should inspect. Node.js 20.19+ or 22.12+ is required; TypeScript checks also require a root tsconfig.json.
npm install --save-dev signalint-mcp
npx signalint-mcp initWhat init detects
npx signalint-mcp init inspects the project before writing anything. It enables TypeScript only when a root tsconfig.json exists, enables Biome when its configuration exists, and uses Oxlint as the fallback when no configured linter is detected.
| Detection | Generated behavior |
|---|---|
Root tsconfig.json | Enables the whole-program tsc adapter. |
| Oxlint configuration | Enables the file-local Oxlint adapter. |
biome.json or biome.jsonc | Enables the optional file-local Biome adapter. |
| One nearby MCP client | Offers to merge the Signalint server entry after confirmation. |
| Several or no unambiguous clients | Asks which client to use or prints exact snippets to copy. |
Manual Signalint configuration
If you do not use init, create signalint.config.json at the project root. Every supported field is documented in the configuration reference.
{
"engines": {
"oxlint": true,
"tsc": true,
"biome": false
},
"ignore": ["node_modules/**", "dist/**", ".signalint/**"],
"timeoutsMs": {
"oxlint": 30000,
"tsc": 120000,
"biome": 30000
}
}Claude Code
Project scope creates a shareable .mcp.json. On macOS or Linux:
claude mcp add --scope project signalint -- npx --no-install signalint-mcp
claude mcp get signalintOn native Windows, wrap npx with cmd /c:
claude mcp add --scope project signalint -- cmd /c npx --no-install signalint-mcp
claude mcp get signalintFor scope behavior and client-side troubleshooting, see the Claude Code MCP documentation.
Cursor
Create .cursor/mcp.json in the checked project:
{
"mcpServers": {
"signalint": {
"command": "npx",
"args": ["--no-install", "signalint-mcp"]
}
}
}On native Windows, use "command": "cmd" and "args": ["/c", "npx", "--no-install", "signalint-mcp"]. Open Cursor's MCP settings and enable signalint. See the Cursor MCP documentation for configuration locations and status controls.
Codex CLI
The ChatGPT desktop app, Codex CLI, and IDE extension share a single configuration file. The quick-add command writes to ~/.codex/config.toml (global) automatically:
codex mcp add signalint -- npx --no-install signalint-mcpFor project-scoped configuration (trusted projects only), add to .codex/config.toml in the project root:
[mcp_servers.signalint]
command = "npx"
args = ["--no-install", "signalint-mcp"]On native Windows, use cmd and pass npx as an argument:
[mcp_servers.signalint]
command = "cmd"
args = ["/c", "npx", "--no-install", "signalint-mcp"]See the Codex MCP documentation for all configuration options including cwd, env, and per-tool approval settings.
Antigravity
The path verified through dogfooding on Windows is %USERPROFILE%\.gemini\antigravity\mcp_config.json. Init can update it after confirmation. The equivalent manual Windows entry is:
{
"mcpServers": {
"signalint": {
"command": "cmd",
"args": ["/c", "npx", "--no-install", "signalint-mcp"],
"cwd": "<absolute-path-to-your-project>"
}
}
}On macOS or Linux, use "command": "npx" with ["--no-install", "signalint-mcp"]. Always set cwd to the absolute project root, then reconnect or restart Antigravity.
Note on Antigravity product variants: Antigravity has split into separate products (IDE, CLI, SDK). Each variant may use a different config path (the IDE path above is the one confirmed working; other variants may use ~/.gemini/config/mcp_config.json or a project-scoped .agents/mcp_config.json. See Antigravity MCP Documentation for the authoritative list per product.
Verify the connection
- Restart or reconnect the MCP client after its configuration changes.
- Call
pingwith{}and confirm the result ispong. - Call
check_projectwith{ "paths": ["."] }.
Signalint writes cache and session artifacts under .signalint/. Keep the directory out of version control.
Verify without an MCP client
npx --no-install signalint check .The command exits with code 1 when diagnostics are found; that is expected check behavior rather than a CLI crash.