Skip to main content
Glama

list_connectable_apps

Look up which third-party apps Dock can connect (Gmail, Slack, Notion, HubSpot, Granola...), with each app's name and a short description. Use it BEFORE telling anyone that Dock does or does not have an app, and when someone asks 'do you have X?' or 'what can I connect for CRM?'. It only reads: it connects nothing, shows no card and grants nothing. Pass query (an app name, a misspelling of one, or a word describing what it does, e.g. "hubspot", "granola mcp", "crm"). The answer has offered: true only when an app with that exact name or slug is connectable; otherwise offered: false and any close matches are listed under matches, so say plainly that Dock does not offer it rather than guessing. Each result also says where it stands for your owner: connected (and you can use it), connected_not_shared (connected, but not shared with you), or not_connected. Without query it returns only what your owner already has connected and how many apps Dock offers in total; it never dumps the whole catalogue, so search by name or topic. To put a Connect card in front of your owner, call request_connection with the app's slug (in Dock chat), or create_owner_link with kind: "connect_app" and the slug (over iMessage or text, where cards are not visible). If already_connected or connected_not_shared comes back, follow what request_connection tells you rather than asking again.

Input Schema

NameRequiredDescriptionDefault
limitNoMost matches to return. Default 8.
queryNoAn app name or slug, a likely misspelling, or a word for what it does. Max 100 characters.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does: 'It only reads: it connects nothing, shows no card and grants nothing' rules out side effects, and 'it never dumps the whole catalogue' discloses an important negative behavior. It also pre-explains the return contract (offered/matches and per-result connected, connected_not_shared, not_connected) so the agent knows what it will get back and how to phrase results.

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?

Purpose and the key read-only guarantee are front-loaded, and virtually every sentence adds actionable information. It runs long and packs in routing detail for request_connection / create_owner_link that partly belongs to those tools, which costs it a point, but there is no filler or repetition.

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

Completeness5/5

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

There is no output schema, so the description must explain return values — and it does precisely: offered/matches semantics, the three connection states per result, and the degenerate no-query response. Combined with the when-to-use routing, an agent has everything needed to call this correctly and interpret the answer.

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 coverage is 100%, so the baseline is 3; the description earns above that by explaining what query actually does semantically — it accepts a name, a misspelling, or a topic word ('crm'), and determines whether offered is true via exact name/slug match, with close matches surfaced under matches. It also documents the no-query default behavior (owner's connected apps plus total count), which the schema cannot express. The limit parameter is left to the schema.

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

Purpose5/5

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

Opens with a specific verb+resource: 'Look up which third-party apps Dock can connect', then enumerates examples (Gmail, Slack, Notion, HubSpot, Granola) and what is returned (name + short description). Nothing in the sibling list overlaps with this catalogue-lookup role, so the tool is unambiguous on its own.

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

Usage Guidelines5/5

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

Gives explicit positive triggers ('BEFORE telling anyone that Dock does or does not have an app', "do you have X?", 'what can I connect for CRM?') and explicit routing to alternatives: request_connection for in-chat cards, create_owner_link with kind connect_app for iMessage/text. It even covers the follow-up branch when already_connected or connected_not_shared comes back.

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.