TypeScript Analyzer MCP Server - Enterprise Edition
A high-performance MCP (Model Context Protocol) server for analyzing and fixing TypeScript any types in your codebase, with advanced error handling, caching, and intelligent type inference.
Features
- 🔍 Analyze TypeScript Files: Scan files for
anytypes and get suggested replacements - 🛠️ Fix TypeScript Files: Automatically replace
anytypes with more specific types - 📊 Batch Processing: Process multiple files at once
- 🧩 Component Interface Generation: Generate TypeScript interfaces for React components
- ⚙️ Server Configuration: Dynamically update server config (log level, caching, etc.)
- 🔧 Cache Management: Clear and manage analysis caches
Installation
- Clone this repository
- Install dependencies:
npm install - Build the project:
npm run build - Start the server:
ornpm run startnode dist/index.js
Using with Claude Desktop
To use this MCP server with Claude Desktop, add it to your .claude-app.json configuration file:
{
"mcpServers": {
"typescript-analyzer": {
"command": "node",
"args": ["/path/to/typescript-analyzer-mcp/dist/index.js"],
"env": {}
}
}
}
Tools
getServerInfo
Retrieves basic information about the analyzer server (name, version, description, features, configuration).
Example:
Please provide server info
configureServer
Updates server configuration (log levels, caching, etc.) at runtime.
Parameters:
config: A partial configuration object to merge with the current config
Example:
Please update the logLevel to 'debug' for the server
analyzeTypeScriptFile
Analyzes a TypeScript file for any types.
Parameters:
filePath: Path to the TypeScript file to analyzeskipCache: (optional) If true, forces a fresh analysis
Example:
Please analyze the TypeScript file src/components/Button.tsx for any types
fixTypeScriptFile
Fixes any types in a single TypeScript file.
Parameters:
filePath: Path to the TypeScript file to fixfixType: Default type to use for replacement (default: "unknown")dryRun: If true, show changes without applying themskipBackup: If true, do not create a backup file before modifying
Example:
Please fix the TypeScript file src/components/Button.tsx, using Record<string, unknown> as the default replacement
batchFixTypeScriptFiles
Batch fixes any types in multiple TypeScript files.
Parameters:
directory: Directory containing TypeScript filespattern: Glob pattern for files to process (e.g. "**/*.ts")fixType: Default type to use for replacementdryRun: If true, show changes without applying themconcurrency: (optional) How many files to process in parallel
Example:
Please fix all TypeScript files in the src/components directory
generateComponentInterface
Generates a proper TypeScript interface for React component props.
Parameters:
filePath: Path to the React component filecomponentName: Name of the component to analyzeoutputPath: (optional) Path where to save the generated interface
Example:
Please generate an interface for the Button component in src/components/Button.tsx
clearCache
Clears the analysis cache to force fresh analysis on subsequent operations.
Example:
Please clear the analysis cache
Type Mapping Strategy
The server uses a set of predefined mappings for common patterns:
| Pattern | Replacement |
|---|---|
e: any |
e: React.SyntheticEvent |
event: any |
event: React.SyntheticEvent |
onChange: any |
onChange: (value: unknown) => void |
onClick: any |
onClick: (event: React.MouseEvent<HTMLElement>) => void |
ref: any |
ref: React.RefObject<HTMLElement> |
data: any |
data: Record<string, unknown> |
options: any |
options: Record<string, unknown> |
config: any |
config: Record<string, unknown> |
props: any |
props: Record<string, unknown> |
items: any[] |
items: unknown[] |
results: any[] |
results: unknown[] |
callback: any |
callback: (...args: unknown[]) => unknown |
For patterns not covered by the mappings, it defaults to using unknown.
License
MIT
Recommend MCP Servers 💡
mobbdev
Bugsy can also be used as an MCP server, allowing AI assistants like Claude to automatically scan and fix vulnerabilities in your code repositories.
@twinic/twinic-server
An MCP server that allows users to install and configure other MCP servers directly from prompts, supporting both npm and PyPi packages.
mcp-hello-world
A minimal Model Context Protocol (MCP) server implemented in TypeScript, primarily intended to serve as a Test Double / Mock Server for unit testing or integration testing client code that needs to interact with an MCP server.
aYenx/remote-mcp-server
A remote MCP server deployed on Cloudflare Workers with OAuth login, providing SSE transport for tool integration.
imagesorcery-mcp
An MCP server providing tools for image processing operations
i18n-mcp-server
MCP server for managing internationalization by translating JSON-based language files using language models via stdio transport