baltimore_query

Pack: data-baltimore · Endpoint: https://gateway.pipeworx.io/data-baltimore/mcp

Query any Baltimore ArcGIS layer by service path + layer id. Full ArcGIS query: where, out_fields, order_by, limit. Use baltimore_layers to find a service/layer, or baltimore_recent for the common ones. Epoch dates are converted to ISO.

Parameters

NameTypeRequiredDescription
servicestringyesArcGIS service path, e.g. “311_Customer_Service_Requests_current/FeatureServer” (or a short name: crime|service_requests|permits).
layernumberyesLayer id within the service (from baltimore_layers), e.g. 39.
wherestringnoArcGIS SQL where (default “1=1”).
out_fieldsstringnoComma-separated fields, or ”*” (default).
order_bystringnoSort clause, e.g. “CreatedDate DESC”.
limitnumbernoMax rows (default 100, max 2000).

Example call

Arguments

{
  "service": "crime",
  "layer": 0,
  "where": "OFFENSE='HOMICIDE'",
  "order_by": "CreatedDate DESC",
  "limit": 100
}

curl

curl -X POST https://gateway.pipeworx.io/data-baltimore/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"baltimore_query","arguments":{"service":"crime","layer":0,"where":"OFFENSE='\''HOMICIDE'\''","order_by":"CreatedDate DESC","limit":100}}}'

TypeScript (@pipeworx/sdk)

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

const result = await pipeworx.call('baltimore_query', {
  "service": "crime",
  "layer": 0,
  "where": "OFFENSE='HOMICIDE'",
  "order_by": "CreatedDate DESC",
  "limit": 100
});

More examples

{
  "service": "311_Customer_Service_Requests_current/FeatureServer",
  "layer": 39,
  "out_fields": "RequestID,CreatedDate,ServiceCode",
  "limit": 200
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "data-baltimore": {
      "url": "https://gateway.pipeworx.io/data-baltimore/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build August 6, 2026