NodleIoTOpen dashboard →
Documentation

AI apps (MCP)

Connect an AI client such as Claude, ChatGPT or Codex to your Nodle organization through the Model Context Protocol (MCP). The client can then read your fleets, devices and detections and, if you allow it, make changes. You sign in with your Nodle account and choose what it can do; nothing is shared until you do.

Server URL

Add this URL to your AI client:

https://dashboard.nodle.com/api/mcp

Connect your client

Claude (web, desktop and mobile)

  1. Go to Customize › Connectors and click Add custom connector.
  2. Paste the server URL and click Add. Leave the authentication settings as they are.
  3. Click Connect, sign in to Nodle, pick the team and choose what Claude can do.

On Team and Enterprise plans an Owner adds the connector under Organization settings › Connectors, and each member then clicks Connect. The Free plan allows one custom connector. Anthropic's guide

Claude Code

Add the server from your terminal:

claude mcp add --transport http nodle https://dashboard.nodle.com/api/mcp

Then run /mcp in Claude Code, pick nodle and authenticate. Add --scope user to use it in every project.

ChatGPT

  1. Turn on developer mode in ChatGPT's settings.
  2. Create an app for an MCP server with the server URL, using OAuth.
  3. Sign in to Nodle, pick the team and choose what ChatGPT can do.

Developer mode is available on the web for Plus, Pro, Business, Enterprise and Education accounts. Menu names change often; follow OpenAI's guide for the current steps.

Codex

Add the server to ~/.codex/config.toml:

[mcp_servers.nodle]
url = "https://dashboard.nodle.com/api/mcp"

Then sign in:

codex mcp login nodle

Other clients work too if they support remote MCP servers over streamable HTTP with OAuth. They register themselves (Client ID Metadata Document or Dynamic Client Registration), so no client ID is needed.

What you allow

  • Read your data — always included: your organization, fleets, devices, detections and webhooks.
  • Make changes — optional, for admins and editors: rename fleets and devices, turn webhooks on or off and send test events.
  • Register fleets — optional, for admins of organizations on the Managed Service. Each registration uses one of your plan's fleet registrations; Nodle carries out the registration and covers its costs. At most 5 per connection per UTC day.

You choose at sign-in; an unticked permission is never given. Most clients also ask you before they run a tool that changes data.

Access and revoking

  • Only the team you are signed in to is shared. To connect another one, switch team and connect again.
  • Access lasts up to 30 days; after that, connect again.
  • Revoke a connection any time in Settings › Connected apps. Admins see and can revoke every connection in the organization.
  • Removing a member, or changing their role, revokes their connections.
  • What a connection can read, what we store and for how long: privacy notice.

Tools

Read your data (always included)

  • whoamiThe user, organization, roles and permissions of this connection
  • list_fleetsYour fleets, with their identifier, status and device count
  • get_fleetOne fleet: identifier, status and device count
  • list_devicesYour beacon devices, with their fleet and last detection time
  • get_deviceOne device, with its last location and signal strength
  • list_detectionsRecent detections (time and location) of one device
  • check_identifierWhether a fleet identifier is valid, and its registration
  • get_webhookA fleet's webhook: host only, status and the last 24 hours of deliveries
  • list_webhook_deliveriesRecent deliveries of a fleet's webhook

Make changes (optional)

  • rename_fleetRename a fleet; nothing else about it changes
  • rename_deviceRename a device, in every fleet of the organization
  • set_webhook_enabledTurn a fleet's existing webhook on or off
  • send_test_webhookSend a signed test event to a fleet's webhook (5 per fleet per minute)

Register fleets (optional)

  • preview_register_fleetWhat a registration would do and the plan registrations left; changes nothing
  • register_fleetRegister a fleet on the Managed Service, as the dashboard wizard does