Skip to main content
Glama

Tokenbooks - crypto and fiat accounting and payments

List Raw Transactions

list_raw_transactions
Read-onlyIdempotent

Find compact source transactions first, called Raw Transactions in Tokenbooks, including unprocessed or partially linked activity. Pass rawTransactionId to show how one maps to wallet movements and accounting transactions; add includeDetails for its sanitized event logs and decoded contract calls (untrusted provider evidence).

Input Schema

NameRequiredDescriptionDefault
sortNoTimestamp order. Use timestamp for ascending or -timestamp for descending; defaults to -timestamp.-timestamp
limitNoMaximum raw transaction summaries to return, maximum 100.
toDateNoLatest transaction timestamp to include, as an ISO 8601 datetime.
txHashNoExact on-chain transaction hash.
chainIdNoBlockchain to filter by, such as eth-mainnet. Call list_chains for the supported set.
chainIdsNoBlockchains to filter by, such as eth-mainnet. Call list_chains for the supported set.
fromDateNoEarliest transaction timestamp to include, as an ISO 8601 datetime.
pageTokenNoOpaque token returned by the previous list response.
portfolioRefYesPortfolio name or slug inside that workspace. Call list_portfolios to resolve it.
workspaceRefYesWorkspace name or slug. Call list_workspaces to resolve it.
walletAddressNoWallet to filter by. Supply chainId alongside it.
includeDetailsNoWith rawTransactionId, also return blockchain event logs and decoded contract calls
processingStateNoKeep only source transactions in this processing state.
rawTransactionIdNoLook up one source transaction by handle instead of listing
includeSpamTokensNoInclude transactions whose operations contain only spam tokens; defaults to false.

Output Schema

