mcp-blanko
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-blanko run the hello world tool"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-blanko
A template for building your own MCP (Model Context Protocol) server in TypeScript.
Includes placeholder tools, dual transport support (stdio + SSE), and a simple pattern for adding your own tools.
Quick Start
npm install
npm run build
npm startRelated MCP server: MCP TypeScript Starter
Project Structure
src/
├── index.ts # Entry point — transport selection
├── server.ts # Server setup & tool registration
└── tools/
├── hello-world.ts # Simple greeting tool
├── complex-input.ts # Rich input schema with error handling
├── async-operation.ts # Simulated long-running task
├── external-api.ts # Placeholder for API integration
└── file-operation.ts # Local file read/writeAdding Your Own Tool
Create a new file in
src/tools/:
import { z } from "zod";
import type { ToolDefinition } from "../server.js";
export const myTool: ToolDefinition = {
name: "my_tool",
description: "What this tool does",
inputSchema: z.object({
param: z.string().describe("Description of param"),
}),
handler: async ({ param }) => {
return {
content: [{ type: "text", text: `Result: ${param}` }],
};
},
};Register it in
src/server.ts:
import { myTool } from "./tools/my-tool.js";
const tools: ToolDefinition[] = [
// ... existing tools
myTool,
];Build and run:
npm run build && npm startTransport Modes
stdio (default)
npm start
# or
npm run start:stdioSSE (HTTP)
npm run start:sse
# or
MCP_PORT=3001 node dist/index.js --transport=sseThe SSE endpoint will be available at http://localhost:3001/sse.
Configuration
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"mcp-blanko": {
"command": "node",
"args": ["/absolute/path/to/mcp-blanko/dist/index.js"]
}
}
}Claude Code
claude mcp add mcp-blanko node /absolute/path/to/mcp-blanko/dist/index.jsDocker Deployment
Build and run with Docker Compose:
docker compose up -dThe SSE endpoint will be available at http://localhost:3001/sse. Put a reverse proxy (e.g., nginx, Caddy, Traefik) in front for HTTPS.
Or build and run manually:
docker build -t mcp-blanko .
docker run -d -p 3001:3001 mcp-blankoEnvironment Variables
Variable | Default | Description |
|
| Transport mode: |
|
| HTTP port for SSE transport |
|
| Base directory for the file operation tool |
License
MIT
Available Tools
5 toolsfetch_dataC
Placeholder for a tool that calls an external API. Replace the handler with your own API logic.
Inputs: endpoint (required), method.
hello_worldA
A simple greeting tool. Takes a name and returns a personalized greeting.
Inputs: name (required).
long_running_taskC
Demonstrates an async tool that simulates a long-running operation (e.g., data processing, report generation).
Inputs: taskName (required), durationMs.
manage_fileC
Demonstrates reading and writing local files. Operates within a configurable base directory.
Inputs: action (required), filePath (required), content.
process_orderD
Demonstrates a tool with a rich input schema: nested objects, enums, optional fields, and error handling.
Inputs: items (required), customer (required), notes, priority.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose: fetching external API, greeting, long-running task, file management, and order processing. No overlap.
Three tools use verb_noun pattern (fetch_data, manage_file, process_order), but hello_world and long_running_task deviate with different structures. Inconsistent but still readable.
5 tools is well-scoped for a demo server illustrating various MCP patterns. Not too many or too few.
As a demo server, it covers common patterns (API call, async, file I/O, complex schema, simple greeting). Could include more patterns like resource subscriptions, but the set is reasonable.
Maintenance
Related MCP Connectors
A simple Typescript MCP server built using the official MCP Typescript SDK and smithery/cli. This…
A TypeScript MCP server for Home Assistant, enabling programmatic management of entities, automati…
Primarily to be used as a template repository for developing MCP servers with FastMCP in Python, P…
Kickstart development with a customizable TypeScript template featuring sample tools for greeting,…
Related MCP Servers
- FlicenseAqualityDmaintenanceA TypeScript MCP server template with Zod validation, dual transport (stdio/HTTP), and modular architecture for building MCP-compatible tools, resources, and prompts.11-
- AlicenseNot gradedqualityBmaintenanceA feature-complete MCP server template in TypeScript demonstrating tools, resources, prompts, and both stdio and HTTP transports.8MIT
- AlicenseCqualityDmaintenanceA TypeScript template for building MCP servers with stdio/SSE transport and easy tool registration.5MIT
- AlicenseBqualityDmaintenanceA template for building MCP servers in TypeScript with placeholder tools and dual transport support (stdio + SSE).5MIT