Get the FREE Ultimate OpenClaw Setup Guide →

tak

Model Context Protocol (MCP) server for TAK Server integration with geospatial support

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio jfuginay-tak-server-mcp npx @skyfi/tak-server-mcp \
  --env TAK_SERVER_URL="https://your-tak-server.com" \
  --env TAK_SERVER_API_TOKEN="your-token"

How to use

TAK Server MCP provides a bridge between TAK Server and AI systems, exposing a suite of geospatial and real-time tools as MCP tools. The server supports multiple transports (stdio, HTTP+SSE, WebSocket) and offers a comprehensive set of TAK-related operations such as spatial queries, distance calculations, geofence management, CoT event handling, and mission/alert workflows. You can access these tools through MCP clients (e.g., LangChain MCPTool, Anthropic SDK MCPClient) and invoke individual tools like tak_spatial_query, tak_calculate_distance, tak_find_nearest, tak_create_geofence, tak_get_cot_events, tak_send_cot_event, tak_subscribe_events, tak_get_entities, tak_get_missions, tak_get_alerts, tak_send_emergency, and tak_manage_data_packages. The server also supports authentication methods (OAuth 2.0, API tokens, certificates), caching, and real-time subscriptions via WebSocket for responsive AI agents.

To use the server, configure a TAK Server connection (URL, API token, and optional client certs) and choose a transport (stdio for local CLI, http/websocket for remote clients). Run the MCP server via the included node package and point your MCP clients to the configured server port. Tools can be enabled or disabled in the config under the tools.enabledTools array, allowing you to tailor the capabilities exposed to your AI workflows.

How to install

Prerequisites:

  • Node.js v18 or newer installed on your system
  • npm (comes with Node.js) or npm/yarn as preferred
  • Access to a TAK Server instance (Official TAK Server, FreeTAKServer, or taky) reachable from the MCP server

Installation steps:

  1. Install the MCP package from npm (or install from source and build if desired):

    npm install @skyfi/tak-server-mcp
    
  2. Verify installation and build (if building from source):

    # If you cloned the repo and want to build
    git clone https://github.com/skyfi/tak-server-mcp.git
    cd tak-server-mcp
    npm install
    npm run build
    
  3. Run the MCP server using the recommended npx example (adjust environment variables as needed):

    # Start via npx using the published package
    npx @skyfi/tak-server-mcp
    
  4. Optional: run via Docker

    docker pull skyfi/tak-server-mcp:latest
    docker run -it --rm \
      -e TAK_SERVER_URL=https://your-tak-server.com \
      -e TAK_SERVER_API_TOKEN=your-token \
      skyfi/tak-server-mcp:latest
    
  5. Create a configuration file (config.json) to customize MCP transport, ports, and enabled tools as needed, and run with the config option if supported by the package.

    {
      "takServer": {
        "url": "https://your-tak-server.com",
        "apiToken": "your-token",
        "verifySsl": true
      },
      "mcp": {
        "transport": "stdio",
        "port": 3000
      },
      "tools": {
        "enabledTools": ["tak_get_cot_events", "tak_spatial_query"]
      }
    }
    

Additional notes

Environment variables are a common way to configure connections to TAK Server and MCP behavior. Recommended variables include TAK_SERVER_URL, TAK_SERVER_API_TOKEN, and optional TLS-related settings. When running in containers or shared environments, ensure that network access to the TAK Server is permitted and that the MCP port (default 3000) is exposed to clients. If you encounter authentication issues, verify that the API token has the necessary scopes and that SSL validation matches your TAK Server instance (verifySsl flag or environment). For debugging, enable verbose logs if available and test basic tool calls (e.g., tak_get_entities) before enabling the full tool suite. The server supports multiple transports; choose stdio for local workflows, HTTP+SSE for web clients, or WebSocket for real-time integration.

Related MCP Servers

Sponsor this space

Reach thousands of developers