Other MCP Clients

Station works with any MCP-compatible client. This page covers integration with popular AI coding tools.

Supported Clients

ClientConnectionGuide
Claude Desktopstdio / HTTPClaude Desktop Setup
Claude Codestdio / HTTPClaude Code Setup
CursorstdioSee below
WindsurfstdioSee below
ZedstdioSee below
Customstdio / HTTPSee below

Claude Code

Claude Code (Anthropic’s CLI) has full Station support with an optional skills plugin.

Quick Setup:

Create .mcp.json in your project root:

{
  "mcpServers": {
    "station": {
      "command": "stn",
      "args": ["stdio"]
    }
  }
}

Full Guide: Claude Code Setup

Cursor

Cursor supports MCP via its settings.

Configuration

  1. Open Cursor Settings (Cmd+, / Ctrl+,)
  2. Search for “MCP” or navigate to Features > MCP
  3. Add Station server:
{
  "mcp": {
    "servers": {
      "station": {
        "command": "stn",
        "args": ["stdio"]
      }
    }
  }
}

Verification

In Cursor chat, ask:

What Station tools are available?

Windsurf

Windsurf uses similar MCP configuration.

Configuration

Add to Windsurf settings:

{
  "mcpServers": {
    "station": {
      "command": "stn",
      "args": ["stdio"]
    }
  }
}

Zed

Zed editor supports MCP through its assistant configuration.

Configuration

Edit ~/.config/zed/settings.json:

{
  "assistant": {
    "mcp_servers": {
      "station": {
        "command": "stn",
        "args": ["stdio"]
      }
    }
  }
}

Custom MCP Clients

stdio Mode

For local integrations, use stdio mode:

{
  "command": "stn",
  "args": ["stdio"]
}

The client should:

  1. Spawn stn stdio as a child process
  2. Send JSON-RPC messages via stdin
  3. Read JSON-RPC responses from stdout

HTTP Mode

For remote or web-based clients:

Start Station server:

stn serve --mcp-port 8586

Connect via HTTP:

POST http://localhost:8586/mcp
Content-Type: application/json

{"jsonrpc":"2.0","method":"tools/list","id":1}

Protocol Reference

Station implements the full MCP protocol:

Initialization:

{"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{}},"id":1}

List Tools:

{"jsonrpc":"2.0","method":"tools/list","id":2}

Call Tool:

{
  "jsonrpc":"2.0",
  "method":"tools/call",
  "params":{
    "name":"list_agents",
    "arguments":{"environment_id":"1"}
  },
  "id":3
}

Quick Reference

{
  "command": "stn",
  "args": ["stdio"]
}

Pros:

  • No server to manage
  • Direct process communication
  • Works offline

Cons:

  • Local only
  • One connection per process

HTTP Mode

# Start server
stn serve --mcp-port 8586
{
  "url": "http://localhost:8586/mcp"
}

Pros:

  • Remote access possible
  • Multiple concurrent clients
  • Works in containers

Cons:

  • Requires running server
  • Network configuration needed

Troubleshooting

Client Not Connecting

  1. Test Station directly:

    echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | stn stdio
  2. Check Station is in PATH:

    which stn
    stn --version
  3. Verify permissions:

    chmod +x $(which stn)

Tools Not Appearing

  1. Check environment exists:

    stn env list
  2. Sync environment:

    stn sync default
  3. Verify MCP tools:

    stn mcp tools

HTTP Mode Issues

  1. Check server is running:

    curl http://localhost:8586/mcp
  2. Check port availability:

    netstat -tlnp | grep 8586
  3. Try different port:

    stn serve --mcp-port 8587

Next Steps