Prototype · Preview: every server in the official registry, synced every 30 minutes. Sign in with Google to write reviews.
PopNx MCPMCP servers for people who use AI · explained in plain words

Terminal49

by Terminal49version 1.1.0i★ 2 (Stars for the whole repo)iRuns in the cloud
Registry nameio.github.Terminal49/terminal49

How to install

What it does

Live ocean container and shipment tracking with ETAs, holds, fees, and last free days.

  • Connects Runs in the cloud
  • Account or key Sign in to the service when you connect (OAuth)
  • Category Developer tools

Install

Pick the AI app you use, then copy the settings.

Passed 5/5 checks · What you ask goes through the maker’s server (mcp.terminal49.com)

First: which AI do you use?

Pick your app and the steps appear below.

Works with Claude · about 2 min

No key, nothing to install · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1 · on Team/Enterprise an Owner adds it

  1. Open Claude’s Connectors page

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  2. Click “+ Add” → “Add custom connector” and fill in these 2 fields

    Copy each value into the field with the same name in Claude, then click Continue

    Name · NameTerminal49
    Remote MCP server URL · Addresshttps://mcp.terminal49.com

    Leave Authentication as Claude detected it, then click Add

  3. Turn it on in a chat

    +ConnectorsTerminal49

  4. Try it

    Use Terminal49 and tell me what you can do for me, then show me one thing

    ✓ If Claude says it is using Terminal49 or shows a Terminal49 tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with ChatGPT on business plans only

ChatGPT Business, Enterprise or Edu on the web, added by a workspace admin or owner · On Free, Plus or Pro: your ChatGPT plan cannot connect MCP yet

  1. Open ChatGPT’s add-MCP page on the web

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. Fill in the name and address

    Enter a name, paste the address under Connection, tick the risk warning and click Create as a plugin

    Name · NameTerminal49
    Connection · Addresshttps://mcp.terminal49.com
  3. Pick Terminal49 in a chat

    Start a new chat and pick Terminal49 from your plugins before typing

  4. Try it

    Use Terminal49 and tell me what you can do for me, then show me one thing

    ✓ If ChatGPT says it is using Terminal49 or shows a Terminal49 tool in the answer, you are connected

Menu names checked against OpenAI’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with Claude Code · about 2 min

No key, nothing to install

  1. Open Terminal

    Mac: press Command+Space and type Terminal · Windows: open PowerShell

  2. Paste this command and press Enter

    claude mcp add --transport http --scope user terminal49 https://mcp.terminal49.com
  3. Type /mcp in Claude Code

    You should see Terminal49 listed as connected

  4. Try it

    Use Terminal49 and tell me what you can do for me, then show me one thing

    ✓ If Claude Code says it is using Terminal49 or shows a Terminal49 tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with Cursor · about 2 min

No key, nothing to install

  1. Click this button to open Cursor

    Open in Cursor

    Cursor asks you to confirm; click Install

  2. Open the AI chat in Cursor in Agent mode

  3. Try it

    Use Terminal49 and tell me what you can do for me, then show me one thing

    ✓ If Cursor says it is using Terminal49 or shows a Terminal49 tool in the answer, you are connected

Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with VS Code · about 2 min

No key, nothing to install

  1. Click this button to open VS Code

    Open in VS Code

    VS Code asks you to confirm; click Install

  2. Open the AI chat in VS Code in Agent mode

  3. Try it

    Use Terminal49 and tell me what you can do for me, then show me one thing

    ✓ If VS Code says it is using Terminal49 or shows a Terminal49 tool in the answer, you are connected

Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Other apps that use MCP, such as Windsurf, Zed or Gemini CLI, each add servers differently. See how in the app list.

See every app that uses MCP →

Address for apps that connect over the web

Addresshttps://mcp.terminal49.com

JSON settings are under “For developers” below

Stuck? Ask people who use Terminal49💬 Discussion →
For developers: Terminal commands and JSON settings

Over the web

Claude Code

claude mcp add --transport http --scope user terminal49 https://mcp.terminal49.com

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "terminal49": {
      "url": "https://mcp.terminal49.com"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "terminal49": {
      "type": "http",
      "url": "https://mcp.terminal49.com"
    }
  }
}

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

