Documentation Index

Fetch the complete documentation index at: https://knowledge.threatconnect.com/llms.txt

Use this file to discover all available pages before exploring further.

🚀 ThreatConnect® 8.0 is now available!

Agentic TIP MCP Server README

Prev Next

# Dataminr - Agentic TIP MCP Server

Access Agentic TIP threat intelligence and case management data directly from Claude (or any MCP-compatible client) via the Agentic TIP v3 REST API.

Overview

The Agentic TIP MCP Server exposes your Agentic TIP instance's v3 API as a set of MCP tools over a hosted endpoint. Every Agentic TIP instance exposes POST /api/v3/mcp directly, and any MCP client that supports remote HTTP servers can connect to it.

Note

Transport

  • Protocol: JSON-RPC 2.0 (MCP protocol version 2025-03-26)
  • Wire format: Single request → single response over HTTPS POST. Every response is HTTP 200; success/failure is carried in the JSON-RPC envelope, per spec.
  • Endpoint: https://<your-instance>/api/v3/mcp

Authentication

Every request must carry an Agentic TIP API token, either as:

  • Authorization: Bearer <token>, or
  • Authorization: TC-Token <token>

Generate a token from your Agentic TIP user profile → API Access. The token is a long-lived credential scoped to the issuing user's Agentic TIP permissions.

Tools

Static tools (always available)

Tool Description Required params
tc_resources List all available Agentic TIP resource types, each flagged writable: <bool>.
tc_describe Get field names and TQL (ThreatConnect Query Language) syntax for a resource type. Includes a writable flag. resource_type
tc_list List resources with TQL filtering, field expansion, sorting, and pagination. resource_type
tc_get Retrieve a single resource by ID. resource_type, id
tc_create Create a new resource. resource_type, body
tc_update Replace an existing resource (full replace semantics; see caveats below). resource_type, id, body
tc_delete Delete a resource by ID. resource_type, id

Tool names (tc_*, pb_*) and TQL use existing technical identifiers, independent of product branding.

tc_list optional parameters: tql, fields (comma-separated nested expansions, e.g. tags,securityLabels,attributes,associatedGroups), sorting, next_token (pagination cursor), owner, result_limit (1–100, default 25), max_field_length (default 10000, 0 disables truncation), summary (collapses array-valued fields to {"count": N}).

Behavioral notes:

  • Nested association/attribute expansions are capped at 1000 rows.
  • tc_list total count is only included on the first page (resultStart 0).
  • tc_update: nested-collection body fields use {"data": [...], "mode": "append|replace|delete|singleton"}. If mode is omitted, it defaults to replace. An empty {"data": []} is translated to an explicit delete. Any such adjustment is reported back in the response's mcpMitigations array.

Dynamic tools (per-org, playbook-driven)

In addition to the static tools, one tool is generated per active MCP-triggered playbook in your organization. These are scoped strictly to your org — a token from one organization can never see or invoke another organization's playbook tools. Each tool's description and input schema are derived from the playbook's own description and configured trigger parameters.

Playbook tools dispatch asynchronously: the response is written back once the playbook run completes and its response action fires.

Installing

Point your MCP client directly at the hosted endpoint with your token as a bearer header:

claude mcp add --transport http agentic-tip https://<your-instance>/api/v3/mcp \
  --header "Authorization: Bearer <your-api-token>"

Error handling

  • Malformed JSON-RPC → standard JSON-RPC PARSE_ERROR / INVALID_REQUEST / INVALID_PARAMS / METHOD_NOT_FOUND envelopes.
  • A failure calling the underlying v3 API is not a JSON-RPC error — it's returned as a successful tools/call result with isError: true and the upstream HTTP status + message as the content text, so the model can see and react to it.