table

Pack: osrm · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/table for the schema, then POST the same URL with its arguments for the data.

Distance / duration matrix between source and destination points.

Parameters

NameTypeRequiredDescription
coordinatesstringyesSemicolon-separated lon,lat pairs
profilestringnocar | bike | foot (default car)
sourcesstringnoIndices into coordinates that are origins (default all)
destinationsstringnoIndices into coordinates that are destinations (default all)
annotationsstringnoduration (default) | distance | duration,distance

Example call

Arguments

{
  "coordinates": "-122.42,37.77;-122.39,37.78;-122.41,37.80"
}

curl

curl -X POST https://gateway.pipeworx.io/osrm/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"table","arguments":{"coordinates":"-122.42,37.77;-122.39,37.78;-122.41,37.80"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('table', {
  "coordinates": "-122.42,37.77;-122.39,37.78;-122.41,37.80"
});

More examples

{
  "coordinates": "-122.42,37.77;-122.39,37.78;-122.41,37.80",
  "profile": "foot",
  "sources": "0",
  "destinations": "1;2",
  "annotations": "distance"
}

Response shape

FieldTypeDescription
codestringStatus code (Ok or error)
durationsarrayMatrix of durations in seconds
distancesarrayMatrix of distances in meters (if requested)
sourcesarrayArray of source waypoint objects
destinationsarrayArray of destination waypoint objects
Full JSON Schema
{
  "type": "object",
  "description": "Distance/duration matrix response from OSRM",
  "properties": {
    "code": {
      "type": "string",
      "description": "Status code (Ok or error)"
    },
    "durations": {
      "type": "array",
      "description": "Matrix of durations in seconds",
      "items": {
        "type": "array",
        "items": {
          "type": "number"
        }
      }
    },
    "distances": {
      "type": "array",
      "description": "Matrix of distances in meters (if requested)",
      "items": {
        "type": "array",
        "items": {
          "type": "number"
        }
      }
    },
    "sources": {
      "type": "array",
      "description": "Array of source waypoint objects",
      "items": {
        "type": "object",
        "properties": {
          "hint": {
            "type": "string"
          },
          "distance": {
            "type": "number"
          },
          "name": {
            "type": "string"
          },
          "location": {
            "type": "array"
          }
        }
      }
    },
    "destinations": {
      "type": "array",
      "description": "Array of destination waypoint objects",
      "items": {
        "type": "object",
        "properties": {
          "hint": {
            "type": "string"
          },
          "distance": {
            "type": "number"
          },
          "name": {
            "type": "string"
          },
          "location": {
            "type": "array"
          }
        }
      }
    }
  }
}

Connect

Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://pipeworx.io/mcp"
    }
  }
}
Connect to just the osrm pack
{
  "mcpServers": {
    "osrm": {
      "url": "https://gateway.pipeworx.io/osrm/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build October 5, 2026