Tool: list_parsers
List all parsers for a given log type, returning only metadata.
Retrieves a list of parser metadata for a specific log type, or for all log types if "-" is specified. This tool is useful for getting an overview of existing parsers and their states without fetching the full parser code.
Agent Responsibilities:- The response is a JSON object. The agent should access the parsers
key to get a list of parser objects. - Each object in the list contains parser metadata such as name
, log_type
, state
, create_time
, etc. - The name
field contains the full resource name, from which the parser ID can be extracted. - If the response contains a next_page_token
, it indicates that more results are available. The agent should use this token in a subsequent call to retrieve the next page. - The agent should not present the raw JSON. Instead, it should format the output as a human-readable list, for example, using a table or a bulleted list.
Workflow Integration:- Use to discover existing parsers for a specific log type. - Helpful for finding a parser ID to use with other tools like get_parser
or activate_parser
. - Use to audit which parsers exist for a customer and their current states (ACTIVE, INACTIVE, etc.).
Args: project_id (str): Google Cloud project ID (required). customer_id (str): Chronicle customer ID (required). region (str): Chronicle region (e.g., "us", "europe") (required). log_type (str): Chronicle log type identifier for the parser. Use "-" to list parsers for all log types. Defaults to "-". page_size (int): The maximum number of parsers to return. The service may return fewer than this value. page_token (str): A page token, received from a previous list_parsers
call. Provide this to retrieve the subsequent page. filter (str): A filter to be applied to the list of parsers.
Returns: str: Raw JSON response from the API, representing a list of Parser metadata objects. The agent should parse this and present a formatted list to the user. Returns an error message if listing fails.
Example Usage: # List all parsers for a specific log type list_parsers( project_id="my-project", customer_id="my-customer", region="us", log_type="OKTA" )
# List all parsers for all log types
list_parsers(
project_id="my-project",
customer_id="my-customer",
region="us"
)
The following sample demonstrate how to use curl
to invoke the list_parsers
MCP tool.
| Curl Request |
|---|
curl --location 'https://chronicle.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "list_parsers", "arguments": { // provide these details according to the tool' s MCP specification } } , "jsonrpc" : "2.0" , "id" : 1 } ' |
Input Schema
Request message for ListParsers.
ListParsersRequest
| JSON representation |
|---|
{ "projectId" : string , "customerId" : string , "region" : string , "logType" : string , "pageSize" : integer , "pageToken" : string , "filter" : string } |
| Fields | |
|---|---|
projectId
|
Project ID of the customer. |
customerId
|
Customer ID of the customer. |
region
|
Region of the customer. |
logType
|
Log type of the parsers to list. Use '-' to list parsers for all log types. |
pageSize
|
The maximum number of parsers to return. |
pageToken
|
A page token, received from a previous |
filter
|
A filter to be applied to the list of parsers. |
Output Schema
Response message for listing parsers.
ListParsersResponse
| JSON representation |
|---|
{
"parsers"
:
[
{
object (
|
| Fields | |
|---|---|
parsers[]
|
The parsers from the specified chronicle instance. |
nextPageToken
|
A token, which can be sent as |
Parser
| JSON representation |
|---|
{
"projectId"
:
string
,
"customerId"
:
string
,
"region"
:
string
,
"logType"
:
string
,
"parserId"
:
string
,
"state"
:
enum (
|
| Fields | |
|---|---|
projectId
|
Project ID of the customer. |
customerId
|
Customer ID of the customer. |
region
|
Region of the customer. |
logType
|
Log type of the parser to activate. |
parserId
|
ID of the parser to activate. |
state
|
State of the parser. |
createTime
|
Time at which the parser was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
code
|
Code of the parser. |
Timestamp
| JSON representation |
|---|
{ "seconds" : string , "nanos" : integer } |
| Fields | |
|---|---|
seconds
|
Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be between -62135596800 and 253402300799 inclusive (which corresponds to 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z). |
nanos
|
Non-negative fractions of a second at nanosecond resolution. This field is the nanosecond portion of the duration, not an alternative to seconds. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be between 0 and 999,999,999 inclusive. |
Tool Annotations
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌

