Skip to main content
Glama

PenguinRadar

Server Details

Instagram profiles, follower/following snapshots and changes, with budgeted public lookups.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.8/5.0

Scored across 6 tools

Disambiguation4/5

Each tool targets a distinct data source+action: stored profile reads (get_account), change history (get_account_changes), snapshot lists (list_followers/list_following), tracked-account inventory (list_tracking), and explicit online queries (query_public_account). The split between cached snapshot reads and the online query_public_account is well spelled out, though get_account vs list_tracking have mild thematic overlap in returning account/profile counts.

Naming Consistency5/5

All six names follow a clean snake_case verb_noun pattern (get_*, list_*, query_*). The verbs map sensibly to their intent (get=read one, list=enumerate, query=live fetch), so the convention is both consistent and informative.

Tool Count5/5

Six tools is well-scoped for a focused social-tracking radar, with each tool earning its place across the read/query surface. No redundant or filler tools are present.

Completeness3/5

The read/query surface is thorough, but a tracking product lacks any tool to add or remove tracked accounts—only listing/reading them. This write-side gap can block the core setup workflow, and there is no delete/refresh of snapshots, leaving agents at a dead end for managing what they track.

Available Tools

6 tools
get_accountA
Read-onlyIdempotent
Inspect

Read stored profile information and follower/following counts. Counts may have a different observation time than lists. No online collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesInstagram username, optionally prefixed with @.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metaYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds two genuinely extra behavioral facts: data provenance ('no online collection') and a staleness caveat ('counts may have a different observation time than lists') that an agent needs to avoid misreading counts against list results.

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 short sentences, front-loaded with the core purpose and then the two constraints. No filler, no restatement of the tool name.

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-value explanation is unnecessary, and annotations carry the safety profile. The description supplies the freshness caveat and data-source note, leaving only the sibling-routing guidance absent for a low-complexity single-parameter read.

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% and the single username parameter is fully documented in the schema (including @ handling and length bounds). The description adds no parameter-level detail, so the baseline of 3 applies.

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 specific verb+resource combination: reads 'stored profile information and follower/following counts'. The word 'stored' plus 'No online collection' implicitly separates it from the online-facing siblings, though it never names them directly, so the differentiation is left to inference.

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?

'No online collection' implies this is the cached/offline path, which is meaningful given siblings like query_public_account and list_followers, but the description never states when to choose this tool over those alternatives. Usage is implied rather than directed.

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

get_account_changesA
Read-onlyIdempotent
Inspect

Read detected changes in your accessible tracking history, default last seven calendar days UTC. detectedAt is detection time, not exact Instagram action time. For the next page send username and cursor; the cursor keeps the list, dates and timezone.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNo
fromNo
listNofollowers
limitNo
cursorNometa.nextCursor from the previous page of this same tool and account.
timezoneNoUTC
usernameYesInstagram username, optionally prefixed with @.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metaYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/non-destructive, so the safety profile is covered. The description adds genuinely new behavioral context: detectedAt is detection time rather than the exact Instagram action time, and the cursor must carry the list/dates/timezone to keep the page consistent.

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 dense sentences with zero filler, front-loaded with the resource and default window before the timestamp caveat and pagination mechanics.

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 values need no explanation, and the description covers the default range, timestamp semantics and pagination contract. Only the limit parameter and list enum semantics go unexplained.

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 only 29%, so the description must compensate and partially does: it explains from/to defaulting, cursor continuation, and the list/timezone coupling. It never mentions limit or the followers/following semantics, leaving a real gap for a 7-parameter tool.

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 specific verb+resource: 'Read detected changes in your accessible tracking history'. The word 'changes' separates it from the sibling list_followers/list_following/list_tracking tools, though the description never explicitly contrasts itself with them.

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 concrete context: the default window is the last seven calendar days UTC, and it explains the continuation condition ('for the next page send username and cursor'). No explicit when-not or named alternative sibling, so it stops short of a 5.

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

list_followersB
Read-onlyIdempotent
Inspect

Read a page of the most recent accessible follower snapshot, or permitted public query cache. State its asOf and partial coverage. Never collects automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
cursorNometa.nextCursor from the previous page of this same tool and account.
usernameYesInstagram username, optionally prefixed with @.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metaYes

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare the safe read profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower, and the description still adds real behavioral context: it reads a snapshot/cache rather than triggering collection ('Never collects automatically') and warns results may be partial with an asOf timestamp. It stops short of explaining auth requirements or rate limits.

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

Conciseness3/5

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

Two compact sentences with the purpose front-loaded, but the phrasing is opaque ('permitted public query cache') and the imperative 'State its asOf and partial coverage' is an odd instruction rather than a clean statement of behavior.

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

Completeness3/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 values need not be described, and annotations cover the safety profile. What remains missing is usage routing against siblings and any clarity on the snapshot-versus-cache distinction, leaving the definition adequate but with clear gaps.

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 67%, with username and cursor documented in the schema but limit undocumented. The description adds no syntax or format detail for any parameter; 'Read a page' only loosely signals pagination. Baseline 3 applies when the schema carries most of the burden.

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 specific verb (Read) and resource (a page of the follower snapshot), so an agent knows this returns followers rather than the following list, accounts, or changes. However, the phrase 'permitted public query cache' muddies what is actually returned and there is no explicit differentiation from siblings like list_following or query_public_account.

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

Usage Guidelines2/5

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

No statement of when to use this versus the sibling tools (list_following, query_public_account, list_tracking). The 'Never collects automatically' note hints at a read-only/cache posture but is not framed as a usage condition or exclusion.

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

list_followingB
Read-onlyIdempotent
Inspect

Read a page of the most recent accessible following snapshot, or permitted public query cache. State its asOf and partial coverage. Never collects automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
cursorNometa.nextCursor from the previous page of this same tool and account.
usernameYesInstagram username, optionally prefixed with @.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metaYes

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the bar is lower. The description adds genuinely non-obvious behavior: it never collects automatically, and its output may carry partial coverage tied to an asOf timestamp. That is useful context an agent cannot get from the annotations or schema.

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?

Three terse sentences, front-loaded with the core action and resource. The middle sentence reads as an instruction to the caller ('State its asOf...') which is slightly cryptic, but nothing is wasted.

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

Completeness3/5

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

With an output schema covering return values and annotations covering safety, the description only needs to add operational context. It does add the no-auto-collection and partial-coverage facts, but it leaves the sibling-routing and any authentication/access prerequisites unstated, which matters for a tool named alongside four related account-data tools.

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 coverage is 67% – cursor and username are documented in-schema, while limit is not, though its type, default, and min/max bounds are self-evident in the schema. The phrase 'Read a page' hints at pagination but the description adds no format or constraint detail beyond what the schema already shows.

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 specific verb+resource: reads a page of the most recent accessible following snapshot or public query cache. It implicitly separates itself from list_followers and query_public_account by specifying 'following' versus followers and by calling out the cached nature, but it never names a sibling explicitly.

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

Usage Guidelines2/5

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

The cached-snapshot framing implies this is for reading existing data rather than triggering collection, but there is no explicit when-to-use, when-not-to-use, or comparison against list_followers, list_tracking, or query_public_account. An agent must infer the choice from the resource name alone.

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

list_trackingA
Read-onlyIdempotent
Inspect

List your tracked accounts with profile counts and snapshot times. Reads stored data without collection charges.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
cursorNometa.nextCursor from the previous page of this same tool and account.
includeArchivedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metaYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavioral context the annotations cannot convey: this reads cached stored data and incurs no collection charges. Pagination mechanics are left implicit, keeping it from a 5.

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?

Two sentences, zero filler, and the core action is front-loaded before the cost/behavioral note. Every clause earns its place.

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?

