https://github.com/cephalization/mcp-ts-quickstart
Build-less TypeScript quickstart for an MCP server implementation
https://github.com/cephalization/mcp-ts-quickstart
build-free mcp mcp-server node typescript
Last synced: 2 months ago
JSON representation
Build-less TypeScript quickstart for an MCP server implementation
- Host: GitHub
- URL: https://github.com/cephalization/mcp-ts-quickstart
- Owner: cephalization
- License: mit
- Created: 2025-04-03T20:00:52.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-03T20:16:14.000Z (about 1 year ago)
- Last Synced: 2025-04-09T17:07:23.424Z (about 1 year ago)
- Topics: build-free, mcp, mcp-server, node, typescript
- Language: TypeScript
- Homepage:
- Size: 478 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-mcp-servers - **mcp-ts-quickstart** - Build-less TypeScript quickstart for an MCP server implementation `typescript` `build-free` `mcp` `mcp-server` `node` `npm install cephalization/mcp-ts-quickstart` (🌐 Web Development)
README
# MCP TS Quickstart
This is a quickstart for MCP in TypeScript.
It includes a basic MCP server implementation that uses the `stdio` transport,
and fetches the top stories from Hacker News.
It is written in TypeScript and works without a build step by utilizing Node v23.
Based on the example provided in the [MCP documentation](https://modelcontextprotocol.io/quickstart/server).

## Usage
The snippet below requires `git`, `nvm`, and `pnpm`.
```bash
git clone git@github.com:cephalization/mcp-ts-quickstart.git
cd mcp-ts-quickstart
nvm install && nvm use
pnpm install
```
Once cloned and dependencies installed, you can add this server to Claude Desktop with a config similar to the following:
```json
{
"mcpServers": {
"hacker-news": {
"command": "/Users/tony/.nvm/versions/node/v23.6.0/bin/node",
"args": ["/Users/tony/repos/mcp/src/index.ts"]
}
}
}
```
See the [MCP documentation](https://modelcontextprotocol.io/quickstart/user) for more information on how to use Claude Desktop as a client.
## Development
The following commands will install the dependencies, and then start the MCP server with the [MCP Inspector](https://github.com/modelcontextprotocol/inspector) UI as a client.
```bash
nvm install && nvm use
pnpm install
pnpm start
```
Because the server is build-less, you can simply "restart" the server inside of the inspector UI by pressing the "Restart" button.
## Extending the server
The server is implemented in `src/index.ts`.
The `topStories` tool is implemented in `src/tools.ts`.
To add a new tool, you can copy the `topStories` tool and modify it.
When importing local src files, make sure to use the `.ts` extension so that node can resolve it.
When importing types, make sure to add the `type` keyword in front of the import so that node can strip it out at runtime.
When importing libraries, make sure to import the actual source file extension, if it does not provide an exports mapping.
## MCP Inspector
The MCP Inspector is a UI for interacting with MCP servers.
When run, it will be available at [http://localhost:6274](http://localhost:6274).