Skip to main content
Glama
IPinfo MCP Server

IPinfo MCP Server

Official
by ipinfo

ASN Lookup

ipinfo_asn
Read-onlyIdempotent

Retrieves autonomous system and network ownership details for public IPv4 or IPv6 addresses, returning ASN, name, domain, and optional network type to identify which organization owns an IP.

Instructions

Get autonomous system (network ownership) information for IP addresses.

By default queries the IPinfo Lite endpoint, which returns ASN, name, and domain. Set detailed=True to query the full lookup endpoint, which also includes the network type (e.g. isp, hosting, business, education).

Results are paginated.

If the API reports an error for specific IPs, those IPs are listed in errors with the reason and left out of results.

Results are cached in memory for the session, so repeat lookups of the same IP are served from cache without consuming API quota. You do not need to maintain your own cache or deduplicate IPs before calling this tool. The _meta field reports api_calls_made and from_cache counts.

Input Schema

NameRequiredDescriptionDefault
ipsYesPublic IP addresses to query, IPv4 or IPv6, e.g. ["8.8.8.8", "2001:4860:4860::8888"]. Private, loopback, reserved, multicast, and bogon addresses are rejected: they are reported under validation_errors and left out of results.
pageNoPage of the result set to return, 1-based. Values below 1 are clamped to 1, and a page past the last one returns no results.
detailedNoWhich IPinfo endpoint to query. Leave false to use the Lite endpoint, which returns the ASN, name, and domain. Set to true to use the full lookup endpoint, which also returns the network type (isp, hosting, business, education) and when the AS record last changed; it requires an IPinfo plan that includes that data, otherwise the call fails with ACCESS_DENIED.
page_sizeNoHow many IPs to resolve and return per page. Clamped to a maximum of 1000, the API batch limit. Only the IPs on the requested page are fetched, so a smaller page size consumes less quota per call.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.2.2
    • changedInput schema / properties / detailed / description
      Previous value: -"Which IPinfo endpoint to query. Leave false to use the Lite endpoint, which returns the ASN, name, and domain. Set to true to use the full lookup endpoint, which also returns the network type (isp, hosting, business, education) and when the AS record last changed; it requires a token whose plan includes that data, otherwise the call fails with ACCESS_DENIED."New value: +"Which IPinfo endpoint to query. Leave false to use the Lite endpoint, which returns the ASN, name, and domain. Set to true to use the full lookup endpoint, which also returns the network type (isp, hosting, business, education) and when the AS record last changed; it requires an IPinfo plan that includes that data, otherwise the call fails with ACCESS_DENIED."
  2. Changed1 schema field changedv0.1.13
    • removedOutput schema / description
      Removed value: -"Generic wrapper for non-object return types."
  3. First observedv0.1.12

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations it discloses pagination, per-IP error collection into an errors list, in-memory session caching that avoids quota consumption, and the _meta counters (api_calls_made, from_cache). It also warns that detailed=True fails with ACCESS_DENIED without the right plan — exactly the kind of failure-mode context annotations can't carry.

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 purpose and the default endpoint, then layered detail in short paragraphs. The caching/_meta paragraph is slightly redundant with the quota framing but each point is actionable, so only minor trimming is warranted.

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?

With an output schema present and full schema coverage, the description just needs to cover behavior the structured fields can't: error handling, pagination, caching, and quota. All four are addressed, so an agent has everything needed to call this 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 every parameter including the detailed endpoint tradeoff and page_size quota impact is already documented in the schema. The description reinforces the Lite/detailed distinction and caching but adds little parameter semantics the schema doesn't already provide; baseline 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 and resource — 'Get autonomous system (network ownership) information for IP addresses' — with a clarifying gloss on what ASN means. It is distinguishable from ipinfo_geolocate or ipinfo_check_privacy by domain, but it never names the sibling closest to it (ipinfo_lookup) and even refers to a 'full lookup endpoint', which could blur the line with that sibling.

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 operational guidance: default Lite endpoint vs detailed=True, the plan requirement for detailed data, and the explicit instruction not to maintain your own cache or deduplicate IPs. What's missing is sibling routing — nothing says when to choose this over ipinfo_lookup or ipinfo_geolocate.

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