Skip to main content
Glama
askarthikey

MCP Starter Server

by askarthikey
README.md
# MCP Starter Server (TypeScript)

A starter **Model Context Protocol (MCP)** server built in Node.js / TypeScript using the official `@modelcontextprotocol/sdk`.

## Features

- šŸ› ļø **Tools**:
  - `add_numbers`: Adds two numbers and returns formatted result.
  - `get_system_status`: Returns system uptime, platform, Node version, and timestamp.
- šŸ“„ **Resources**:
  - `info://welcome`: Text resource providing welcome information.
  - `config://app-settings`: JSON resource exposing server configuration settings.
- šŸ’” **Prompts**:
  - `code_review`: Prompt template for structured code review requests.
  - `summarize_notes`: Prompt template for summarizing meeting notes into bullet points.

---

## Quick Start

### 1. Install Dependencies

```bash
npm install
```

### 2. Build the Server

```bash
npm run build
```

This compiles TypeScript source from `src/` to `dist/index.js`.

### 3. Run in Development Mode

```bash
npm run dev
```

### 4. Test with MCP Inspector

You can visually test and interact with your tools, resources, and prompts using the official MCP Inspector:

```bash
npx @modelcontextprotocol/inspector node dist/index.js
```

---

## Integrating with MCP Clients

### Antigravity / Claude Desktop / Cursor Configuration

Add this server to your client's MCP server configuration file (e.g. `mcp_config.json` or `claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "starter-mcp-server": {
      "command": "node",
      "args": [
        "C:/Users/naska/coding/dev/mcp-temp/dist/index.js"
      ]
    }
  }
}
```

---

## Folder Structure

```
.
ā”œā”€ā”€ src/
│   └── index.ts        # Main MCP Server implementation (Tools, Resources, Prompts)
ā”œā”€ā”€ dist/               # Compiled JavaScript outputs (generated on build)
ā”œā”€ā”€ package.json        # Dependencies and build scripts
ā”œā”€ā”€ tsconfig.json       # TypeScript compiler settings
└── README.md           # Documentation
```

TDQS

A3.8/5.0

Scored across 2 tools

Disambiguation5/5

add_numbers and get_system_status have completely separate purposes, so an agent would not confuse them. Each tool's name and description uniquely identify its intended action.

Naming Consistency5/5

Both tools use a consistent verb_noun snake_case pattern: add_numbers and get_system_status. This makes the naming predictable and easy to extend.

Tool Count3/5

Two tools is on the low end and feels thin for an MCP server. However, for a starter server it is defensible, so the count is borderline rather than unreasonable.

Completeness4/5

The two tools cover what a minimal starter server would likely demonstrate: a computational example and a system information example. There are no obvious missing operations given the small scope, though the surface is not broad enough for general-purpose use.

Maintenance

ActivityMaintained
ResponsivenessNo issues