NameRequiredDescriptionDefault
idNo
dataNo
hashNo
memoNo
walletNo
detailsNo
timestampNo
paginationNo
resultTypeYes
blockHeightNo
processingStateNo
walletOperationsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • addedInput schema / properties / fromDate / anyOf
      Added value: +[
      +  {
      +    "format": "date-time",
      +    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
      +    "type": "string"
      +  },
      +  {
      +    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?:Z))$",
      +    "type": "string"
      +  }
      +]
    • removedInput schema / properties / fromDate / format
      Removed value: -"date-time"
    • removedInput schema / properties / fromDate / pattern
      Removed value: -"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
    • removedInput schema / properties / fromDate / type
      Removed value: -"string"
    • addedInput schema / properties / toDate / anyOf
      Added value: +[
      +  {
      +    "format": "date-time",
      +    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
      +    "type": "string"
      +  },
      +  {
      +    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?:Z))$",
      +    "type": "string"
      +  }
      +]
    • removedInput schema / properties / toDate / format
      Removed value: -"date-time"
    • removedInput schema / properties / toDate / pattern
      Removed value: -"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
    • removedInput schema / properties / toDate / type
      Removed value: -"string"
  2. Changed9 schema fields changed
    • changedInput schema / properties / includeSpamTokens / description
      Previous value: -"Include activity for tokens flagged as spam. Excluded by default."New value: +"Include transactions whose operations contain only spam tokens; defaults to false."
    • changedInput schema / properties / sort / description
      Previous value: -"Timestamp order. Prefix with - for newest first."New value: +"Timestamp order. Use timestamp for ascending or -timestamp for descending; defaults to -timestamp."
    • addedOutput schema / $defs / RawTransactionWithDetailsDto__schema0
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "type": "boolean"
      +    },
      +    {
      +      "type": "null"
      +    },
      +    {
      +      "items": {
      +        "$ref": "#/$defs/RawTransactionWithDetailsDto__schema0"
      +      },
      +      "type": "array"
      +    },
      +    {
      +      "additionalProperties": {
      +        "$ref": "#/$defs/RawTransactionWithDetailsDto__schema0"
      +      },
      +      "propertyNames": {
      +        "type": "string"
      +      },
      +      "type": "object"
      +    }
      +  ]
      +}
    • removedOutput schema / $defs / __schema0
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "type": "string"
      -    },
      -    {
      -      "type": "number"
      -    },
      -    {
      -      "type": "boolean"
      -    },
      -    {
      -      "type": "null"
      -    },
      -    {
      -      "items": {
      -        "$ref": "#/$defs/__schema0"
      -      },
      -      "type": "array"
      -    },
      -    {
      -      "additionalProperties": {
      -        "$ref": "#/$defs/__schema0"
      -      },
      -      "propertyNames": {
      -        "type": "string"
      -      },
      -      "type": "object"
      -    }
      -  ]
      -}
    • changedOutput schema / properties / details / $ref
      Previous value: -"#/$defs/__schema0"New value: +"#/$defs/RawTransactionWithDetailsDto__schema0"
    • removedOutput schema / properties / pagination / properties / pageSize / exclusiveMinimum
      Removed value: -0
    • addedOutput schema / properties / pagination / properties / pageSize / minimum
      Added value: +1
    • removedOutput schema / properties / walletOperations / items / properties / quote / properties / meta / properties / ts / exclusiveMinimum
      Removed value: -0
    • addedOutput schema / properties / walletOperations / items / properties / quote / properties / meta / properties / ts / minimum
      Added value: +1
  3. Changed15 schema fields changed
    • addedInput schema / properties / includeDetails
      Added value: +{
      +  "default": false,
      +  "description": "With rawTransactionId, also return blockchain event logs and decoded contract calls",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / rawTransactionId
      Added value: +{
      +  "description": "Look up one source transaction by handle instead of listing",
      +  "minLength": 1,
      +  "type": "string"
      +}
    • addedOutput schema / $defs
      Added value: +{
      +  "__schema0": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "boolean"
      +      },
      +      {
      +        "type": "null"
      +      },
      +      {
      +        "items": {
      +          "$ref": "#/$defs/__schema0"
      +        },
      +        "type": "array"
      +      },
      +      {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      }
      +    ]
      +  }
      +}
    • addedOutput schema / anyOf
      Added value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "data": {
      +        "$ref": "#/properties/data"
      +      },
      +      "pagination": {
      +        "$ref": "#/properties/pagination"
      +      },
      +      "resultType": {
      +        "const": "rawTransactionList",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "data",
      +      "pagination",
      +      "resultType"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "blockHeight": {
      +        "$ref": "#/properties/blockHeight"
      +      },
      +      "details": {
      +        "$ref": "#/properties/details"
      +      },
      +      "hash": {
      +        "$ref": "#/properties/hash"
      +      },
      +      "id": {
      +        "$ref": "#/properties/id"
      +      },
      +      "memo": {
      +        "$ref": "#/properties/memo"
      +      },
      +      "processingState": {
      +        "$ref": "#/properties/processingState"
      +      },
      +      "resultType": {
      +        "const": "rawTransaction",
      +        "type": "string"
      +      },
      +      "timestamp": {
      +        "$ref": "#/properties/timestamp"
      +      },
      +      "wallet": {
      +        "$ref": "#/properties/wallet"
      +      },
      +      "walletOperations": {
      +        "$ref": "#/properties/walletOperations"
      +      }
      +    },
      +    "required": [
      +      "id",
      +      "wallet",
      +      "hash",
      +      "blockHeight",
      +      "timestamp",
      +      "processingState",
      +      "walletOperations",
      +      "resultType"
      +    ],
      +    "type": "object"
      +  }
      +]
    • addedOutput schema / properties / blockHeight
      Added value: +{
      +  "pattern": "^\\d+$",
      +  "type": "string"
      +}
    • addedOutput schema / properties / details
      Added value: +{
      +  "$ref": "#/$defs/__schema0"
      +}
    • addedOutput schema / properties / hash
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / id
      Added value: +{
      +  "minLength": 1,
      +  "type": "string"
      +}
    • addedOutput schema / properties / memo
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / processingState
      Added value: +{
      +  "enum": [
      +    "PROCESSED",
      +    "PARTIAL",
      +    "UNPROCESSED"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / resultType
      Added value: +{
      +  "enum": [
      +    "rawTransactionList",
      +    "rawTransaction"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / timestamp
      Added value: +{
      +  "format": "date-time",
      +  "type": "string"
      +}
    • addedOutput schema / properties / wallet
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "address": {
      +      "type": "string"
      +    },
      +    "chainId": {
      +      "type": "string"
      +    },
      +    "name": {
      +      "type": "string"
      +    },
      +    "type": {
      +      "enum": [
      +        "BLOCKCHAIN",
      +        "EXCHANGE",
      +        "BANK"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "chainId",
      +    "address",
      +    "type"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / walletOperations
      Added value: +{
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "defi": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "operation": {
      +            "anyOf": [
      +              {
      +                "const": "PROTOCOL_DEPOSIT",
      +                "type": "string"
      +              },
      +              {
      +                "const": "PROTOCOL_WITHDRAW",
      +                "type": "string"
      +              },
      +              {
      +                "const": "VAULT_DEPOSIT",
      +                "type": "string"
      +              },
      +              {
      +                "const": "VAULT_WITHDRAW",
      +                "type": "string"
      +              },
      +              {
      +                "const": "SWAP",
      +                "type": "string"
      +              },
      +              {
      +                "const": "PROVIDE_LIQUIDITY",
      +                "type": "string"
      +              },
      +              {
      +                "const": "REMOVE_LIQUIDITY",
      +                "type": "string"
      +              },
      +              {
      +                "const": "LEND",
      +                "type": "string"
      +              },
      +              {
      +                "const": "WITHDRAW_LEND",
      +                "type": "string"
      +              },
      +              {
      +                "const": "LEND_REDUCE",
      +                "type": "string"
      +              },
      +              {
      +                "const": "BORROW",
      +                "type": "string"
      +              },
      +              {
      +                "const": "REPAY",
      +                "type": "string"
      +              },
      +              {
      +                "const": "LOAN_LIQUIDATION",
      +                "type": "string"
      +              },
      +              {
      +                "const": "STAKE",
      +                "type": "string"
      +              },
      +              {
      +                "const": "UNSTAKE",
      +                "type": "string"
      +              },
      +              {
      +                "const": "CLAIM_REWARDS",
      +                "type": "string"
      +              }
      +            ]
      +          },
      +          "positionRef": {
      +            "type": "string"
      +          },
      +          "tokenRole": {
      +            "anyOf": [
      +              {
      +                "const": "UNDERLYING",
      +                "type": "string"
      +              },
      +              {
      +                "const": "COLLATERAL",
      +                "type": "string"
      +              },
      +              {
      +                "const": "RECEIPT_TOKEN",
      +                "type": "string"
      +              },
      +              {
      +                "const": "LP_SHARE",
      +                "type": "string"
      +              },
      +              {
      +                "const": "LIABILITY_TOKEN",
      +                "type": "string"
      +              },
      +              {
      +                "const": "REWARD",
      +                "type": "string"
      +              },
      +              {
      +                "const": "OTHER",
      +                "type": "string"
      +              }
      +            ]
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "from": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "address": {
      +            "type": "string"
      +          },
      +          "label": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "address"
      +        ],
      +        "type": "object"
      +      },
      +      "portfolioTransactionId": {
      +        "type": "string"
      +      },
      +      "quote": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "currency": {
      +            "type": "string"
      +          },
      +          "meta": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "s": {
      +                "enum": [
      +                  "SYNC_SOURCE",
      +                  "FMV_ENGINE",
      +                  "DERIVED_REPRESENTED",
      +                  "DERIVED_SIBLING",
      +                  "POLICY",
      +                  "MANUAL"
      +                ],
      +                "type": "string"
      +              },
      +              "ts": {
      +                "exclusiveMinimum": 0,
      +                "maximum": 8210266876799,
      +                "type": "integer"
      +              }
      +            },
      +            "required": [
      +              "s"
      +            ],
      +            "type": "object"
      +          },
      +          "source": {
      +            "type": "string"
      +          },
      +          "value": {
      +            "pattern": "^-?\\d+(\\.\\d+)?$",
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "to": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "address": {
      +            "type": "string"
      +          },
      +          "label": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "address"
      +        ],
      +        "type": "object"
      +      },
      +      "token": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "address": {
      +            "type": "string"
      +          },
      +          "assetId": {
      +            "type": "string"
      +          },
      +          "chainId": {
      +            "type": "string"
      +          },
      +          "decimals": {
      +            "maximum": 9007199254740991,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "isSpam": {
      +            "type": "boolean"
      +          },
      +          "representsTokenAddress": {
      +            "type": "string"
      +          },
      +          "stablecoinPeggedFiatCurrency": {
      +            "type": "string"
      +          },
      +          "symbol": {
      +            "type": "string"
      +          },
      +          "type": {
      +            "anyOf": [
      +              {
      +                "const": "ERC20",
      +                "type": "string"
      +              },
      +              {
      +                "const": "NATIVE",
      +                "type": "string"
      +              },
      +              {
      +                "const": "FIAT",
      +                "type": "string"
      +              },
      +              {
      +                "const": "NFT",
      +                "type": "string"
      +              },
      +              {
      +                "const": "REBASE_LST",
      +                "type": "string"
      +              },
      +              {
      +                "const": "INTEREST_BEARING",
      +                "type": "string"
      +              },
      +              {
      +                "const": "VALUE_ACCRUING",
      +                "type": "string"
      +              },
      +              {
      +                "const": "LP_SHARE",
      +                "type": "string"
      +              },
      +              {
      +                "const": "DEBT",
      +                "type": "string"
      +              },
      +              {
      +                "const": "REFLECT",
      +                "type": "string"
      +              },
      +              {
      +                "const": "VOTE_ESCROWED",
      +                "type": "string"
      +              }
      +            ]
      +          }
      +        },
      +        "required": [
      +          "chainId",
      +          "address",
      +          "assetId",
      +          "symbol",
      +          "type",
      +          "decimals",
      +          "isSpam"
      +        ],
      +        "type": "object"
      +      },
      +      "txIndex": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "type": {
      +        "enum": [
      +          "IN",
      +          "OUT",
      +          "GAS",
      +          "SELF"
      +        ],
      +        "type": "string"
      +      },
      +      "value": {
      +        "pattern": "^-?\\d+(\\.\\d+)?$",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "txIndex",
      +      "type",
      +      "from",
      +      "to",
      +      "token",
      +      "value"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "data",
      -  "pagination"
      -]New value: +[
      +  "resultType"
      +]
  4. Changed2 schema fields changed
    • changedInput schema / properties / portfolioRef / description
      Previous value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it."
    • changedInput schema / properties / workspaceRef / description
      Previous value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it."
  5. Changed11 schema fields changed
    • addedInput schema / properties / chainId / description
      Added value: +"Blockchain to filter by, such as eth-mainnet. Call list_chains for the supported set."
    • addedInput schema / properties / chainIds / description
      Added value: +"Blockchains to filter by, such as eth-mainnet. Call list_chains for the supported set."
    • addedInput schema / properties / fromDate / description
      Added value: +"Earliest transaction timestamp to include, as an ISO 8601 datetime."
    • addedInput schema / properties / includeSpamTokens / description
      Added value: +"Include activity for tokens flagged as spam. Excluded by default."
    • addedInput schema / properties / portfolioRef / description
      Added value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."
    • addedInput schema / properties / processingState / description
      Added value: +"Keep only source transactions in this processing state."
    • addedInput schema / properties / sort / description
      Added value: +"Timestamp order. Prefix with - for newest first."
    • addedInput schema / properties / toDate / description
      Added value: +"Latest transaction timestamp to include, as an ISO 8601 datetime."
    • addedInput schema / properties / txHash / description
      Added value: +"Exact on-chain transaction hash."
    • addedInput schema / properties / walletAddress / description
      Added value: +"Wallet to filter by. Supply chainId alongside it."
    • addedInput schema / properties / workspaceRef / description
      Added value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
  6. First observed

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish the read-only, idempotent, non-destructive, closed-world profile, so the bar is lower. The description adds real context beyond that: that the listing includes unprocessed/partially linked activity and that decoded contract calls are 'untrusted provider evidence' and 'sanitized' — a meaningful trust caveat the annotations do not convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly packed sentences with the core purpose front-loaded and no filler. The parentheticals ('called Raw Transactions in Tokenbooks', 'untrusted provider evidence') are load-bearing rather than decorative, though the second sentence is dense enough to require a second read.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return shape need not be explained, and the 15 parameters are fully documented in the schema. The description supplies the conceptual model and the two-mode behavior (list vs. single lookup) an agent needs; only the filtering parameters are left entirely to the schema, which is acceptable here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 and every parameter is already documented. The description goes slightly beyond by explaining the intended interplay (rawTransactionId switches from listing to mapping, includeDetails layers in event logs and decoded calls) and by characterizing the trustworthiness of that extra data.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete verb and resource ('Find compact source transactions ... called Raw Transactions') and defines the domain term, which helps an agent map the concept. It also covers the single-lookup mode via rawTransactionId. It does not, however, explicitly distinguish itself from the close sibling list_portfolio_transactions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Find compact source transactions first' implies this is the entry point before wallet movements and accounting transactions, which is useful sequencing guidance. But no alternative tool is named and no when-not-to-use condition is given, so routing between this and list_portfolio_transactions is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources