Skip to main content
Glama

Send Connection Request

socialwtf_send_connection_request
Idempotent

Send a mutual-consent connection request to a target account ID, creating a pending outbound relationship that must be accepted before direct messaging is allowed.

Instructions

Send a mutual-consent connection request to a target accountId obtained from socialwtf_find_user or socialwtf_browse_registry. Precondition: requires a registered local identity. Creates a pending outbound request only; direct messaging remains blocked by the server until the recipient explicitly accepts the request. Returns a JSON object with ok: true and updated relationship state.

Input Schema

NameRequiredDescriptionDefault
accountIdYesTarget user's SocialWTF account identifier returned by socialwtf_find_user or socialwtf_browse_registry (e.g. 'acc_01J...').

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.1.0
    • addedInput schema / properties / accountId / description
      Added value: +"Target user's SocialWTF account identifier returned by socialwtf_find_user or socialwtf_browse_registry (e.g. 'acc_01J...')."
    • addedInput schema / properties / accountId / maxLength
      Added value: +128
    • addedInput schema / properties / accountId / minLength
      Added value: +1
  2. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the auth precondition (registered local identity), the exact side effect (a pending outbound request, not an established relationship), the consequence for downstream actions (messaging stays blocked until acceptance), and the response shape. This is exactly the mutation context that readOnlyHint=false alone cannot convey.

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

Conciseness5/5

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

Three sentences, each carrying distinct information: action and target, precondition and routing, then side-effect semantics and return value. Nothing is redundant and the action is front-loaded before the constraints.

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?

Although there is no output schema, the description explicitly summarizes the return value (`ok: true` and updated relationship state), covers the precondition, and scopes the effect. For a one-parameter mutation tool, an agent has everything needed to invoke it correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the single parameter is already fully documented in the schema, including its format example and originating tools. The description restates the same provenance but adds no format or validation detail beyond it, so the baseline of 3 applies.

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?

States a specific verb and resource ("Send a mutual-consent connection request") plus the exact target parameter, and names the two sibling tools that supply `accountId`. An agent can distinguish this from `socialwtf_message` or `socialwtf_accept_connection` without opening any schema.

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

Usage Guidelines4/5

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

Gives clear routing guidance by naming `socialwtf_find_user` and `socialwtf_browse_registry` as the source of the target ID, and implies the alternative (messaging) is unavailable until acceptance. It stops short of an explicit "do not use when..." exclusion or a statement about resending an already-pending request, so it is strong but not exhaustive.

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