# NPM Types MCP Server

An MCP (Model Context Protocol) server for providing TypeScript type definitions as MCP Resources. This server allows AI assistants to fetch and use TypeScript type definitions from NPM packages.

## Overview

This server implements the Model Context Protocol to provide TypeScript type definitions from NPM packages. It allows AI assistants to:

- Fetch type definitions for any NPM package
- Access the latest or specific versions of package types
- Use these types to provide better code assistance

## Prerequisites

- Node.js (v23.6.0 or higher)
- yarn (v1.22.22 or higher)

## Installation

1. Clone this repository:
   ```bash
   git clone https://github.com/JackVCurtis/npm-types-mcp-server.git
   cd npm-types-mcp-server
   ```

2. Install dependencies:
   ```bash
   yarn
   ```

## Usage

### Starting the Server

To start the server, run:

```bash
yarn start
```

The server will start and listen for MCP connections via stdio.

### Configuring with Augment

To use this server with the Augment extension:

1. Open Augment settings
2. Add a new MCP server with the following configuration:
   - **Name**: NPM Types
   - **Command**: `/absolute/path/to/node` `/absolute/path/to/npm-types-mcp-server/index.ts`
   - Replace `/absolute/path/to/node` with the path to your Node.js executable
   - Replace `/absolute/path/to/npm-types-mcp-server` with the absolute path to this repository on your system

### Using the Server

Once configured, you can use the server to fetch type definitions for NPM packages. The server provides a tool called `npm-types` that can be used to fetch type definitions.

Example usage in Augment:

```
Fetch the types for the @randsum/dice package version 1.0.0
```

## API

### Tools

#### npm-types

Fetches the types for an NPM package.

Parameters:
- `name` (string): The name of the NPM package
- `version` (string): The version of the NPM package

Returns:
- The TypeScript type definitions for the specified package and version

## Project Structure

- `index.ts`: Main entry point for the server
- `package.json`: Project dependencies and metadata
- `tsconfig.json`: TypeScript configuration

## License

MIT

## Author

Jack
