connections_list
List redacted platform connections
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| cursor | No | ||
| channel | No | ||
| connection_context | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| message | No | ||
| retryable | No | ||
| support_ref | No |
List redacted platform connections
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| cursor | No | ||
| channel | No | ||
| connection_context | No |
| Name | Required | Description | Default |
|---|---|---|---|
| message | No | ||
| retryable | No | ||
| support_ref | No |
Changes observed during successful MCP inspections.
Output schema / else / properties / channels / items / properties / connections / items / properties / connection_stateAdded value: +{
+ "description": "Optional. user_disconnected = the user withdrew AdsAgent's access (data is kept, reconnect any time); needs_reauthorization = the credential expired or was invalidated.",
+ "enum": [
+ "connected",
+ "user_disconnected",
+ "needs_reauthorization",
+ "removed"
+ ],
+ "type": "string"
+}Output schema / else / properties / connections / items / properties / connection_stateAdded value: +{
+ "description": "Optional. user_disconnected = the user withdrew AdsAgent's access (data is kept, reconnect any time); needs_reauthorization = the credential expired or was invalidated.",
+ "enum": [
+ "connected",
+ "user_disconnected",
+ "needs_reauthorization",
+ "removed"
+ ],
+ "type": "string"
+}Output schema / then / properties / categoryAdded value: +{
+ "type": "string"
+}Output schema / then / properties / expectedAdded value: +{
+ "type": "boolean"
+}Output schema / then / properties / failure_kindAdded value: +{
+ "type": "string"
+}Output schema / then / properties / responsibility_hintAdded value: +{
+ "type": "string"
+}Output schema / then / properties / routeAdded value: +{
+ "type": "string"
+}Output schema / then / properties / user_visibleAdded value: +{
+ "type": "boolean"
+}Input schema / properties / connection_contextAdded value: +{
+ "pattern": "^mctx_v1_[0-9a-f]{64}$",
+ "type": "string"
+}Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description's one contribution is 'redacted', which usefully warns that returned connection data is masked — a trait annotations do not express. It says nothing about pagination or result volume, so the gain is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded phrase with no padding, which is structurally clean. But the brevity comes from omission rather than discipline — it is under-specified for a four-parameter, paginated listing tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value explanation is not required, and annotations cover safety. Still, with four undocumented parameters, no pagination behavior, and no routing relative to the other connections_* tools, the description leaves the agent short of what it needs to invoke this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four parameters (limit, cursor, channel, connection_context), and the description compensates for none of them. It gives no hint about what 'channel' filters, how 'cursor' paginates, or what the mctx_v1_ pattern identifier represents, so the agent must guess at invocation semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It gives a verb ('List') and a resource ('redacted platform connections'), and the qualifier 'redacted' tells the agent the payload is masked. However, it does not distinguish this from siblings such as connections_check_intent, connections_create_intent, or connections_disconnect_guide, leaving the agent to infer which of the connections_* family it wants.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of the sibling tools in the connections_* family. The agent gets no signal about whether this is a discovery step before connections_create_intent or an independent listing operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.