At a glance

GitHub starsi
2 (Stars for the whole repo)
This repo holds several MCP listings; its stars count once in rankings
Downloads per weeki
Not on npm/PyPI
Connection
Runs in the cloud
Transport
streamable-http
Latest versioni
1.1.0
Published to registryi
Oct 31, 2026
Code last changedi
Nov 9, 2026
Maker
Terminal49
Registry status
Active

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Connect over the internet in

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

All apps, with pros and cons →

Related guides

What it can do

The server asks you to sign in before it lists its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 12, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account Terminal49, which owns the repo

  • ✓ Pass

    Still maintained

    Code last changed 3 days ago

  • ✓ Pass

    Has a licence

    Uses MIT

  • ✓ Pass

    Endpoint responds

    Responded in 133 ms (HTTP 401)

  • ✓ Pass

    Sign-in with OAuth

    Declares OAuth sign-in, so your AI app can take you to log in

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Discussion

Ask, share a tip or report that it does not work. Sorted by what people marked helpful.

No posts yet. Be the first to ask or share.

Posts here are written by users, not the PopNx team.

Sign in with Google to post

User reviews

No reviews yet

Sign in with Google to write a review

Compared with others in Developer toolsi

  • More stars than 0% of the other 5802 servers in this category
  • Published to the registry more recently than 65% of the other 5802 servers in this category
  • Basic checks equal to or better than 100% of the other 5802 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Terminal49 safe?

It passed 5 of 5 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

The GitHub repo last changed 3 days ago, and the latest version (1.1.0) reached the registry 12 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT Business and above.

What can I use instead?

In the same category: REA, GitHub, Serena MCP: the IDE for your agent

Others in the same category

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

REA

Reverse engineer anything from your terminal or agent with one CLI and MCP server.

by morlutoWidely used↓ 388.7K/wk★ 453.3KUpdated 18 days ago

Runs on your computer

GitHub

GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.

by githubWidely used★ 34.4KUpdated 9 days ago

Computer or cloud

Serena MCP: the IDE for your agent

A powerful toolkit for coding, providing semantic retrieval and editing capabilities.

by oraiosWidely used↓ 35.2K/wk★ 31.3KUpdated 6 months ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Terminal49 MCP Server (TypeScript)

Vercel-native Model Context Protocol server for Terminal49's API, built with TypeScript and the official MCP SDK.

@terminal49/mcp is a private workspace in this repository. Connect a client to the hosted server at https://mcp.terminal49.com (Streamable HTTP). OAuth 2.1 needs no API key: the client discovers https://auth.terminal49.com and opens a browser sign-in. Clients that can't run that flow send Authorization: Token YOUR_API_KEY. Use the Token scheme for API keys. The Bearer scheme is used for OAuth access tokens. A local stdio process reads T49_API_TOKEN instead. Build steps are in Local Development.

🚀 Quick Deploy to Vercel

  1. Click "Deploy" above
  2. Add environment variable: T49_API_TOKEN=your_token_here
  3. Deploy!
  4. Your MCP server will be available at: https://your-deployment.vercel.app/api/mcp

📦 What's Included

