A starter MCP server built with TypeScript and the official MCP SDK, featuring example tools like echo, add, time, and flight status.
A simple Model Context Protocol (MCP) server implementation using TypeScript and the official MCP SDK.
This MCP server provides:
npm install
npm run build
Run the server in development mode with hot reloading:
npm run dev
Build and run the compiled server:
npm run build
npm start
Build and watch for changes:
npm run watch
To use this server with an MCP client, you'll need to configure the client to connect to this server. The server uses stdio transport, so it can be launched as a subprocess.
Example configuration for MCP clients:
{
"mcpServers": {
"simple-server": {
"command": "node",
"args": ["path/to/dist/index.js"]
}
}
}
├── examples/ # Example implementations
│ ├── resources/
│ │ └── example-resource.ts # Example resource implementations
│ └── tools/
│ └── example-tool.ts # Example tool implementations
├── src/ # Source code
│ ├── handlers/
│ │ └── index.ts # MCP request handlers
│ ├── resources/
│ │ ├── index.ts # Resource implementations
│ │ └── registry.ts # Resource registry
│ ├── tools/
│ │ ├── index.ts # Tool implementations
│ │ └── registry.ts # Tool registry
│ ├── types/
│ │ └── index.ts # TypeScript type definitions
│ ├── utils/
│ │ └── config.ts # Configuration and utilities
│ ├── index.ts # Main entry point
│ └── server.ts # Core server implementation
├── dist/ # Compiled JavaScript (generated)
├── package.json # Node.js dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── test.js # Basic test script
├── test-comprehensive.js # Comprehensive test script
└── README.md # This file
The server is built with a modular architecture that makes it easy to extend:
ToolHandler
interfaceResourceHandler
interfaceToolHandler
in src/tools/
ToolRegistry
in src/tools/registry.ts
examples/tools/example-tool.ts
for a complete exampleResourceHandler
in src/resources/
ResourceRegistry
in src/resources/registry.ts
examples/resources/example-resource.ts
for complete examplesThe flight status tool provides real-time flight information:
Features:
Usage:
# Test the flight status tool
node test-flight-status.js
API Integration: By default, the tool uses mock data. To get real flight data:
AVIATIONSTACK_API_KEY=your_api_key
Run the test scripts to verify functionality:
# Basic test
node test.js
# Comprehensive test with all features
node test-comprehensive.js
# Test flight status tool specifically
node test-flight-status.js
The project includes a comprehensive .gitignore
file that excludes:
.env*
) containing API keysdist/
)node_modules/
)Important Security Note: API keys and secrets are automatically excluded from git tracking.
See GITIGNORE_INFO.md
for detailed information about ignored files.
This server implements the Model Context Protocol (MCP) which allows AI assistants to securely access external tools and data sources. The server communicates via JSON-RPC over stdio.
For more information about MCP, visit: https://modelcontextprotocol.io/
A Model Context Protocol server for generating visual charts using AntV.
Server for advanced AI-driven video editing, semantic search, multilingual transcription, generative media, voice cloning, and content moderation.
A natural language interface for biological activities analysis using the decoupler tool.
Introspects Laravel codebases to provide structured information about views, routes, classes, and models using the mateffy/laravel-introspect package.
Access Chromium and PDFium source code repositories using Google's official CodeSearch APIs, supporting advanced search, Gerrit integration, and issue tracking.
An MCP server for interacting with Autodesk Civil 3D, requiring a companion plugin and Node.js 18+.
A tool to provide Large Language Models with project context by intelligently filtering and concatenating relevant files.
Analyzes your codebase identifying important files based on dependency relationships. Generates diagrams and importance scores per file, helping AI assistants understand the codebase. Automatically parses popular programming languages, Python, Lua, C, C++, Rust, Zig.
Provides tools for geospatial analysis within Jupyter notebooks.
A bridge between the Unity game engine and AI assistants using the Model Context Protocol (MCP).