Getting Started with Axle's MCP server

Connect your AI assistant to Axle's MCP (Model Context Protocol) server to search alerts, update dispositions, submit feedback, and more — directly from Claude or ChatGPT.

Quick Start

DetailValue
MCP Server URLhttps://public.api.axleruns.com/mcp/v1/mcp
OAuth Discoveryhttps://public.api.axleruns.com/.well-known/oauth-authorization-server
TransportStreamable HTTP
AuthenticationOAuth 2.1 with PKCE (S256)
Client RegistrationDynamic (automatic) — no pre-shared credentials needed

All connections use the same flow: your AI assistant registers itself, opens a browser for you to log in with your Axle account, and receives a scoped token. Your data access is limited to your organization — the same permissions as your Axle dashboard.


Available Tools

Once connected, your AI assistant can use these tools to help with alert review and investigation workflows:

ToolDescription
search_alertsList alerts with filters (disposition, risk score range, date range, alert ID)
get_alertFetch a single alert with its full analysis narrative, flags, and risk score
update_alert_dispositionSet an alert's disposition to NOT_REVIEWED, ESCALATED, or CLEARED
submit_alert_feedbackRecord feedback on a specific flag (color + optional context)
upload_supplemental_entity_dataAttach identifying information (name, DOB, email, etc.) to entities on an alert
rerun_investigationTrigger a fresh Rose investigation for an alert
add_block_noteAdd an analyst note to a specific analysis block

Setup by Tool

Claude Desktop

  1. Open Claude Desktop and go to Settings > Connectors
  2. Click Add Connector
  3. Enter the server URL:
    https://public.api.axleruns.com/mcp/v1/mcp
  4. Click Add
  5. A browser window opens — log in with your Axle account and click Allow

That's it. Claude will auto-discover the OAuth endpoints and register itself. You can now ask Claude to search your alerts, update dispositions, and more.


ChatGPT

  1. Go to Settings > Apps & Connectors > Advanced settings
  2. Toggle Developer Mode to ON
  3. Click Add new connector
  4. Enter a name (e.g., "Axle") and the URL:
    https://public.api.axleruns.com/mcp/v1/mcp
  5. Set Authentication to OAuth
  6. Check "I trust this application" and click Create
  7. Complete the browser login flow

Available on ChatGPT Pro, Plus, Business, Enterprise, and Education plans (web only).


Open WebUI

  1. Go to Admin Settings > External Tools
  2. Click + to add a server
  3. Set Type to MCP (Streamable HTTP)
  4. Enter the URL:
    https://public.api.axleruns.com/mcp/v1/mcp
  5. Set Auth to OAuth 2.1
  6. Click Register Client, then Save
  7. Complete the browser login flow

Important: Set a persistent WEBUI_SECRET_KEY environment variable so OAuth tokens survive container restarts.


Other MCP-Compatible Tools

Any application that supports the MCP specification with Streamable HTTP transport and OAuth 2.1 can connect. The general steps are:

  1. Point the application at https://public.api.axleruns.com/mcp/v1/mcp
  2. The application discovers OAuth metadata from /.well-known/oauth-authorization-server
  3. It registers a client via POST /oauth/register (Dynamic Client Registration)
  4. You log in through your browser and grant consent
  5. The application receives tokens and begins calling MCP tools

Authentication Details

How It Works

Axle's MCP server uses OAuth 2.1 — the same standard used by Google, GitHub, and other major platforms. Here's what happens when you connect:

  1. Client Registration — Your AI tool automatically registers itself with Axle's OAuth server. No API keys or pre-shared secrets needed.
  2. Browser Login — You log in with your existing Axle account credentials (the same ones you use for the Axle dashboard).
  3. Consent — You review what the tool is requesting and click Allow.
  4. Token Issuance — The tool receives a short-lived access token (15 minutes) and a refresh token (14 days) to stay connected.

Scopes

When registering or authorizing, your tool may request the following scopes:

ScopeGrants
alerts:readSearch and view alerts in your organization
alerts:writeUpdate dispositions, upload entity data, rerun investigations
feedback:writeSubmit flag feedback and analyst notes

Your tool can only access data within your organization — the same boundary as your Axle dashboard.

Token Lifecycle

  • Access tokens expire after 15 minutes and are automatically refreshed
  • Refresh tokens are valid for 14 days (sliding — each use extends the window)
  • If your tool loses its connection, just re-authorize through the browser

Tool Reference

search_alerts

