Countries MCP
This project implements a Model Context Protocol (MCP) server that provides country-related data using the REST Countries API. It's built using TypeScript and Express, with Docker support for easy deployment.
Prerequisites
Node.js (v14 or higher)
Docker and Docker Compose
npm or yarn package manager
Related MCP server: Country MCP Server
Installation
Install dependencies:
Add a
.envfile in the root directory as .example shows
Running the Application
Development Mode
Production Mode
Build the application:
Start the server:
Using Docker
Build and run using Docker Compose:
API Documentation
Endpoints
POST /mcp
Main endpoint for MCP communication.
Headers:
Accept: application/json, text/event-streammcp-session-id: Session identifier (null for new sessions)
Initial Request:
First request should not include a session ID
Server will respond with a new session ID in the
mcp-session-idheader
Subsequent Requests:
Include the session ID received from the initial request
Maintains the session context for continued interaction