1.1.9 • Published 6 months ago

@agent-infra/mcp-server-commands v1.1.9

Weekly downloads
-
License
-
Repository
github
Last release
6 months ago

Commands MCP Server

NPM Downloads

Install MCP Server

A Model Context Protocol (MCP) server that provides execuate arbitrary commands.

npm.io

Requirements

  • Node.js 18 or newer
  • VS Code, Cursor, Windsurf, Claude Desktop or any other MCP client

Getting started

Local (Stdio)

First, install the Commands MCP server with your client. A typical configuration looks like this:

{
  "mcpServers": {
    "commands": {
      "command": "npx",
      "args": [
        "@agent-infra/mcp-server-commands@latest"
      ]
    }
  }
}

You can also install the Commands MCP server using the VS Code CLI:

# For VS Code
code --add-mcp '{"name":"commands","command":"npx","args":["@agent-infra/mcp-server-commands@latest"]}'

After installation, the Commands MCP server will be available for use with your GitHub Copilot agent in VS Code.

Go to Cursor Settings -> MCP -> Add new MCP Server. Name to your liking, use command type with the command npx @agent-infra/mcp-server-commands. You can also verify config or add command like arguments via clicking Edit.

{
  "mcpServers": {
    "commands": {
      "command": "npx",
      "args": [
        "@agent-infra/mcp-server-commands@latest"
      ]
    }
  }
}

Follow Windsuff MCP documentation. Use following configuration:

{
  "mcpServers": {
    "commands": {
      "command": "npx",
      "args": [
        "@agent-infra/mcp-server-commands@latest"
      ]
    }
  }
}

Follow the MCP install guide, use following configuration:

{
  "mcpServers": {
    "commands": {
      "command": "npx",
      "args": [
        "@agent-infra/mcp-server-commands@latest"
      ]
    }
  }
}

Remote (SSE / Streamable HTTP)

At the same time, use --port $your_port arg to start the browser mcp can be converted into SSE and Streamable HTTP Server.

# normal run remote mcp server
npx @agent-infra/mcp-server-commands --port 8089

You can use one of the two MCP Server remote endpoint:

  • Streamable HTTP(Recommended): http://127.0.0.1::8089/mcp
  • SSE: http://127.0.0.1::8089/sse

And then in MCP client config, set the url to the SSE endpoint:

{
  "mcpServers": {
    "commands": {
      "url": "http://127.0.0.1::8089/sse"
    }
  }
}

url to the Streamable HTTP:

{
  "mcpServers": {
    "commands": {
      "type": "streamable-http", // If there is MCP Client support
      "url": "http://127.0.0.1::8089/mcp"
    }
  }
}

In-memory call

If your MCP Client is developed based on JavaScript / TypeScript, you can directly use in-process calls to avoid requiring your users to install the command-line interface to use Commands MCP.

import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { InMemoryTransport } from '@modelcontextprotocol/sdk/inMemory.js';

// type: module project usage
import { createServer } from '@agent-infra/mcp-server-commands';
// commonjs project usage
// const { createServer } = await import('@agent-infra/mcp-server-commands')

const client = new Client(
  {
    name: 'test commands client',
    version: '1.0',
  },
  {
    capabilities: {},
  },
);

const server = createServer();
const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();

await Promise.all([
  client.connect(clientTransport),
  server.connect(serverTransport),
]);

// list tools
const result = await client.listTools();
console.log(result);

// call tool
const toolResult = await client.callTool({
  name: 'run_script',
  arguments: {
    interpreter: 'node',
    script: 'console.log(1+1);',
  },
});
console.log(toolResult);

Developement

Access http://127.0.0.1:6274/:

npm run dev
1.1.9

6 months ago

1.1.8

6 months ago

1.1.7

6 months ago

1.1.6

6 months ago

1.1.6-beta.10

6 months ago

1.1.6-beta.9

6 months ago

1.1.6-beta.8

6 months ago

1.1.6-beta.7

6 months ago

1.1.6-beta.6

6 months ago

1.1.6-beta.5

6 months ago

1.1.6-beta.4

6 months ago

1.1.6-beta.3

6 months ago

1.1.6-beta.0

6 months ago

1.1.6-beta.2

6 months ago

1.1.6-beta.1

6 months ago

1.1.5

6 months ago

1.1.4

6 months ago

1.1.3

6 months ago

1.1.2

6 months ago

1.1.1

6 months ago

1.1.1-beta.3

6 months ago

1.1.1-beta.2

6 months ago

1.1.1-beta.1

6 months ago

1.1.1-beta.0

6 months ago

1.1.0

6 months ago

1.0.1-beta.15

6 months ago

1.0.1-beta.14

7 months ago

1.0.1-beta.13

7 months ago

1.0.1-beta.12

7 months ago

1.0.1-beta.11

7 months ago

1.0.1-beta.10

7 months ago

1.0.1-beta.9

7 months ago

1.0.1-beta.8

7 months ago

1.0.1-beta.7

7 months ago

0.0.1

8 months ago