List alerts with optional filters. Returns paginated results.

Parameters:

NameTypeRequiredDescription
dispositionstringNoFilter by disposition: NOT_REVIEWED, ESCALATED, or CLEARED
min_risk_scorefloatNoMinimum risk score (0.0 to 1.0)
max_risk_scorefloatNoMaximum risk score (0.0 to 1.0)
created_afterstringNoISO 8601 datetime — only alerts created after this date
created_beforestringNoISO 8601 datetime — only alerts created before this date
source_idstringNoFilter by alert ID
pageintNoPage number (default: 1)
page_sizeintNoResults per page, 1–50 (default: 10)

Example prompt: "Show me all unreviewed alerts with a risk score above 0.7 from the last week"


get_alert

Fetch a single alert with its full analysis, including the investigation narrative, risk flags, and analysis blocks.

Parameters:

NameTypeRequiredDescription
alert_idstringYesThe alert ID from your system

Example prompt: "Get the details for alert TXN-2024-001"


update_alert_disposition

Update the disposition on an alert's investigation.

Parameters:

NameTypeRequiredDescription
alert_idstringYesThe alert ID from your system
dispositionstringYesOne of: NOT_REVIEWED, ESCALATED, CLEARED

Example prompt: "Escalate alert TXN-2024-001"


submit_alert_feedback

Record feedback on a specific risk flag within an alert's investigation.

Parameters:

NameTypeRequiredDescription
alert_idstringYesThe alert ID from your system
block_idstringYesAnalysis block ID (from get_alert response)
flag_idstringYesFlag ID within the block
colorstringYesYour assessed color: red, yellow, green, white, gray, or black
contextstringNoFree-text explanation (max 4096 chars)

Example prompt: "On alert TXN-2024-001, the structuring flag in the transaction analysis block should be red — the entity split deposits across 5 accounts within 24 hours"


upload_supplemental_entity_data

Attach additional identifying information to entities referenced by an alert. This enriches future investigations.

Parameters:

NameTypeRequiredDescription
alert_idstringYesThe alert ID from your system
entitieslistYesList of entity objects (see below)

Each entity object:

FieldTypeRequiredDescription
entity_source_idstringYesThe entity ID from your system
namestringNoFull legal name
dobstringNoDate of birth
emailstringNoEmail address
phonestringNoPhone number
country_of_birthstringNoCountry of birth
city_of_birthstringNoCity of birth
tax_residencystringNoTax residency country
controllerstringNoControlling entity

rerun_investigation

Trigger a fresh Rose investigation for an alert.

Parameters:

NameTypeRequiredDescription
alert_idstringYesThe alert ID from your system
reasonstringNoWhy the rerun is needed (max 2048 chars)

Example prompt: "Rerun the investigation for alert TXN-2024-001 — new entity data was uploaded"


add_block_note

Add an analyst note to a specific analysis block of an investigation. Notes are visible in the Axle dashboard and influence future reruns.

Parameters:

NameTypeRequiredDescription
alert_idstringYesThe alert ID from your system
block_typestringYesBlock type (use values from get_alert response's analysis_blocks)
bodystringYesNote content (max 4096 chars)
classificationstringYesOne of: reviewed_correct, correct_incomplete, factually_incorrect, context_needed, needs_more_context

Example prompt: "Add a note to the transaction analysis block of alert TXN-2024-001: the $50K wire was a legitimate real estate closing, classification reviewed_correct"


Troubleshooting

"Connection failed" or "Server not reachable"

  • Verify you can reach https://public.api.axleruns.com/.well-known/oauth-authorization-server in your browser
  • Check that your network/VPN allows outbound HTTPS to public.api.axleruns.com

OAuth login loop or blank page

  • Clear your tool's cached MCP credentials and re-add the connection
  • Ensure your browser allows popups from your AI tool

"Unauthorized" or "Token expired"

  • Most AI assistants auto-refresh tokens. If you see persistent auth errors, remove and re-add the MCP connection
  • Access tokens expire every 15 minutes; refresh tokens last 14 days

"Alert not found"

  • The alert_id parameter expects the alert ID from your system, not the Axle internal ID
  • You can only access alerts in your organization

Tools not appearing

  • After connecting, you may need to start a new chat or conversation for tools to be listed
  • In Claude Desktop, check Settings > Connectors to verify the connection is active
  • In ChatGPT, verify the connector is listed under Settings > Apps & Connectors

Support

For integration questions, contact your Axle account team or reach out at [email protected].