Local stdio MCP server for cached, loop-aware JS/TypeScript diagnostics (Oxlint, tsc, Biome).
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Signalint.
pingCallable MCP tool function
pongCallable MCP tool function
check_projectCallable MCP tool function
check_filesCallable MCP tool function
get_issue_detailCallable MCP tool function
clusterIdCallable MCP tool function
Signalint is a local MCP server for JavaScript and TypeScript diagnostics. It runs
Oxlint, TypeScript, and optionally Biome; caches unchanged checks; clusters repeated
issues; and warns when the same diagnostic disappears and repeatedly returns.
Loop history is restored from valid .signalint/session.jsonl entries when the MCP
server restarts; malformed or crash-truncated lines are skipped.
Listed on:
When a coding agent requests diagnostics on a project, raw compiler and linter outputs quickly flood the context window with repetitive errors across multiple files. Signalint normalizes issues and clusters them by root cause before returning a bounded, priority-ranked response:
The agent receives a concise summary with priority-ordered clusters and sample issue IDs. When deeper detail is needed for a specific cluster or issue, the agent calls get_issue_detail without re-running the whole-project scan.
tsconfig.jsonInstall Signalint in the project it should check:
Run the setup command from that project root. It detects TypeScript, Oxlint, and
Biome configuration, writes signalint.config.json, and offers to update a nearby
Claude Code, Cursor, Codex CLI, or Antigravity MCP configuration:
If no MCP client can be selected safely, the command prints exact configuration
snippets to copy. TypeScript is enabled only when a root tsconfig.json exists;
Biome is enabled when its config exists; Oxlint is the fallback when no configured
linter is detected. To configure Signalint manually, create signalint.config.json:
Run this from the checked project. Project scope writes a shareable .mcp.json:
On native Windows, wrap npx as required by Claude Code:
Restart Claude Code if it was already open. Ask it to call Signalint's ping tool,
then call check_project with { "paths": ["."] }.
See the Claude Code MCP documentation for scope and troubleshooting details.
Create .cursor/mcp.json in the checked project:
On native Windows use "command": "cmd" and
"args": ["/c", "npx", "--no-install", "signalint-mcp"]. Open Cursor's MCP
settings, enable signalint, and call ping followed by check_project.
See the Cursor MCP documentation for configuration locations and status controls.
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:
For project-scoped configuration (trusted projects only), add to
.codex/config.toml in the project root:
On native Windows, use cmd and pass npx as an argument:
See the Codex MCP documentation
for all configuration options including cwd, env, and per-tool approval
settings.
Antigravity uses its own MCP configuration file. The path that has been
verified through dogfooding on Windows is:
%USERPROFILE%\.gemini\antigravity\mcp_config.json.
The init command can update this file after confirmation. The equivalent
Windows configuration is:
On macOS or Linux, use "command": "npx" and
"args": ["--no-install", "signalint-mcp"]. Restart or reconnect Antigravity
after updating the configuration.
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.google/docs/mcp for
the authoritative list per product.
Windows .cmd shims created by npm link can expose a junction path to Node. If
signalint-mcp ends with an initialize/EOF error or signalint stats exits with
code 0 but prints nothing, bypass the shim with the compiled entrypoint paths:
Current builds canonicalize linked paths before deciding whether to start, but direct Node invocation remains the reliable fallback for older builds or unusual npm setups.
engines.oxlint, engines.tsc, and engines.biome are booleans. Defaults are
Oxlint and tsc enabled, Biome disabled. Omitted engine keys retain those defaults.
Unknown keys and incorrectly typed values fail with a configuration error.
ignore is an array of project-relative globs. Signalint supports *, **, and
?, normalizes Windows separators, and excludes matching requested paths and
diagnostics. Because tsc is a whole-program engine, it still receives the complete
tsconfig.json program when invoked; ignored TypeScript paths do not trigger an
incremental check_files run and their diagnostics are removed from the response.
Engine-native configuration remains in native files. The v1 cache hash recognizes
root .oxlintrc, .oxlintrc.json, oxlint.json, tsconfig.json, biome.json,
and biome.jsonc. Changing one invalidates the related engine cache. Other valid
sourcesβincluding .oxlintrc.jsonc, extended configs, and nested package configsβ
are not part of v1 cache hashing; clear .signalint/ after changing one of them.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/signalint)<a href="https://allmcps.com/mcp/signalint"><img src="https://allmcps.com/api/badge/signalint?style=directory" alt="Signalint on AllMCPs" /></a>