🛠️ Tools (30 Available)
ToolDescriptionKey Features
`search_container`Search by container#, BL, booking, or referenceFast fuzzy search
`track_container`Create tracking request and get container dataSCAC autocomplete ✨
`identify_tracking_number`Predict a number's type and carrier and check whether it is already trackedCreates nothing
`get_container`Get detailed container info with flexible data loadingOptional custom fields and party roles
`get_shipment_details`Get shipment routing, BOL, containers, portsOptional custom fields and party roles
`get_container_transport_events`Get full event timeline for a containerMilestone history
`get_supported_shipping_lines`List 40+ major carriers with SCAC codesFilterable by name/code
`get_container_route`Get ports in route order with ETAs and the current vesselPremium feature
`get_location`Get a port, terminal, or metro areaFIRMS code, address, time zone
`get_vessel`Get a vessel's position and, optionally, its projected track to a portProjection is a premium feature
`list_shipments`List shipments with filters and paginationFleet-level visibility
`list_containers`List containers with filters and paginationReturns ResourceLinks ✨
`summarize_containers`Count containers grouped by terminal, status, carrier, port, hold, or dateSame filters as list_containers
`list_parties`Find parties by company name, or read one by IDFeeds advanced_filters.customer_id and advanced_filters.parties
`list_custom_field_definitions`List the account's custom fields, their types, and enum optionsNeeds a signed-in user
`list_tracking_requests`List tracking requests and statusesAudit and monitoring
`get_tracking_request`Get one tracking request's status, failure reason, and shipmentFollow-up after tracking
`list_documents`Find documents by file name, reference, or typeNever returns extracted data or file links
`get_document`Get one document, with opt-in extracted data, source email, and download linkUntrusted content is labeled
`search_docs`Search the public Terminal49 documentationReturns links to cite
`whoami`Identify the credential, its account, the features it can use, and the session's toolsetsExplains empty or unauthorized results
`set_party_role`Attach, replace, or detach a party (such as the drayage carrier) on containers or shipmentsDestructive write, only on request
`set_custom_field`Set or clear one of the account's custom fields on containers or shipmentsDestructive write, only on request
`search_importers`Find US importers by name, by what they import, or bothTrade intelligence, per account
`get_importer_profile`One importer's totals, monthly series, ports, origins, carriers, and productsTrade intelligence, per account
`search_commodities`Turn a product description or HS prefix into four-digit HS codesTrade intelligence, per account
`rank_importers`Rank importers by containers for a product, US port, or origin countryTrade intelligence, per account
`get_trade_trends`Time series of containers, TEUs, or estimated valueTrade intelligence, per account
`get_trade_breakdown`Nested totals over one to three dimensionsTrade intelligence, per account
`get_trade_data_coverage`Where trade data starts, the latest and last full monthTrade intelligence, per account
🎯 Prompts (3 Workflows)
PromptDescriptionUse Case
`track-shipment`Track container with optional carrierQuick tracking start (SCAC autocomplete ✨)
`check-demurrage`Analyze demurrage/detention riskLFD calculations
`analyze-delays`Identify delays and root causesTimeline analysis

The track-shipment prompt's carrier argument supports MCP completions (completion/complete): suggestions are sourced live from get_supported_shipping_lines, filtered by what the user has typed, and returned as SCAC codes.

📚 Resources
  • ✅ `terminal49://docs/milestone-glossary` - Complete milestone reference guide
  • ✅ `terminal49://docs/mcp-query-guidance` - Internal tool-routing hints
  • ✅ `terminal49://container/{id}` - Dynamic container data access (also the target of list_containers ResourceLinks)
🧭 Server Instructions

The server advertises MCP instructions (a server-level operating guide) at initialize time: it explains the ocean container/shipment tracking domain, key vocabulary (SCAC, BOL/booking, POL/POD, LFD, demurrage, holds), the read tools vs the single write tool (track_container), and the canonical tool-chaining order.

🔗 ResourceLinks (context reduction)

list_containers returns MCP resource_link content blocks — one per container row — that point at the registered terminal49://container/{id} resource. Clients can render the compact list and resolve full per-container detail on demand via resources/read, instead of paying for every container's full payload up front.

🙈 Content Audience Annotations

Tool results separate the human-readable answer from agent-steering metadata. The steering block (presentation guidance + suggested follow-up tools, derived from the _response_contract) is tagged with annotations: { audience: ['assistant'] } so spec-aware clients can hide it from end users, while the answer block stays user-visible.

✨ Current Features (v1.0.0 - Phase 1 & 2.1 Complete)
✅ Modern McpServer API
  • High-level registerTool(), registerPrompt(), registerResource() patterns
  • Type-safe Zod schemas for all tool inputs
  • Cleaner, maintainable code (71% code reduction in HTTP handler)
  • MCP SDK: @modelcontextprotocol/sdk ^1.29.0
  • Terminal49 SDK: @terminal49/sdk 0.6.0
