{"data":{"slug":"adhikasp-mcp-client-cli","name":"mcp-client-cli","tagline":"A simple CLI to run LLM prompt and implement MCP client.","github_url":"https://github.com/adhikasp/mcp-client-cli","owner":"adhikasp","repo":"mcp-client-cli","owner_avatar_url":"https://avatars.githubusercontent.com/u/6151302?v=4","primary_language":"Python","stars":678,"forks":81,"topics":["langchain","llm","mcp","model-context-protocol"],"archived":false,"github_pushed_at":"2025-12-02T10:00:38+00:00","maintenance_label":"Slowing","url":"https://www.graphcanon.com/tools/adhikasp-mcp-client-cli","markdown_url":"https://www.graphcanon.com/tools/adhikasp-mcp-client-cli.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/adhikasp-mcp-client-cli","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=adhikasp-mcp-client-cli","description":"A simple CLI to run LLM prompt and implement MCP client.","homepage_url":null,"license":"MIT","open_issues":22,"watchers":6,"ai_summary":"This repository contains a command-line interface (CLI) tool written in Python for interacting with language models using prompts and implementing the Model Context Protocol (MCP). It leverages frameworks like LangChain for its operations.","readme_excerpt":"# MCP CLI client\n\nA simple CLI program to run LLM prompt and implement [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) client.\n\nYou can use any [MCP-compatible servers](https://github.com/punkpeye/awesome-mcp-servers) from the convenience of your terminal.\n\nThis act as alternative client beside Claude Desktop. Additionally you can use any LLM provider like OpenAI, Groq, or local LLM model via [llama](https://github.com/ggerganov/llama.cpp).\n\n\n\n## Setup\n\n1. Install via pip:\n   ```bash\n   pip install mcp-client-cli\n   ```\n\n2. Create a `~/.llm/config.json` file to configure your LLM and MCP servers:\n   ```json\n   {\n     \"systemPrompt\": \"You are an AI assistant helping a software engineer...\",\n     \"llm\": {\n       \"provider\": \"openai\",\n       \"model\": \"gpt-4\",\n       \"api_key\": \"your-openai-api-key\",\n       \"temperature\": 0.7,\n       \"base_url\": \"https://api.openai.com/v1\"  // Optional, for OpenRouter or other providers\n     },\n     \"mcpServers\": {\n       \"fetch\": {\n         \"command\": \"uvx\",\n         \"args\": [\"mcp-server-fetch\"],\n         \"requires_confirmation\": [\"fetch\"],\n         \"enabled\": true,  // Optional, defaults to true\n         \"exclude_tools\": []  // Optional, list of tool names to exclude\n       },\n       \"brave-search\": {\n         \"command\": \"npx\",\n         \"args\": [\"-y\", \"@modelcontextprotocol/server-brave-search\"],\n         \"env\": {\n           \"BRAVE_API_KEY\": \"your-brave-api-key\"\n         },\n         \"requires_confirmation\": [\"brave_web_search\"]\n       },\n       \"youtube\": {\n         \"command\": \"uvx\",\n         \"args\": [\"--from\", \"git+https://github.com/adhikasp/mcp-youtube\", \"mcp-youtube\"]\n       }\n     }\n   }\n   ```\n\n   Note:\n   - See [CONFIG.md](CONFIG.md) for complete documentation of the configuration format\n   - Use `requires_confirmation` to specify which tools need user confirmation before execution\n   - The LLM API key can also be set via environment variables `LLM_API_KEY` or `OPENAI_API_KEY`\n   - The config file can be placed in either `~/.llm/config.json` or `$PWD/.llm/config.json`\n   - You can comment the JSON config file with `//` if you like to switch around the configuration\n\n3. Run the CLI:\n   ```bash\n   llm \"What is the capital city of North Sumatra?\"\n   ```\n\n## Usage\n\n### Basic Usage\n\n```bash\n$ llm What is the capital city of North Sumatra?\nThe capital city of North Sumatra is Medan.\n```\n\nYou can omit the quotes, but be careful with bash special characters like `&`, `|`, `;` that might be interpreted by your shell.\n\nYou can also pipe input from other commands or files:\n\n```bash\n$ echo \"What is the capital city of North Sumatra?\" | llm\nThe capital city of North Sumatra is Medan.\n\n$ echo \"Given a location, tell me its capital city.\" > instructions.txt\n$ cat instruction.txt | llm \"West Java\"\nThe capital city of West Java is Bandung.\n```\n\n### Image Input\n\nYou can pipe image files to analyze them with multimodal LLMs:\n\n```bash\n$ cat image.jpg | llm \"What do you see in this image?\"\n[LLM will analyze and describe the image]\n\n$ cat screenshot.png | llm \"Is there any error in this screenshot?\"\n[LLM will analyze the screenshot and point out any errors]\n```\n\n### Using Prompt Templates\n\nYou can use predefined prompt templates by using the `p` prefix followed by the template name and its arguments:\n\n```bash\n# List available prompt templates\n$ llm --list-prompts\n\n# Use a template\n$ llm p review  # Review git changes\n$ llm p commit  # Generate commit message\n$ llm p yt url=https://youtube.com/...  # Summarize YouTube video\n```\n\n### Triggering a tool\n\n```bash\n$ llm What is the top article on hackernews today?\n\n================================== Ai Message ==================================\nTool Calls:\n  brave_web_search (call_eXmFQizLUp8TKBgPtgFo71et)\n Call ID: call_eXmFQizLUp8TKBgPtgFo71et\n  Args:\n    query: site:news.ycombinator.com\n    count: 1\nBrave Search MCP Server running on stdio\n\n# If the tool requires confirmation, you'll be prompted:\nConfirm tool call? [y/n]: y\n\n=====================","github_created_at":"2024-11-27T14:21:00+00:00","created_at":"2026-07-11T11:54:55.867542+00:00","updated_at":"2026-07-27T18:00:05.032814+00:00","categories":[{"slug":"inference-serving","name":"Inference & Serving","url":"https://www.graphcanon.com/categories/inference-serving","markdown_url":"https://www.graphcanon.com/categories/inference-serving.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/inference-serving"},{"slug":"llm-frameworks","name":"LLM Frameworks","url":"https://www.graphcanon.com/categories/llm-frameworks","markdown_url":"https://www.graphcanon.com/categories/llm-frameworks.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/llm-frameworks"}],"tags":[{"slug":"langchain","name":"langchain"},{"slug":"llm","name":"llm"},{"slug":"mcp","name":"mcp"},{"slug":"model-context-protocol","name":"model-context-protocol"}],"trust":{"provenance":{"is_fork":false,"github_id":895079444,"owner_type":"User","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-07-27T18:00:04.125Z","maintenance":{"label":"Slowing","score":36,"methodology":"github_public_v1","releases_90d":0,"days_since_push":237,"last_release_at":"2025-12-02T09:09:32Z"},"security_summary":{"status":"no_manifest","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-11T11:54:57.430Z","medium_count":0,"scan_profile":"mcp_manifest","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-07-27T18:00:04.648Z"},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-07-27T18:00:04.648Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-07-27T18:00:04.648Z"},"license_spdx":{"value":"MIT","source":"github.license","observed_at":"2026-07-27T18:00:04.648Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":{"notes":["Requires Python environment to run; specific dependencies may be needed as per the tool's configuration."]},"constraints":null,"when_to_use":["- When you need a specific platform to interact with MCP clients directly from the command line, offering a streamlined option for integrating LLMs.","- If your project involves using Model Context Protocol specifically, mcp-client-cli provides direct and easy access without requiring deep integration."],"when_not_to_use":["- Avoid if you prefer a more generic CLI tool that supports a wide range of frameworks beyond MCP; mcp-client-cli is tailored toward MCP client interactions.","- Not suitable for environments where the focus is on non-LLM tasks, as its functionality is centered around prompting and executing LLMs with MCP support."],"source":"enrich:decision_facts","observed_at":"2026-07-12T03:27:50.000Z"},"constraint_facets":null,"decision_summary":[{"label":"Requirements","value":"Requires Python environment to run; specific dependencies may be needed as per the tool's configuration."},{"label":"Adopt for","value":"A specialized command-line interface (CLI) tool focused on running Large Language Model (LLM) prompts and establishing a MCP (Model Context Protocol) client."},{"label":"License detail","value":"MIT License allows free usage, modification, and distribution, provided that copyright notices and license terms are included."}]}}