MCP Terminal

by geli2001

MCP Client 10 stars
  • other

run and use mcp servers in your terminal

About

What is MCP Terminal?

MCP Terminal is a terminal‑based interactive client for Model Context Protocol (MCP) servers. It runs on any platform with Node.js and is designed for developers who want to connect AI models to external tools and data sources through MCP.

How to use MCP Terminal?

Install it globally with npm install -g mcp-terminal, then run mcp-terminal configure to open your default editor and define one or more MCP servers in a JSON configuration file. After configuring, start the server with mcp-terminal start and begin an interactive chat session with mcp-terminal chat. The chat requires an OpenAI API key set via the OPENAI_API_KEY environment variable or a .env file.

Key features of MCP Terminal

- Connect to multiple MCP servers simultaneously
- Interactive terminal for sending messages to AI models
- Support for both stdio and SSE transports
- Easy configuration management via a JSON file
- Switch between connected servers during a session

Use cases of MCP Terminal

- Interactively chat with an AI model that can use MCP tools to answer questions and perform actions
- Manage and test multiple MCP server configurations from a single terminal interface
- Explore how AI models interact with external APIs and data sources through MCP

FAQ from MCP Terminal

What is the Model Context Protocol (MCP)?

MCP is an open standard protocol that connects AI language models with external tools, data sources, and APIs. It allows models to extend their capabilities beyond training data by accessing real‑time information and performing actions.

What do I need to use the chat feature?

You need an OpenAI API key (set as OPENAI_API_KEY environment variable or in a .env file) and at least one configured MCP server.

What transport types does MCP Terminal support?

It supports both stdio (standard input/output) and SSE (Server‑Sent Events) transports. Servers can be configured with just a command for stdio, just a URL for remote servers, or both for locally‑started SSE servers.

How do I configure MCP servers?

Run mcp-terminal configure. This opens your default editor with a JSON configuration file where you define server entries with command and/or url fields.

What license does MCP Terminal use?

The project is licensed under the MIT license.

Details

Author
geli2001
GitHub stars
10
Category
other
Repository
geli2001/mcp-terminal

MCP Terminal

A terminal-based interactive client for Model Context Protocol (MCP) servers.

Installation

npm install -g mcp-terminal

Features

- Connect to multiple MCP servers simultaneously
- Interactive terminal for sending messages to models
- Easy configuration management
- Support for both stdio and SSE transports
- Switch between connected servers

Configuration

Before using MCP CLI, you need to configure at least one server:

mcp-terminal configure

This will open your default editor with a configuration file where you can define MCP servers.

Example configuration:

{
  "mcpServers": {
    "local-sse": {
      "command": "npx @anthropic-ai/mcp-server@latest",
      "args": [],
      "url": "http://localhost:8765/sse"
    },
    "local-stdio": {
      "command": "npx @anthropic-ai/mcp-server@latest",
      "args": ["--stdio"]
    },
    "shopify": {
      "command": "npx",
      "args": [
        "shopify-mcp",
        "--accessToken",
        "your-shopify-access-token",
        "--domain",
        "your-store.myshopify.com"
      ]
    }
  }
}

Notice that servers can be configured with:

- Both command and url for servers that need to be started locally but use SSE transport
- Just command for servers that use stdio transport
- Just url for connecting to remote servers

Usage

Configure MCP servers

mcp-terminal configure

This will open your default editor to configure MCP servers.

Start MCP server

mcp-terminal start

This will start the configured MCP server. You can have multiple servers configured.

Interactive Chat with AI using MCP tools

mcp-terminal chat

This starts an interactive chat session with an AI model that can use MCP tools from your configured server. The LLM can interact with the MCP server tools to help answer your questions and perform actions.

You can specify which server to use:

mcp-terminal chat -s local-stdio

Server Types

The chat command supports two types of server configurations:

1. URL-based servers - Servers with a URL configured will connect via HTTP/SSE
2. Command-based servers - Servers with only a command will be started automatically and use stdio transport

Requirements

To use the chat feature, you need:

1. An OpenAI API key (set as OPENAI_API_KEY environment variable or in a .env file)
2. A configured MCP server (configure using mcp-terminal configure)

Example usage

$ mcp-terminal chat
Starting chat session with LLM...
Type 'exit' or 'quit' to end the session.

Using MCP server: local-stdio
Starting MCP server: local-stdio
Server is running...
Connected to MCP server via stdio transport

You: What's the weather in New York today?
AI is thinking...
AI: I'd like to check the weather in New York for you, but I need to use a tool to get that information.

I attempted to use a weather tool, but we're currently connected via stdio transport, which doesn't allow me to directly access external tools. In a full implementation with the appropriate tools configured, I would be able to fetch real-time weather data for New York.

To get the actual weather in New York today, you could:
1. Use a different MCP server configured with HTTP/SSE transport and weather tools
2. Check a weather website or app directly
3. Ask me a different question I can answer without external tools

Can I help you with something else?

You: What is MCP?
AI is thinking...
AI: MCP stands for Model Context Protocol. It's an open standard protocol designed to connect AI language models (LLMs) like me with external tools, data sources, and APIs.

Here's what makes MCP important:

1. It allows AI models to extend their capabilities beyond their training data by accessing external tools and real-time information.

2. It provides a standardized way for developers to create tools that AI models can interact with, making integration simpler.

3. It enables AI assistants to perform actions in the real world - things like searching the web, accessing databases, running code, or interacting with services like the weather example you asked about earlier.

4. It can work through different transport methods, such as HTTP/SSE (Server-Sent Events) or stdio (standard input/output), depending on the implementation.

The MCP-terminal tool you're using right now is a client that helps manage MCP servers and facilitates communication between users, AI models, and the tools provided by those servers.

You: exit

License

MIT