MCP.so
Sign In

urfave-cli-mcp

@thepwagner

About urfave-cli-mcp

Expose

Basic information

Category

Developer Tools

License

MIT license

Runtime

go

Transports

stdio

Publisher

thepwagner

Config

No standard config provided

This server doesn't expose a parseable MCP config block in its README. See the repository for install instructions.

Repository

Tools

No tools detected

We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.

Overview

What is urfave-cli-mcp?

urfave-cli-mcp is a Go package that reuses a urfave/cli application as a Model Context Protocol (MCP) server. It crawls the application's Command tree and exposes subcommands as MCP tools, supporting descriptions, flags, default values, and required flags. It is intended for developers who want to turn query-only CLIs into MCP servers with minimal code, or to prototype MCP tools as a CLI before exposing them to an MCP client.

How to use urfave-cli-mcp?

Add the urfaveclimcp.NewMCPCommand(App) command to your application's Commands slice, as shown in the example. The package will then handle the MCP protocol, exposing subcommands as tools that are invoked by forking the current process and returning stdout as the result.

Key features of urfave-cli-mcp

  • Crawls the entire urfave/cli Command tree.
  • Exposes subcommands as MCP tools automatically.
  • Supports flag descriptions, default values, and required flags.
  • Invokes tools by forking the current process.
  • Returns stdout as the tool result.
  • Enables one‑line reuse of query‑only CLIs as MCP servers.

Use cases of urfave-cli-mcp

  • Reuse an existing query‑only CLI as an MCP server by adding a single command.
  • Prototype new MCP tools as a CLI application, then switch to MCP mode without rewriting.
  • Allow MCP clients to interact with command‑line tools that have complex flag configurations.

FAQ from urfave-cli-mcp

How do I integrate urfave-cli-mcp into my Go app?

Add the MCP command to your app's Commands slice: App.Commands = append(App.Commands, urfaveclimcp.NewMCPCommand(App)). The example in the README shows the full setup.

Can I use ur

Comments

More Developer Tools MCP servers