segment-mcp
Provides read-only access to the Twilio Segment Public API, enabling tools to list and inspect sources, destinations, tracking plans, and functions, plus an api_get escape hatch for other GET endpoints such as warehouses.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@segment-mcphow is the Intercom destination configured?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
segment-mcp
A small, read-only MCP server for the Twilio Segment Public API.
It only sends GET requests. It can list and inspect a workspace's Segment config but can never change it.
It lets Claude (or any MCP client) answer questions like "how is the Intercom destination configured?" or "which destinations hang off this source?" straight from Segment, without clicking through the dashboard.
Tools
Tool | What it does |
| All sources in the workspace |
| One source by id (incl. settings) |
| All destinations; optional |
| One destination by id, incl. full settings/config |
| All tracking plans |
| One tracking plan by id |
| All functions; optional |
| One function by id |
| Read-only escape hatch: GET any other Public API path (e.g. |
List tools follow cursor pagination, so they return every page.
Related MCP server: segment-mcp
Setup
Requires Node.js 18 or later.
Install:
git clone https://github.com/pedromfs/segment-mcp.git cd segment-mcp npm installCreate a Segment API token - in Segment:
Settings -> Access Management -> Tokens -> Create Token. Give it a read-only role; this server never writes..env.examplehas the step-by-step and a fix for403 Forbidden.Provide the token. Either option works (the server reads the
.envnext toindex.mjsfirst, then falls back to the ambient environment):A local
.env(gitignored, so the token never lands in the repo):cp .env.example .env # then set SEGMENT_PUBLIC_API_TOKEN=sgp_...Or a shell export:
export SEGMENT_PUBLIC_API_TOKEN="sgp_..."A real shell value takes precedence over the
.env.
Register it with your MCP client. For Claude Code, add it to a project's
.mcp.json:{ "mcpServers": { "segment": { "type": "stdio", "command": "node", "args": ["/absolute/path/to/segment-mcp/index.mjs"] } } }or run
claude mcp add segment -- node /absolute/path/to/segment-mcp/index.mjs. Restart the client so it picks up the server and the token.
Local smoke test
SEGMENT_PUBLIC_API_TOKEN=sgp_... node index.mjs # then speak MCP JSON-RPC over stdinNotes
The base URL defaults to
https://api.segmentapis.com; override it withSEGMENT_PUBLIC_API_URLif needed.Every request goes to that base URL.
api_gettakes a path, not a full URL, so the token is never sent to another host.If the token is missing, tools return an error rather than crashing the server.
License
MIT
Available Tools
9 toolsapi_getA
Read-only escape hatch: issue an arbitrary GET against any Segment Public API path (e.g. '/labels', '/warehouses'). Only GET is supported; this server can never write.
Inputs: path (required), query.
get_destinationA
Get a single Segment destination by id, including its full settings/config (e.g. the Intercom regional endpoint and app id).
Inputs: destinationId (required).
get_functionC
Get a single function by id.
Inputs: functionId (required).
get_sourceC
Get a single Segment source by id, including its settings.
Inputs: sourceId (required).
get_tracking_planC
Get a single tracking plan by id.
Inputs: trackingPlanId (required).
list_destinationsB
List Segment destinations. Optionally filter by a case-insensitive name/slug substring (e.g. 'intercom') and/or by sourceId.
Inputs: name, sourceId.
list_functionsA
List functions in the workspace. Optionally filter by resourceType; omit it to list every type.
Inputs: resourceType.
list_sourcesA
List all Segment sources in the workspace (id, name, slug, enabled, write key settings).
Inputs: no named parameters.
list_tracking_plansB
List all tracking plans in the workspace.
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
TDQS
Scored across 9 tools
Each tool targets a distinct resource+action: list/get pairs for sources, destinations, functions, and tracking plans are cleanly separated, and api_get is clearly scoped as a read-only escape hatch. There is no meaningful overlap between any tools.
The verb_noun pattern (list_sources, get_function, list_tracking_plans) is applied consistently across eight tools. The only deviation is api_get, which inverts the convention, but it is a distinct escape-hatch concept and remains readable.
Nine tools is well within the sweet spot and each earns its place with a clear resource-verb pairing. Nothing feels redundant or padded.
The server is explicitly read-only, and for that scope it offers list+get coverage for the four main resource families plus a generic GET escape hatch for unmodeled paths. No write operations exist, but that is by design rather than an oversight.
Related MCP Connectors
Read-only MCP access to sessions, funnels, campaigns, errors, live visitors, and anomalies.
Read an SEO workspace: projects, keywords, rank tracking, site audits, context. Read-only.
Read-only access to Communicate developer guides, OpenAPI summaries, and support contact.
Read-only ArcadeOps discovery for developer docs, OAuth, OpenAPI and synthetic sandbox.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables read-only inspection of Google Ads accounts through MCP, including account inventory, reporting, metadata, change history, and safe GAQL queries.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables read-only querying of Twilio Segment workspaces to audit which destinations receive which events, trace event routing and governance, identify stale or ungoverned sources, and check destination delivery health, with permanent safeguards against data deletion.MIT
- AlicenseNot gradedqualityCmaintenanceEnables inspecting customer-data sources, destinations, connections, and warehouses through Segment's Public API with read-only access.299 npmMIT
- AlicenseBqualityBmaintenanceProvides secure, read-only access to Slack workspaces, letting MCP clients read channels, messages, users, and file metadata without write permissions.172AGPL 3.0