Skip to main content
Glama

Get Follows

get_follows
Read-onlyIdempotent

Get accounts a Bluesky user follows by handle. Returns followed profiles with handles, display names, bios, and descriptions.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of follows (1-100, default 50)
handleYesBluesky handle

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
followsYesList of followed profiles

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "follows": {
      +      "description": "List of followed profiles",
      +      "items": {
      +        "properties": {
      +          "description": {
      +            "description": "Followed account's bio",
      +            "type": "string"
      +          },
      +          "did": {
      +            "description": "Decentralized identifier",
      +            "type": "string"
      +          },
      +          "displayName": {
      +            "description": "Followed account's display name",
      +            "type": "string"
      +          },
      +          "followers": {
      +            "description": "Followed account's follower count",
      +            "type": "number"
      +          },
      +          "following": {
      +            "description": "Followed account's following count",
      +            "type": "number"
      +          },
      +          "handle": {
      +            "description": "Followed account's handle",
      +            "type": "string"
      +          },
      +          "posts": {
      +            "description": "Followed account's post count",
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "did",
      +          "handle",
      +          "displayName",
      +          "description",
      +          "followers",
      +          "following",
      +          "posts"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "follows"
      +  ],
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "handle": "alice.bsky.social"
      +  },
      +  {
      +    "handle": "jack.bsky.social",
      +    "limit": 75
      +  }
      +]
  3. First observed

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering safety. The description adds that it returns profiles with certain fields, but this is likely redundant with the output schema. No additional behavioral traits (e.g., pagination, rate limits) are disclosed.

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?

The description is a single, front-loaded sentence with no filler. It conveys the essence efficiently.

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?

For a simple read-only getter with comprehensive schema annotations and an output schema, the description is sufficiently complete. It covers the core function without needing to detail return values or edge cases.

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?

Both parameters have full descriptions in the schema (100% coverage), so the baseline is 3. The description doesn't add meaningful parameter-level semantics beyond restating the handle use case.

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?

The description clearly states the tool's action ('Get accounts a Bluesky user follows by handle') with a specific verb and resource, effectively distinguishing it from sibling tools like get_followers and get_profile. The scope is unambiguous.

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?

The description clearly indicates the use case for retrieving a user's follow list, but it doesn't explicitly mention alternatives or when not to use it. Context is clear, though exclusionary guidance is absent.

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.