terminal % ~
 __  __           _      _ _____    _       _
|  \/  |         | |    | |  ___|  | |     | |
| .  . | ___   __| | ___| | |_ ___| |_ ___| |__
| |\/| |/ _ \ / _` |/ _ \ |  _/ _ \ __/ __| '_ \
| |  | | (_) | (_| |  __/ | ||  __/ || (__| | | |
\_|  |_/\___/ \__,_|\___|_\_| \___|\__\___|_| |_|

ModelFetch

[INFO] ModelFetch is a delightful TypeScript/JavaScript SDK for building and deploying MCP servers anywhere TypeScript/JavaScript runs.

Why ModelFetch?

Multi-Runtime

Write your MCP server once. Run it anywhere: Node.js, Bun, Deno, Vercel, Cloudflare, Netlify, Fastly, etc.

Official SDK

Built on top of the official MCP TypeScript SDK to avoid lock-in and ensure up-to-date implementation.

Delightful DX

Build your MCP server with tools designed for building MCP servers: hot reload, debugger, MCP Inspector, etc.

How It Works

~ Create your MCP server with the official MCP TypeScript SDK:

server.ts◉ typescript
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";import { z } from "zod";const server = new McpServer({  title: "My MCP Server",  name: "my-mcp-server",  version: "1.0.0",});server.registerTool(  "roll_dice",  {    title: "Roll Dice",    description: "Rolls an N-sided dice",    inputSchema: { sides: z.number().int().min(2) },  },  ({ sides }) => ({    content: [      {        type: "text",        text: `🎲 You rolled a ${1 + Math.floor(Math.random() * sides)}!`,      },    ],  }),);export default server;

~ Run your MCP server with the ModelFetch runtime handler:

install.sh◉ bash
npm install @modelfetch/node
src/index.ts◉ typescript
import handle from "@modelfetch/node";import server from "./server";handle(server);

Quick Start

10101
01010
11001
10101
01010
11001
EXECUTE COMMAND
npx -y create-modelfetch@latest

That's it. You're ready to build.

~ echo "Built with ❤️ by developers, for developers"