
Superargs 允许在运行时设置MCP服务器参数。 为任何人提供论据 MCP服务器 在与助手交互期间,而不是在初始设置期间。 无论是身份验证令牌、环境变量还是其他CLI参数,Superargs都可以在运行时轻松提供。
由支持 superperface.ai, 超级机器.ai 和 超级公司.ai.
安装与使用
通过运行Superargs npx:
npx -y superargs --stdio "npx -y @modelcontextprotocol/server-postgres {{databaseUrl}}"--stdio:Shell命令,用于运行stdio MCP服务器,其args在运行时以以下形式替换{{argName}}.--update-args-tool-name:(可选)用于更新/重新启动参数的工具的自定义名称。默认为update_args.
参数
Args在 --stdio 命令表示为 {{argName}}例如:
npx -y superargs --stdio "GITHUB_PERSONAL_ACCESS_TOKEN={{githubToken}} npx -y @modelcontextprotocol/server-github"在此命令中:
{{githubToken}}是一个参数,可以在运行时使用update_args工具(或自定义工具名称,如果指定)。
一旦开始
- 初始状态:开始时,MCP服务器将不会设置任何参数。
- 如果底层MCP stdio服务器可以在没有args的情况下启动,它将尝试在没有args时启动,以提供工具列表和其他MCP服务器功能。
如果它可以在没有args的情况下工作,唯一的区别就是它将有一个额外的 update_args 更新args的工具。
- 如果服务器需要args启动,则在设置args之前它不会启动,并且它只会有 update_args 工具。
所有其他MCP服务器函数将返回空列表或错误消息。
- 当使用update_args时:服务器将使用新的args重新启动,所有MCP服务器功能都将可用。
- 更新参数的工具:默认情况下,命名为
update_args,允许更新参数并重新启动子MCP服务器。
例子
GitHub MCP服务器的另一个例子:
npx -y superargs --stdio "GITHUB_PERSONAL_ACCESS_TOKEN={{githubToken}} npx -y @modelcontextprotocol/server-github"对于SQLite MCP服务器:
npx -y superargs --stdio "uv mcp-server-sqlite --db-path={{dbPath}}"MCP检查器示例
- 使用Superargs运行MCP检查器:
npx @modelcontextprotocol/inspector npx -y superargs --stdio "npx -y @modelcontextprotocol/server-postgres {{databaseUrl}}"此命令启动Superargs并将其连接到MCP Inspector,使您能够通过Inspector界面管理PostgreSQL MCP服务器。
- 管理MCP服务器:
使用MCP检查器,您可以通过Superargs列出工具、运行提示、访问资源或执行其他MCP操作。
运作原理
Superargs 充当MCP服务器周围的中间件包装器,允许在运行时动态注入args。它将所有MCP请求(工具、提示、资源、消息、根等)转发到底层子服务器,并引入了一个额外的工具来管理这些参数。
主要特点
- 动态精氨酸注射液:在运行时将MCP服务器命令中的占位符替换为实际值。
- 可自定义工具名称:通过重命名arg更新工具
--update-args-tool-name以适应您的工作流程。 - 全面的MCP支持:将所有MCP请求转发到子服务器,包括工具、提示、资源、消息和根。
- 更改通知:发送通知,如
sendToolListChanged,sendPromptListChanged,以及sendResourceUpdated更新args时,确保连接的客户端知道更改。
主要用例
Superargs 允许用户在与AI助手交互期间动态设置和配置MCP服务器。 用户可以通过对话即时提供这些详细信息,而不是要求管理员为服务器预先配置必要的参数和凭据,从而增强灵活性并减少设置开销。
安全地提供敏感参数
在指定的命令中将参数传递给子MCP服务器。没有存储任何内容。
如果您不希望LLM看到这些参数,请通过服务器客户端直接调用MCP服务器(因此调用它的不是助手,而是您的代码)。
为什么选择MCP?
模型上下文协议 规范人工智能工具交换数据的方式。如果您的MCP服务器需要动态参数,如身份验证令牌或配置路径, Superargs 允许您在运行时提供它们,而无需更改服务器的代码。这实现了灵活的部署、远程访问和更容易的调试。
贡献
许可证
______________________________________________________________________
