MCP会话管理CLI工具

sMCP Gateway的命令行接口,提供安全的MCP会话管理和代码执行功能,适用于跨平台开发和测试场景。

  • by Apothic-AI
  • Rust
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Apothic-AI/smcp-cli

使用说明

smcp-cli

CLI用于 sMCP网关 -安全的MCP会话管理和执行。

特性

  • 认证 -OAuth 2.0具有安全令牌存储的PKCE流
  • MCP客户端 -探测并与任何MCP服务器(HTTP或stdio)交互
  • 会话管理 -创建、列出和管理隔离的执行会话
  • 代码执行 -在安全的沙盒容器中执行JavaScript/TypeScript
  • 桥 -将本地MCP服务器连接到云网关
  • 跨平台 -Linux、macOS(英特尔和苹果硅)、Windows

安装

从发布

从下载最新二进制文件 GitHub发布.

来源

cargo install --path .

从源代码构建

git clone https://github.com/Apothic-AI/smcp-cli.git
cd smcp-cli
cargo build --release

快速开始

# 1. Authenticate with sMCP Gateway
smcp auth login

# 2. Check authentication status
smcp auth status

# 3. List available MCP tools
smcp mcp tools

# 4. Create a session and execute code
smcp session create --ttl 60
smcp exec --session <SESSION_ID> "console.log('Hello from sMCP!')"

命令

认证

smcp auth login    # Start OAuth login flow (opens browser)
smcp auth logout   # Clear stored credentials
smcp auth status   # Check authentication status and token expiry

MCP客户端

与任何MCP服务器交互以进行测试和开发:

# List tools from the default sMCP Gateway
smcp mcp tools

# List tools from a custom MCP server
smcp mcp tools https://your-mcp-server.com/mcp

# List tools from a local stdio MCP server
smcp mcp tools "npx -y @modelcontextprotocol/server-filesystem /tmp"

# Call a tool
smcp mcp call create_session '{"ttl": 60}' --server https://smcp.apothic.ai/mcp

# List and read resources
smcp mcp resources
smcp mcp read <uri>

# List and get prompts
smcp mcp prompts
smcp mcp prompt <name> '{}'

会话管理

smcp session create              # Create a new session
smcp session create --ttl 120    # Create with 2-hour TTL
smcp session list                # List all sessions
smcp session list --format json  # List in JSON format
smcp session status <SESSION_ID> # Get session status
smcp session metrics <SESSION_ID> # Get resource metrics
smcp session delete <SESSION_ID> # Delete a session

代码执行

# Execute inline code
smcp exec "console.log('Hello')" --session <SESSION_ID>

# Execute from file
smcp exec --file script.js --session <SESSION_ID>

# Stream output
smcp exec --stream "longRunningTask()" --session <SESSION_ID>

网桥(本地MCP服务器)

将本地MCP服务器连接到sMCP云网关:

smcp bridge start              # Start the bridge daemon
smcp bridge start --foreground # Run in foreground
smcp bridge status             # Check bridge status
smcp bridge logs               # View bridge logs
smcp bridge logs --follow      # Follow logs
smcp bridge stop               # Stop the bridge

服务器配置

管理网桥的本地MCP服务器配置:

smcp server add --id myserver --command "npx" --args "-y" --args "@modelcontextprotocol/server-filesystem" --args "/tmp"
smcp server list
smcp server enable <SERVER_ID>
smcp server disable <SERVER_ID>
smcp server remove <SERVER_ID>

壳牌完井

# Bash
smcp completions bash > ~/.local/share/bash-completion/completions/smcp

# Zsh
smcp completions zsh > ~/.zfunc/_smcp

# Fish
smcp completions fish > ~/.config/fish/completions/smcp.fish

# PowerShell
smcp completions powershell > smcp.ps1

配置

配置存储在 ~/.config/smcp/config.toml.

使用系统密钥环安全地存储身份验证令牌,并回退到 ~/.smcp/tokens.json.

跨平台构建

使用以下工具为多个平台构建 穿过:

# Install cross
cargo install cross

# Build for Windows
cross build --release --target x86_64-pc-windows-gnu

# Build for Linux
cross build --release --target x86_64-unknown-linux-gnu

macOS构建需要macOS主机或GitHub操作(请参阅 .github/workflows/release.yml).

许可证

根据Apache许可证2.0版授权。看 许可证 了解详情。

版权所有2024-2025 Apothic AI