✅ Production Transport Support
  • HTTP (streamable): POST /api/mcp - stateless, JSON responses
  • SSE was removed from the hosted deployment path in favor of Streamable HTTP transport.
✅ Sentry MCP Monitoring
  • Optional instrumentation with @sentry/node ^10.55.0
  • Captures MCP connections, tool calls, resources, prompts, performance spans, and errors when SENTRY_DSN is set
  • Tool input/output recording is disabled by default; enable it only after reviewing data handling requirements
✅ 3 Workflow Prompts
  • track-shipment: Quick container tracking with optional carrier
  • check-demurrage: Demurrage/detention risk analysis
  • analyze-delays: Journey delay identification and root cause
✅ MCP Spec Adherence
  • Server instructions: server-level operating guide advertised at initialize
  • SCAC code completions: completion/complete on the track-shipment prompt's carrier arg, sourced from get_supported_shipping_lines
  • ResourceLinks: list_containers rows link to the terminal49://container/{id} resource
  • Content audience annotations: steering metadata tagged audience: ['assistant']
🚧 Deferred (future RFC — needs a stateful transport)
  • Resource subscriptions, progress notifications, server logging, elicitation, and sampling all require a stateful (non-stateless-HTTP) transport and are out of scope here.
  • Shipment ResourceLinks await a dedicated terminal49://shipment/{id} resource template (only the container template is currently registered).

🏗️ Architecture

/api/mcp.ts                  # Vercel serverless function (HTTP)

/packages/mcp/ ├── src/ │ ├── server.ts # MCP server (stdio) │ ├── index.ts # Stdio entry point │ ├── tools/ # MCP tools │ └── resources/ # MCP resources └── package.json

The MCP server depends on the workspace package @terminal49/sdk. Build that package before you build packages/mcp.

Transport:

  • HTTP: Vercel serverless function at /api/mcp (for hosted use)
  • stdio: Local process for Claude Desktop (node packages/mcp/dist/index.js after the build in Local Development)

Store submission

The public connector URL is https://mcp.terminal49.com. Store assets and submission metadata are checked in at the repository root:

  • chatgpt-app-submission.json — locked ChatGPT listing copy and review cases
  • claude-connector-submission.json — values to enter in Claude's submission portal
  • server.json — official MCP Registry metadata used for Copilot discovery
  • public/store-icons/terminal49-{light,dark}.png — 512×512 brand icons

Cline and other clients that read a marketplace install guide from the server subfolder use packages/mcp/llms-install.md.

Verify the domain for ChatGPT

OpenAI generates a unique domain-verification token during submission. Add that exact value to the existing MCP Vercel project:

vercel env add OPENAI_APPS_CHALLENGE

After the project redeploys, verify that the well-known endpoint returns only the token you pasted:

curl --fail --silent \

https://mcp.terminal49.com/.well-known/openai-apps-challenge

Do not commit the token. The endpoint returns an empty 404 response while OPENAI_APPS_CHALLENGE is unset. Submit the connector and the values in chatgpt-app-submission.json through the OpenAI plugin submission flow.

Submit to Claude

Use the Claude Connectors Directory portal and enter the values in claude-connector-submission.json. Upload the light icon from public/store-icons/terminal49-light.png; the dark variant is available for clients that support theme-specific assets.

Publish for Copilot discovery

GitHub's Copilot registry is a curated downstream discovery surface. The root server.json is the official MCP Registry entry (io.github.Terminal49/terminal49).

.github/workflows/publish-mcp.yml publishes that file to https://registry.modelcontextprotocol.io. It runs when a push to main changes server.json, and a maintainer can start it with workflow_dispatch on main. The job authenticates with GitHub OIDC (mcp-publisher login github-oidc) and then runs mcp-publisher publish. The io.github.Terminal49 namespace is authorized for OIDC from this organization repository, so the workflow needs no registry secret.

Bump version in server.json for each metadata change. The registry keeps published versions, and a second publish of the same version is rejected.


🛠️ Local Development

Prerequisites
  • Node.js 24.22.1 or a newer Node 24 release (`.tool-versi

Only the beginning is shown; read the rest in the repo