An output schema exists, so return values need not be spelled out, and the cursor's pagination role is documented in the schema itself. For a read-only list tool with full annotation coverage, the description supplies what the structured fields do not.

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

Parameters2/5

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

Schema description coverage is only 33%: 'cursor' is documented in the schema, but 'limit' and 'includeArchived' have no descriptions anywhere. The description adds no parameter meaning at all, so it fails to compensate for the coverage gap as required at this level.

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 specific verb and resource ('List your tracked accounts') and even previews the payload ('profile counts and snapshot times'). It is distinguishable from list_followers/list_following by the word 'tracked', but it never names or contrasts a sibling explicitly, so it stops short of a 5.

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?

Usage is implied rather than stated: the possessive 'your tracked accounts' and the 'without collection charges' phrase hint that this is the cheap stored-data path. There is no explicit when-to-use/when-not guidance or named alternative (e.g., get_account or get_account_changes), so an agent must infer the routing.

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

query_public_accountA
Idempotent
Inspect

Explicit online query of a public profile or ONE page of followers/following (one source page, usually 25 people). May consume credits: a first list page needs maxCredits of at least 2 (profile + page), a next page 1. Require user authorization for this target, type and maxCredits. Generate and keep idempotencyKey before the first attempt; reuse it with identical arguments when restoring. Never automatically fetch all pages or increase budget.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYes
cursorNo
usernameYesInstagram username, optionally prefixed with @.
maxCreditsYes
idempotencyKeyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
metaYes

TDQS

A4.5/5.0
Behavior5/5

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

Adds substantial context beyond annotations: concrete credit burn (maxCredits ≥2 for a first list page, 1 for a next page), the authorization requirement per target/type/budget, and idempotency-key lifecycle guidance (generate before first attempt, reuse with identical arguments when restoring). This is consistent with readOnlyHint=false and idempotentHint=true and explains why the operation is not free.

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?

Front-loaded with the core action and scope, then progressively adds cost, authorization and retry rules. Every sentence carries operational weight, though the dense run-on phrasing around credit thresholds takes 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?

For a credit-consuming, idempotent, paginated read tool with an output schema already present, the description covers cost, auth, pagination discipline and retry safety. Minor gaps remain on failure/restore semantics and cursor origin, but nothing essential to a correct first call is missing.

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 only 20%, so the description has to compensate, and it does for maxCredits (per-page cost semantics) and idempotencyKey (lifecycle and reuse rule), plus cursor via 'next page'. It leaves 'type' enum values and cursor format unelaborated, but the critical cost/retry parameters are covered.

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+resource (online query of a public profile or followers/following) and pins the scope to a single source page of ~25 people. The 'ONE page' framing implicitly distinguishes this from bulk siblings like list_followers/list_following without needing to name them.

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 usage conditions: explicit target/type/maxCredits authorization, credit cost thresholds per page, and explicit negatives ('never automatically fetch all pages or increase budget'). It stops short of naming alternative siblings (e.g. get_account) for cached or non-credit reads.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 6 tool updates
    • First observedget_account
    • First observedget_account_changes
    • First observedlist_followers
    • First observedlist_following
    • First observedlist_tracking
    • First observedquery_public_account

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables MCP clients to look up public Instagram profiles by handle and page through their public post feeds, returning structured JSON data such as follower counts, bios, and engagement metrics.
    2
    28 npm
    79 PyPI
    16
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables MCP clients to retrieve read-only public Instagram data through 27 tools covering profiles, posts, reels, stories, highlights, comments, likers, followers, hashtags, places, audio and keyword search. No login is required, and every response reports remaining API credits.
    27
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Instagram engagement analysis using the unofficial Instagram Private API, including comment sentiment analysis, account comparison, demographic extraction, lead identification, and engagement reporting.
    46 npm
    MIT
  • F
    license
    A
    quality
    Not graded
    maintenance
    Enables access to Instagram data through EnsembleData API, allowing retrieval of user information, posts, reels, follower counts, and search functionality for users, hashtags, and locations.
    9
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources