Skip to main content

Connecting Claude or Copilot (MCP)

TrackMyMachines exposes an MCP server — a standard interface that lets AI assistants query your machine data directly. Once connected, you can ask questions in plain English ("which machines had the most downtime last week?") and the assistant fetches the answer from the same aggregated data that powers your dashboards.

MCP is an open standard, so this works with any assistant that supports it. The two most common are Claude (claude.ai, the Claude desktop app, Claude Code) and Microsoft Copilot (Copilot Studio, Copilot CLI, GitHub Copilot in VS Code). Cursor, ChatGPT custom connectors and Gemini CLI connect the same way.

The connection is read-only. The assistant can read your organisation's machine, production and chart data; it cannot change anything, and it cannot see other organisations.

Your MCP endpoint

Every organisation has its own endpoint on its own subdomain:

https://your-org.trackmymachines.app/mcp

Replace your-org with your organisation's subdomain — it's the first part of the address you use to sign in. If you log in at https://acme.trackmymachines.app, your MCP endpoint is https://acme.trackmymachines.app/mcp.

note

The subdomain is what ties the connection to your organisation. A connection made on one organisation's subdomain will only ever return that organisation's data.

There are two ways to connect, and which one you use depends on the tool rather than on your preference. Apps that sign you in with a browser use Option 1; tools configured with a file use Option 2.

Option 1: Sign in (Claude and Copilot apps)

Use this from claude.ai, the Claude desktop app, Copilot Studio or Copilot CLI. You sign in with your normal TrackMyMachines account and no API key is involved.

Claude (web and desktop)

  1. In Claude, open Settings → Connectors
  2. Click Add custom connector
  3. Give it a name (for example, TrackMyMachines) and paste your endpoint URL:
    https://your-org.trackmymachines.app/mcp
  4. Click Add. Claude opens a TrackMyMachines sign-in window.
  5. Sign in with your usual username and password if you aren't already signed in.
  6. A confirmation screen names your organisation and what the connector will be able to do. Click Connect.

Claude returns to the connector list and the connection is ready. In a new chat, enable the connector from the attachments (+) menu and start asking questions.

Copilot

Copilot Studio and Copilot CLI both register themselves automatically — you only ever give them the URL.

  1. Add a new MCP server and paste your endpoint URL:
    https://your-org.trackmymachines.app/mcp
    In Copilot Studio this is under Tools → Add a tool → New tool → Model Context Protocol. In Copilot CLI, use /mcp add and choose the HTTP transport.
  2. Copilot discovers the sign-in service and opens a TrackMyMachines sign-in window.
  3. Sign in, then approve the same confirmation screen described above.
warning

Shared logins used for tablets and wall displays cannot authorise a connector. Sign in with your own named account.

Option 2: API key (Claude Code, VS Code and Cursor)

Tools that are configured with a file — Claude Code, GitHub Copilot in VS Code, Cursor, your own scripts — authenticate with an API key instead of signing in.

First create a read-only API key: go to API Keys in the main menu and click Create New API Key. Copy the key when it's shown; it's only displayed once.

Claude Code

claude mcp add --transport http trackmymachines \
https://your-org.trackmymachines.app/mcp \
--header "Authorization: Bearer YOUR_API_KEY"

GitHub Copilot in VS Code

In .vscode/mcp.json:

{
"servers": {
"trackmymachines": {
"type": "http",
"url": "https://your-org.trackmymachines.app/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}

Cursor and other JSON-configured clients

{
"mcpServers": {
"trackmymachines": {
"url": "https://your-org.trackmymachines.app/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}

What the assistant can do once connected

The connector provides five read-only tools. You don't need to call these yourself — the assistant picks the right one — but knowing what's there tells you what to ask for:

ToolWhat it does
list_chartsLists every available chart type with its description, result shape and units
describe_chartExplains one chart type: which time grains and groupings it supports, its defaults and filters
query_chartRuns a chart query and returns the data
list_machinesLists your machines and shift patterns, for use in filters
list_reason_categoriesLists your downtime reason categories and the reasons in each

The chart types are the same ones documented under Charts — utilisation, downtime analysis, OEE, part counts, energy, and the rest.

Things to ask

  • "What was our spindle utilisation last week, broken down by machine?"
  • "Which downtime reasons cost us the most hours this month?"
  • "Compare OEE across our machines for the last 30 days and tell me where the biggest loss is."
  • "Show me the shift breakdown for the CNC cell in June."

Filters take names rather than IDs, so you can refer to machines, shift patterns and downtime categories exactly as they appear in TrackMyMachines.

Access and security

  • Read-only. Every tool is a read. The connector cannot clock jobs, change reasons, or edit any setting.
  • Scoped to one organisation. A connection is bound to the organisation whose subdomain you used, and is re-checked on every request.
  • No row-level restriction. Anyone who can connect sees all of that organisation's data — the connector does not narrow results by machine, cell or site. If a user shouldn't see a machine's data, they shouldn't be given a connector.
  • Revoking access. To revoke a connection made by signing in, contact your TrackMyMachines administrator. Connections made with an API key are revoked by deleting that key under API Keys.
  • Removing a user. Deleting or disabling a user's TrackMyMachines account also stops any connector they had authorised.
warning

Treat API keys like passwords. Never share them or commit them to version control.

Troubleshooting

"Couldn't register with the sign-in service" — check the URL. It must be https://, must use your own organisation's subdomain, and must end in /mcp.

The connector added but every request fails — you may be signed in to TrackMyMachines as a different organisation than the subdomain you entered. Remove the connector and add it again using the subdomain you actually sign in at.

401 Unauthorized with an API key — the key has expired, has been deleted, or belongs to a different organisation than the subdomain in the URL. Create a fresh read-only key and update your configuration.