Track DB Schenker shipments by reference number to get comprehensive, structured shipment information and tracking history.
Track shipments - Use the
track_shipmenttool with a reference number (e.g., "1806203236") to retrieve shipment detailsGet structured data - Receive organized information including shipment ID, transport mode, status, sender/receiver details, package specifications, and complete tracking event history
Client-side validation - Performs lightweight validation to reject malformed reference numbers before making upstream requests
Handle errors gracefully - Get specific error responses for invalid references, CAPTCHA blocks, API errors, or not-found shipments
CAPTCHA-aware - Explicitly detects and reports when the upstream DB Schenker tracking endpoint blocks requests with CAPTCHA protection
MCP integration - Operates as a Model Context Protocol server, integrating with MCP clients like Claude Desktop via stdio communication
Click on "Install 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., "@DB Schenker Shipment Trackertrack shipment 1806203236"
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.
DB Schenker Shipment Tracker MCP Server
An MCP (Model Context Protocol) server that tracks DB Schenker shipments by reference number, providing structured shipment information including sender/receiver details, package information, and complete tracking history.
Quick Start
Install dependencies:
npm installBuild the project:
npm run buildTest with MCP Inspector:
npx @modelcontextprotocol/inspectorThen configure:
Command:
nodeArgs:
/absolute/path/to/this/project/dist/server.jsTransport:
stdio
Use the tool:
In MCP Inspector, go to "Tools" tab
Call
track_shipmentwith a reference number (e.g.,1806203236)
The server automatically solves CAPTCHA challenges - no manual setup required!
CAPTCHA Notice
The DB Schenker tracking endpoint is protected by a browser-bound challenge-response mechanism rather than a traditional API key flow. This means:
The endpoint requires a
Captcha-Solutionheader that is generated from puzzle dataSolutions are session and timing dependent - each request needs a fresh solution
Solutions expire quickly (seconds to minutes) and cannot be reused
The MCP server automatically solves CAPTCHA puzzles when encountered, so no manual intervention is required
Error Responses
The system distinguishes between different CAPTCHA-related errors:
HTTP 429 + : Missing or expired
Captcha-SolutionheaderHTTP 422 "Invalid solution": The
Captcha-Solutionheader was rejected (expired/invalid)HTTP 429 without puzzle: Rate limiting (retryable)
For detailed information about CAPTCHA mechanics and algorithm implementation, see:
Setup Instructions
Prerequisites
Node.js: Version 18 or higher
npm: Comes bundled with Node.js
Environment Setup
Clone or download this repository
git clone https://github.com/digitalxenon98/sendify-dbschenker-mcp cd sendify-dbschenker-mcpVerify Node.js installation
node --version # Should be v18 or higher npm --version
Build/Install Dependencies
Install all dependencies
npm installThis will install:
Runtime dependencies:
@modelcontextprotocol/sdk,zodDevelopment dependencies:
typescript,tsx,@types/node
Note: The server uses a pure JavaScript CAPTCHA solving algorithm - no browser automation is required.
Build the TypeScript Project
This compiles TypeScript to JavaScript in the dist/ directory.
CAPTCHA Solving
The MCP server automatically solves CAPTCHA puzzles when encountered. When the API returns a CAPTCHA challenge, the server:
Extracts the puzzle from the
Captcha-PuzzleheaderAutomatically solves it using a proof-of-work algorithm
Retries the request with the
Captcha-SolutionheaderReturns the tracking data on success
This process is completely transparent - you don't need to do anything manually. The server handles CAPTCHA solving automatically for all requests.
How to Run the MCP Server
Development Mode
Run the server directly with TypeScript (no build required):
The server will start and communicate via stdio (standard input/output), which is the standard way MCP servers operate.
Production Mode
First, build the project:
npm run buildThen run the compiled JavaScript:
npm start
MCP Client Configuration
To use this MCP server with an MCP client (like Claude Desktop), add it to your MCP configuration:
Production (after building):
Development (using TypeScript directly):
Important: Use absolute paths in the configuration. Replace /absolute/path/to/sendify-dbschenker-mcp with the actual path to your project directory.
How to Test the Tool
Using MCP Inspector (Recommended for Testing)
MCP Inspector is a web-based tool for testing MCP servers. It's the easiest way to test the server before integrating it with other clients.
Build the project (if not already built):
npm run buildStart MCP Inspector:
npx @modelcontextprotocol/inspectorConfigure the server in MCP Inspector:
Open the MCP Inspector in your browser (usually opens automatically)
In the connection settings:
Command:
nodeArgs:
/absolute/path/to/sendify-dbschenker-mcp/dist/server.jsTransport:
stdio(default)
Click "Connect"
Test the tool:
Navigate to the "Tools" tab
Find
track_shipmentin the listEnter a reference number (e.g.,
1806203236)Click "Call Tool"
View the response
Note: Replace /absolute/path/to/sendify-dbschenker-mcp with the actual absolute path to your project directory. You can get the absolute path by running pwd in your project directory.
Using an MCP Client (Claude Desktop, etc.)
Configure your MCP client with the server (see MCP Client Configuration above)
Start your MCP client (e.g., Claude Desktop)
Call the tool with a reference number:
track_shipment(reference: "1806203236")
Example Reference Numbers
You can test with these reference numbers:
18062032361806290829180627370018062723301806271886
Expected Response Format
Success Response:
Error Response (Not Found):
Error Response (API Error):
Error Response (CAPTCHA Solution Invalid - 422):
Error Response (CAPTCHA Blocked - 429):
Testing CAPTCHA Solving
To verify that CAPTCHA solving works correctly, you can use the test script:
This will:
Make a real API request to DB Schenker
Automatically solve any CAPTCHA challenge encountered
Display debug information about the solving process (automatically enabled)
Show whether the request succeeded
Expected output:
[CAPTCHA] Puzzle solved in Xms- Shows CAPTCHA was solved successfullyRequest succeeded!- Shows the solution worked and data was retrieved
Note: Debug output is automatically enabled by the test script. You don't need to set DEBUG_CAPTCHA=1 manually.
Manual Testing (Advanced)
You can also test the server manually by sending MCP protocol messages via stdio, though this requires understanding the MCP protocol format. For most users, MCP Inspector (above) is the recommended testing method.