Skip to main content
Glama

IPInfo MCP Server

openapi.yaml70.7 kB
openapi: 3.0.0 info: description: | This OpenAPI Specification defines the endpoints for the ipinfo.io API, providing detailed information about IPinfo's IP data API service. The specification covers the following aspects of IPinfo's API services: - IPinfo's API products: - [IP to Geolocation API](https://ipinfo.io/products/ip-geolocation-api) - [IP to Privacy Detection API](https://ipinfo.io/products/proxy-vpn-detection-api) - [ASN API](https://ipinfo.io/products/asn-api) - [IP to Company API](https://ipinfo.io/products/ip-company-api) - [Hosted Domains API](https://ipinfo.io/products/reverse-ip-api) - [IP to Phone Carrier Detection API](https://ipinfo.io/products/ip-carrier-api) - [IP to Abuse Contact API](https://ipinfo.io/products/ip-abuse-contact-api) - [IP WHOIS API](https://ipinfo.io/products/whois-api) - Special endpoints: - Access token information via `/me` endpoint - Summarize IP addresses - Map IP addresses - [API authentication process](https://ipinfo.io/developers#authentication) - HTTP status codes Detailed documentation of IPinfo's API and data downloads services can be found on the [IPinfo's developer portal](https://ipinfo.io/developers). Feel free to [sign up for a free account](https://ipinfo.io/signup) and get IP to Geolocation API data for up to 50,000 requests per month. [Checkout our full suite of API services](https://ipinfo.io/pricing). IPv4 Root Endpoint: `https://ipinfo.io` IPv6 Root Endpoint: `https://v6.ipinfo.io` **If you need any help or support with using IPinfo's services, reach out to the [IPinfo Community](https://community.ipinfo.io/).** --- version: 1.0.0 title: IPinfo.io OpenAPI Specification contact: name: IPinfo email: support@ipinfo.io url: "https://ipinfo.io/" externalDocs: description: IPinfo Developers Portal / Documentation url: "https://ipinfo.io/developers" servers: - url: "https://ipinfo.io/" - url: "https://v6.ipinfo.io/" tags: - name: general description: General API. - name: single description: Single info API. - name: privacy detection description: Privacy Detection API. externalDocs: description: Find more info here url: https://ipinfo.io/products/proxy-vpn-detection-api - name: asn description: ASN API. externalDocs: description: Find more info here url: https://ipinfo.io/products/asn-api - name: company description: IP to Company API. externalDocs: description: Find more info here url: https://ipinfo.io/products/ip-company-api - name: ranges description: IP Ranges API. externalDocs: description: Find more info here url: https://ipinfo.io/developers/ranges - name: domains description: Hosted Domains API. externalDocs: description: Find more info here url: https://ipinfo.io/developers/hosted-domains - name: abuse description: Abuse Contact API. externalDocs: description: Find more info here url: https://ipinfo.io/ip-abuse-contact-api - name: whois description: IP WHOIS API externalDocs: description: Find more info here url: https://ipinfo.io/developers/whois paths: /: get: tags: - general summary: Returns IP inforomation about the current IP. description: | Returns IP information about the current IP. operationId: getCurrentInformation security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/FullResponse" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}": get: tags: - general summary: Returns information about the provided IP. description: | The ipinfo.io/{ip} endpoint provides comprehensive information about a specified IP address, including geographic location (city, region, country), coordinates, postal code, and timezone. Based on the pricing tier, it also provides ASN (Autonomous System Number) details, associated company information, privacy settings (e.g., VPN, proxy usage), abuse contact information, and hosted domains associated with the IP. This endpoint is useful for applications needing detailed IP intelligence, such as identifying geographic origin, privacy status, and potential abuse reporting information. operationId: getInformationByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/FullResponse" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "400": $ref: "#/components/responses/BadRequest" "500": $ref: "#/components/responses/InternalServerError" "/me": get: tags: - general summary: Returns API service request limit by access token. description: | The `/me` API endpoint can be used to provide summary information on the access token limits, access to API products, and other related information. The `/me` endpoint can be used in verifying access tokens as well. operationId: getMe security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Me" "400": $ref: "#/components/responses/BadRequestMe" "500": $ref: "#/components/responses/InternalServerError" /batch: post: tags: - general summary: Bulk IPinfo API enrichment . description: Bulk or batch enrich IP addresses with IP information. See [documentation](https://ipinfo.io/developers/advanced-usage#batching-requests). operationId: batch security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] requestBody: $ref: "#/components/requestBodies/Batch" responses: "200": $ref: "#/components/responses/Batch" /tools/summarize-ips?cli=1: post: tags: - general summary: Summarize IP addresses. description: Get summary-level information of upto 500,000 IP addresses, including IP location on a map, IP types, privacy detection flags, top ASNs, top cities, and more. [Explore the IPinfo Summarize tool](https://ipinfo.io/tools/summarize-ips). operationId: suammarize requestBody: $ref: "#/components/requestBodies/Summarize" responses: "200": $ref: "#/components/responses/Summarize" "422": $ref: "#/components/responses/UnprocessableEntity" /tools/map?cli=1: post: tags: - general summary: Higlight IP addresses on a map. description: Visualize upto 500,000 IP addresses on an interactive map. [Explore the IPinfo Map IPs tool](https://ipinfo.io/tools/map). operationId: map requestBody: $ref: "#/components/requestBodies/Map" responses: "200": $ref: "#/components/responses/Map" "/AS{asn}": get: tags: - asn summary: Returns information about an ASN. description: | Returns information about an ASN, such as the assigned prefixes, related domain, and more. The ASN API provides comprehensive information about an Autonomous System (AS) entity. It delivers data on the AS's registration, ASN type, network details, associated prefixes (including IPv6), and relationships with other ASNs (peers, upstreams and downstreams). operationId: getAsn security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Asn" responses: "200": $ref: "#/components/responses/Asn" "404": $ref: "#/components/responses/NotFoundASN" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/company": get: tags: - company summary: Returns information about the company that operates or is assigned the IP address. description: | Returns information of the organization that is operating an IP address such as name, organization type and their official domain. operationId: getCompany security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Company" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/carrier": get: tags: - carrier summary: Detects if the IP address is being used in a mobile carrier network. It returns the Mobile Country Code (MCC), Mobile Network Code (MNC), and the originating country of the carrier. description: | Detects if the IP address is being used in a mobile carrier network. This API endpoint can be used to detect the usage of a phone device through an IP address. It returns the Mobile Country Code (MCC), Mobile Network Code (MNC), and the originating country of the carrier. operationId: getCompany security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Carrier" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/ranges/{domain}": get: tags: - ranges summary: Returns information about a domain ranges. description: | The IP address ranges API endpoint provides information about IP address ranges assigned to or operated by a specific organization, identified by its domain name. This includes the number of IP ranges, specific IP range blocks (both IPv4 and IPv6), and any domain redirection information. operationId: getRanges security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Domain" responses: "200": $ref: "#/components/responses/Ranges" "/domains/{ip}": get: tags: - domains summary: Returns a list of all of the domains hosted on the provided IP address. description: | The Hosted Domains or Reverse IP API endpoint returns a list of domains hosted on a specified IP address, including the total number of domains and the specific names associated with that address. operationId: getDomains security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" - $ref: "#/components/parameters/Page" - $ref: "#/components/parameters/Limit" responses: "200": $ref: "#/components/responses/Domains" "/{ip}/abuse": get: tags: - abuse summary: Returns data containing information belonging to the abuse contact of the IP address. description: | The IP to abuse contact information API endpoint provides detailed information about the abuse contact associated with a specific IP address. The response includes the abuse contact's name, email address, postal address, city, state, country, phone number, and the network associated with the IP. operationId: getAbuse security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Abuse" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/privacy": get: tags: - privacy detection summary: Returns privacy information about the selected IP. description: | The IP to Privacy Detection or Anonymous IP API provides privacy-related information about a specified IP address. This includes whether the IP is associated with a VPN, proxy, Tor network, relay service, or a hosting service/data center (indicative of bots). The response details the privacy status of the IP, indicating any anonymizing services in use and specifies the type of service (e.g., NordVPN, TunnelBear, Mullvad, ProtonVPN, CyberGhost, ExpressVPN, Surfshark etc.). operationId: getPrivacyInformationByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Privacy" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/whois/net/{whoisnetid}": get: tags: - whois summary: Returns the WHOIS information by Net ID lookup. description: | This API endpoint allows users to retrieve WHOIS information based on a specified Net ID. The response includes details such as the IP address range, organization name, country, and various administrative information related to the network. security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Whoisnetid" - $ref: "#/components/parameters/Page" - $ref: "#/components/parameters/Whoissource" responses: "200": $ref: "#/components/responses/WhoisNetId" "/whois/net/{whoisip}": get: tags: - whois summary: Returns the WHOIS information by WHOIS IP address or IP address range. description: | The WHOIS API lookup via IP address provides WHOIS information based on a specific IP address or IP address range. The response contains detailed information about the organization associated with the IP, including the range of addresses, organization name, administrative contacts, abuse contacts, and additional metadata such as the country and contact details for both technical and administrative support. security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Whoisip" - $ref: "#/components/parameters/Page" - $ref: "#/components/parameters/Whoissource" responses: "200": $ref: "#/components/responses/WhoisIp" "/whois/net/{domain}": get: tags: - whois summary: Returns the WHOIS information by WHOIS domain of an internet organization. description: | The IPinfo WHOIS API lookup via organization organization domain name provides comprehensive WHOIS information for specified organization, enabling users to gain insights into the registration and organizational details of internet entities. The response includes a total count of records, and detailed records for each associated IP range. Querying the organization domain reveals critical information such as the organization's name, country, and contact details for technical and administrative personnel, including names, emails, and physical addresses. Additionally, the response features abuse contact information and registration dates, which are essential for addressing network issues and potential abuse. security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Domain" - $ref: "#/components/parameters/Page" - $ref: "#/components/parameters/Whoissource" responses: "200": $ref: "#/components/responses/WhoisDomain" "/whois/net/AS{asn}": get: tags: - whois summary: Returns the WHOIS information by WHOIS ASN. description: | The IPinfo WHOIS API lookup via ASN provides in-depth WHOIS information associated with a specific Autonomous System Number (ASN). Querying ASN reveals critical data, including the organization's name, the allocated IP range, and the country of operation. The response includes administrative and technical contact information, highlighting the contact person along with their address and phone number. Additionally, the API provides details for abuse reporting, including a dedicated email for abuse contacts. This comprehensive dataset is essential for network administrators, security professionals, and organizations needing to investigate ASN ownership and maintain network integrity. security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Asn" - $ref: "#/components/parameters/Page" - $ref: "#/components/parameters/Whoissource" responses: "200": $ref: "#/components/responses/WhoisAsn" "/whois/org/{whoisorgid}": get: tags: - whois summary: Returns the WHOIS information by WHOIS organization (ORG) ID of an internet organization. description: | The IPinfo WHOIS API lookup via organization IDs (Org) provides comprehensive information about a specific internet organization identified by its WHOIS organization ID. Querying a WHOIS org key returns data about the internet organization. The response includes critical details such as the organization's address, along with the contact information for various roles within the organization. This includes administrative, technical, and abuse contacts. The API also offers timestamps for when the organization was created and last updated, which is essential for maintaining accurate records. security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Whoisorgid" - $ref: "#/components/parameters/Page" - $ref: "#/components/parameters/Whoissource" responses: "200": $ref: "#/components/responses/WhoisOrg" "/whois/poc/{whoispoc}": get: tags: - whois summary: Returns the WHOIS information by WHOIS Point of Contact (POC) value of an internet organization. description: | The IPinfo WHOIS API lookup via Points of Contact (POC) provides essential details about an individual associated with an internet organization identified by their WHOIS POC ID. For instance, querying the POC ID yields information about the name of the point of contact and their organization location. The response includes the organization's physical address, email address, and contact numbers. Additional metadata indicates when the record was created and last updated, alongside the source of the information. security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Whoispoc" - $ref: "#/components/parameters/Page" - $ref: "#/components/parameters/Whoissource" responses: "200": $ref: "#/components/responses/WhoisPoc" "/ip": get: tags: - single summary: Returns the current IP. description: | Returns the current public/external IP address. operationId: getCurrentIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Ip" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/ip": get: tags: - single summary: Returns a ip for the selected IP. description: | Returns a ip for the selected IP. operationId: getIpByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Ip" "404": $ref: "#/components/responses/NotFound" "400": $ref: "#/components/responses/BadRequest" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/hostname": get: tags: - single summary: Returns the current hostname. description: | Returns the current hostname. operationId: getCurrentHostname security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Hostname" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/hostname": get: tags: - single summary: Returns a hostname for the selected IP. description: | Returns a hostname for the selected IP. operationId: getHostnameByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Hostname" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/city": get: tags: - single summary: Returns the current city. description: | Returns the current city. operationId: getCurrentCity security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/City" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/city": get: tags: - single summary: Returns a city for the selected IP. description: | Returns a city for the selected IP. operationId: getCityByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/City" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/region": get: tags: - single summary: Returns the current region. description: | Returns the current region. If the region is not available, it will return an empty string. operationId: getCurrentRegion security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Region" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/region": get: tags: - single summary: Returns a region for the selected IP. description: | Returns a region for the selected IP. If the region is not available, it will return an empty string. operationId: getRegionByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Region" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/country": get: tags: - single summary: Returns the current country. description: | Returns a concise response consisting of a two-letter country code. If the country is not available, it will return an empty string. operationId: getCurrentCountry security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Country" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/country": get: tags: - single summary: Returns a country for the selected IP. description: | Returns a country for the selected IP in two letter ISO-3166 format. If the country is not available, it will return an empty string. operationId: getCountryByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Country" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/loc": get: tags: - single summary: Returns the current location. description: | The '/loc' API endpoint provides the geographical location of a user's IP address in a response with latitude and longitude in comma-separated text format. operationId: getCurrentLocation security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Location" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/loc": get: tags: - single summary: Get a location for the selected IP. description: | The '/loc' API endpoint provides the geographic location of an IP address as latitude and longitude separated by a comma in text form. operationId: getLocationByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Location" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/postal": get: tags: - single summary: Returns the current postal code or zip code. description: | The `/postal` API endpoint provides a straightforward method for retrieving the current postal code or zip code. When this endpoint is queried, the API responds with a simple string indicating the postal code for the current IP address. operationId: getCurrentPostal security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Postal" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/postal": get: tags: - single summary: Returns a postal for the selected IP. description: | The `/postal` API lets users input an IP address to get back the corresponding postal or zip code in a simple string format. operationId: getPostalByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Postal" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/timezone": get: tags: - single summary: Returns the current timezone. description: | The '/timezone' API endpoint returns the user's timezone based on their IP address in IANA format. operationId: getCurrentTimezone security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Timezone" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/timezone": get: tags: - single summary: Returns a timezone for the selected IP. description: | The `/timezone` API endpoint returns the IANA timezone based on the user's input IP address. operationId: getTimezoneByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Timezone" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/org": get: tags: - single summary: Returns the current ASN and AS organization. description: | The '/org' API endpoint identifies the Autonomous System Number (ASN) and ASN organization associated with the user's IP address. When called, the API returns a string with the ASN (prefixed by 'AS') and organization name. operationId: getCurrentOrganization security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] responses: "200": $ref: "#/components/responses/Organization" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" "/{ip}/org": get: tags: - single summary: Returns a organization for the selected IP. description: | The '/org' API endpoint provides the ASN and organization related to the user's input IP address. It returns a string including the ASN (prefixed by 'AS') and AS organization name. operationId: getOrganizationByIp security: - BasicAuth: [] - BearerAuth: [] - ApiKeyAuth: [] parameters: - $ref: "#/components/parameters/Ip" responses: "200": $ref: "#/components/responses/Organization" "400": $ref: "#/components/responses/BadRequest" "404": $ref: "#/components/responses/NotFound" "403": $ref: "#/components/responses/Forbidden" "429": $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" components: schemas: FullResponse: type: object required: - ip properties: ip: type: string example: "66.87.125.72" bogon: type: boolean example: false hostname: type: string example: "ip-66-87-125-72.spfdma.spcsdns.net" city: type: string example: "Springfield" region: type: string example: "Massachusetts" country: type: string example: "US" loc: type: string example: "42.0999,-72.5783" postal: type: string example: "01105" timezone: type: string example: "America/New_York" org: type: string example: "AS51501 Khabarovsk home networks Ltd" asn: $ref: "#/components/schemas/AsnResponse" company: $ref: "#/components/schemas/CompanyResponse" carrier: $ref: "#/components/schemas/CarrierResponse" privacy: $ref: "#/components/schemas/PrivacyResponse" domains: $ref: "#/components/schemas/DomainsResponse" MeResponse: type: object required: - token - requests - features properties: token: type: string example: "TOKEN" requests: type: object properties: day: type: integer example: 0 month: type: integer example: 69 limit: type: integer example: 50000 remaining: type: integer example: 2147483578 features: type: object properties: core: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 hostio: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 result_limit: type: integer example: 5 asn: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 abuse: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 whois: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 ranges: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 carrier: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 company: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 firmographics: type: boolean example: false org_additional: type: boolean example: false privacy: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 vpn_provider: type: boolean example: false hosted_domains: type: object properties: daily: type: integer example: 50000 monthly: type: integer example: 50000 result_limit: type: integer example: 5 AsnResponse: type: object required: - asn - name - domain - type properties: asn: type: string example: "AS10507" name: type: string example: "Sprint Personal Communications Systems" country: type: string example: "US" allocated: type: string example: "1997-02-14" registry: type: string example: "arin" domain: type: string example: "sprint.net" num_ips: type: integer example: 71224576 route: type: string example: "66.87.125.0/24" type: type: string example: "isp" enum: - isp - business - education - hosting - inactive prefixes: type: array items: $ref: "#/components/schemas/Prefix" prefixes6: type: array items: $ref: "#/components/schemas/Prefix6" peers: type: array items: type: string example: "1299" upstreams: type: array items: type: string example: "1299" downstreams: type: array items: type: string example: "109" Prefix: type: object required: - netblock - id - name - country properties: netblock: type: string example: "104.69.216.0/22" id: type: string example: "AKAMAI" name: type: string example: "Akamai Technologies, Inc." country: type: string example: "US" size: type: string example: "256" status: type: string example: "ALLOCATION" domain: type: string nullable: true example: "quadranet.com" Prefix6: type: object required: - netblock - id - name - country properties: netblock: type: string example: "2601::/20" id: type: string example: "COMCAST6NET" name: type: string example: "Comcast Cable Communications, LLC" country: type: string example: "US" size: type: string example: "20282409603651670423947251286016" status: type: string example: "ASSIGNMENT" domain: type: string example: "comcast.com" RangesResponse: type: object required: - domain - redirects_to - num_ranges - ranges properties: domain: type: string example: "comcast.net" num_ranges: type: string example: "37330" redirects_to: type: string example: "xfinity.com" ranges: type: array items: type: string example: "23.24.240.0/29" DomainsResponse: type: object required: - total properties: ip: type: string example: "1.1.1.1" page: type: integer example: 1 total: type: integer example: 17939 domains: type: array items: type: string example: "udemy.com" AbuseResponse: type: object properties: address: type: string example: "US, CA, Mountain View, 1600 Amphitheatre Parkway, 94043" country: type: string example: "US" email: type: string example: "network-abuse@google.com" name: type: string example: "Abuse" network: type: string example: "8.8.8.0/24" phone: type: string example: "+1-650-253-0000" CompanyResponse: type: object required: - name - domain - type properties: name: type: string example: "Sprint Springfield POP" domain: type: string example: "sprint.com" type: type: string example: "isp" enum: - isp - business - education - hosting CarrierResponse: type: object required: - name - mcc - mnc properties: name: type: string example: "Sprint Corporation" mcc: type: string example: "310" mnc: type: string example: "120" PrivacyResponse: type: object required: - vpn - proxy - tor - hosting - relay - service properties: vpn: type: boolean example: true proxy: type: boolean example: false tor: type: boolean example: false hosting: type: boolean example: false relay: type: boolean example: false service: type: string example: "" WhoisNetIdResponse: type: object properties: net: type: string total: type: integer page: type: integer records: type: array items: type: object properties: range: type: string id: type: string name: type: string country: type: string org: type: string admin: type: string abuse: type: string tech: type: string maintainer: type: string updated: type: string format: date status: type: string source: type: string raw: type: string example: range: "24.62.0.0/15" id: "" name: "Comcast Cable Communications Holdings, Inc" country: "US" org: "POC object or null" admin: "POC object or null" abuse: "POC object or null" tech: "POC object or null" maintainer: "POC object or null" updated: "2010-10-18" status: "REASSIGNMENT" source: "arin" raw: "<raw data>" example: net: "NEW-ENGLAND-5" total: 100 page: 0 records: - range: "24.62.0.0/15" id: "" name: "Comcast Cable Communications Holdings, Inc" country: "US" org: "POC object or null" admin: "POC object or null" abuse: "POC object or null" tech: "POC object or null" maintainer: "POC object or null" updated: "2010-10-18" status: "REASSIGNMENT" source: "arin" raw: "<raw data>" WhoisIpResponse: type: object properties: net: type: string example: "24.62.0.0/15" total: type: integer example: 100 page: type: integer example: 0 records: type: array items: type: object properties: range: type: string example: "24.62.0.0/15" id: type: string example: "NEW-ENGLAND-5" name: type: string example: "Comcast Cable Communications Holdings, Inc" country: type: string example: "US" org: type: string example: "C02610695" updated: type: string format: date example: "2010-10-18" status: type: string example: "REASSIGNMENT" source: type: string example: "arin" raw: type: string example: "<raw data>" example: net: "24.62.0.0/15" total: 100 page: 0 records: - range: "24.62.0.0/15" id: "NEW-ENGLAND-5" name: "Comcast Cable Communications Holdings, Inc" country: "US" org: "C02610695" updated: "2010-10-18" status: "REASSIGNMENT" source: "arin" raw: "<raw data>" WhoisDomainResponse: type: object properties: net: type: string example: "comcast.net" total: type: integer example: 80 page: type: integer example: 0 records: type: array items: type: object properties: range: type: string example: "24.147.0.0/17" id: type: string example: "NEW-ENGLAND-10" name: type: string example: "Comcast Cable Communications Holdings, Inc" country: type: string example: "US" org: type: string example: "C02610737" status: type: string example: "REASSIGNMENT" tech: type: string example: null maintainer: type: string example: null admin: type: string example: null abuse: type: string example: null updated: type: string format: date example: "2010-10-18" source: type: string example: "arin" raw: type: string example: "<raw data>" domain: type: string example: "comcast.net" example: net: "comcast.net" total: 80 page: 0 records: - range: "24.147.0.0/17" id: "NEW-ENGLAND-10" name: "Comcast Cable Communications Holdings, Inc" country: "US" org: "C02610737" status: "REASSIGNMENT" tech: null maintainer: null admin: null abuse: null updated: "2010-10-18" source: "arin" raw: "<raw data>" domain: "comcast.net" WhoisAsnResponse: type: object properties: net: type: string example: "AS9541" total: type: integer example: 47 page: type: integer example: 0 records: type: array items: type: object properties: range: type: string example: "58.65.203.0/24" id: type: string example: "CYBERNET" name: type: string example: "Broadband Services" country: type: string example: "PK" org: type: string example: null status: type: string example: "ALLOCATED NON-PORTABLE" admin: type: string example: "POC object or null" abuse: type: string example: "POC object or null" tech: type: string example: "POC object or null" maintainer: type: string example: "POC object or null" updated: type: string format: date example: "2021-01-27" source: type: string example: "apnic" raw: type: string example: "<raw data>" example: net: "AS9541" total: 47 page: 0 records: - range: "58.65.203.0/24" id: "CYBERNET" name: "Broadband Services" country: "PK" org: null status: "ALLOCATED NON-PORTABLE" admin: "POC object or null" abuse: "POC object or null" tech: "POC object or null" maintainer: "POC object or null" updated: "2021-01-27" source: "apnic" raw: "<raw data>" WhoisOrgResponse: type: object properties: org: type: string example: "PINEAP" total: type: integer example: 100 page: type: integer example: 0 records: type: array items: type: object properties: id: type: string example: "PINEAP" name: type: string example: "Pineapple Houser" address: type: string example: null country: type: string example: "US" admin: type: string example: "POC object or null" abuse: type: string example: "POC object or null" tech: type: string example: "POC object or null" maintainer: type: string example: "POC object or null" created: type: string format: date example: "2000-03-25" updated: type: string format: date example: "2011-09-24" source: type: string example: "arin" raw: type: string example: "<raw data>" example: org: "PINEAP" total: 100 page: 0 records: - id: "PINEAP" name: "Pineapple Houser" address: null country: "US" admin: "POC object or null" abuse: "POC object or null" tech: "POC object or null" maintainer: "POC object or null" created: "2000-03-25" updated: "2011-09-24" source: "arin" raw: "<raw data>" WhoisPocResponse: type: object properties: poc: type: string example: "CP312-ARIN" total: type: integer example: 1 page: type: integer example: 0 records: type: array items: type: object properties: id: type: string example: "CP312-ARIN" name: type: string example: "Cynthia Pararo" email: type: string example: "spararo@mindspring.com" address: type: string example: "US, GA, Atlanta, Pineapple Houser\n2131 Plaster Bridge Rd Ne, 303244036" country: type: string example: "US" phone: type: string example: "" fax: type: string example: "" created: type: string format: date example: "2000-03-25" updated: type: string format: date example: "2000-03-25" source: type: string example: "arin" raw: type: string example: "<raw data>" example: poc: "CP312-ARIN" total: 1 page: 0 records: - id: "CP312-ARIN" name: "Cynthia Pararo" email: "spararo@mindspring.com" address: "US, GA, Atlanta, Pineapple Houser\n2131 Plaster Bridge Rd Ne, 303244036" country: "US" phone: "" fax: "" created: "2000-03-25" updated: "2000-03-25" source: "arin" raw: "<raw data>" Error404: type: object required: - status - error properties: status: type: integer example: 404 error: type: object required: - title - message properties: title: type: string example: "Wrong ip" message: type: string example: "Please provide a valid IP address" Error404ASN: type: object required: - "error" properties: error: type: string example: "ASN Not Found!" Error403: type: object required: - title - message properties: title: type: string example: "Unknown token" message: type: string example: "Please ensure you've entered your token correctly. Refer to https://ipinfo.io/developers for details, or contact us at support@ipinfo.io for help" Error429: type: object required: - title - message properties: title: type: string example: "Rate limit exceeded" message: type: string example: "Upgrade to increase your usage limits at https://ipinfo.io/pricing, or contact us via https://ipinfo.io/support" Error400: type: object required: - title - message properties: title: type: string example: "Wrong module or field type" message: type: string example: "No module or field of type exists for the provided field. Please check our documentation https://ipinfo.io/developers." Error400Me: type: object required: - error properties: error: type: string example: "Invalid API token" token: type: string example: "TOKEN" Error500: type: string example: "Internal server error" Error422: type: object required: - title - message properties: title: type: string example: "No IPs Found" message: type: string example: "There were no valid IPs in the text." requestBodies: Batch: description: A JSON array containing IP addresses. required: true content: application/json: schema: type: array example: ["8.8.8.8/city", "8.8.8.8"] Summarize: description: A file containing IP addresses with each IP on a separate line. required: true content: text/plain: schema: type: string example: | 42.77.204.9 2a02:1811:1424:a200:a307:b776:645b:46b5 84.74.205.0 2601:19b:4980:2270:8869:1575:ffd0:5ba0 2a01:e0a:a2d:fd70::8056:6278 75.136.126.2 2400:4052:244:a900:8b5:16e9:badb:a2bd 104.103.81.185 2603:7000:8d40:47d7:64fc:6:56cf:1b54 216.211.59.51 Map: description: A file containing IP addresses with each IP on a separate line. required: true content: text/plain: schema: type: string example: | 46.95.248.61 215.113.215.175 27.7.158.28 209.99.186.255 192.40.165.85 2a02:c7f:f8c4:ca00:356d:ac4c:954c:e46 2001:16a2:9432:8126:2dbf:9aa0:8057:1246 2600:8807:a788:7c00:c828:264:8dcf:b37f 181.200.55.93 77.222.8.184 parameters: Ip: name: ip in: path description: A single IPv4 or IPv6 IP address. required: true schema: type: string Asn: name: asn in: path description: an ASN number. required: true schema: type: integer Domain: name: domain in: path description: a domain. required: true schema: type: string Page: name: page in: query description: The page query parameter can be used to go through paginated records. page starts at 0 and the parameter is part of the response when included in request. schema: type: integer minimum: 0 Limit: name: limit in: query description: The API returns 100 domains per page and has a limit of 1000 domains per page. We return up to 10 million results. The limit parameter can be used to control the number of domains per page. schema: type: integer minimum: 1 maximum: 1000 default: 100 Whoisnetid: name: whoisnetid in: path description: The Network (NET) ID of an internet organization. required: true schema: type: string Whoisip: name: whoisip in: path description: The IP address or an IP address range of an internet organization. required: true schema: type: string Whoisasn: name: WHOIS ASN in: path description: The WHOIS ASN value of an internet organization. required: true schema: type: string Whoisorgid: name: whoisorgid in: path description: The WHOIS organization (ORG) ID of an internet organization. required: true schema: type: string Whoispoc: name: whoispoc in: path description: The WHOIS Point of Contact (POC) value of an internet organization. required: true schema: type: string Whoissource: name: whoissource in: query description: Source query parameter to filter records by provided Whois source. schema: type: string enum: - "arin" - "ripe" - "afrinic" - "apnic" - "lacnic" responses: FullResponse: description: Full response object. content: application/json: schema: $ref: "#/components/schemas/FullResponse" Me: description: IPinfo access token rate and access information. content: application/json: schema: $ref: "#/components/schemas/MeResponse" Asn: description: ASN response object. content: application/json: schema: $ref: "#/components/schemas/AsnResponse" Ranges: description: Ranges response object. content: application/json: schema: $ref: "#/components/schemas/RangesResponse" Domains: description: Domains response object. content: application/json: schema: $ref: "#/components/schemas/DomainsResponse" Company: description: Company response object. content: application/json: schema: $ref: "#/components/schemas/CompanyResponse" Carrier: description: Carrier detection response object. content: application/json: schema: $ref: "#/components/schemas/CarrierResponse" Abuse: description: Abuse response object. content: application/json: schema: $ref: "#/components/schemas/AbuseResponse" Privacy: description: Privacy response. content: application/json: schema: $ref: "#/components/schemas/PrivacyResponse" WhoisNetId: description: WHOIS Network (NET) ID response. content: application/json: schema: $ref: "#/components/schemas/WhoisNetIdResponse" WhoisIp: description: WHOIS IP and IP range response. content: application/json: schema: $ref: "#/components/schemas/WhoisIpResponse" WhoisDomain: description: WHOIS Domain response. content: application/json: schema: $ref: "#/components/schemas/WhoisDomainResponse" WhoisOrg: description: WHOIS organization (ORG) ID response. content: application/json: schema: $ref: "#/components/schemas/WhoisOrgResponse" WhoisPoc: description: WHOIS Point of Contact (POC) response. content: application/json: schema: $ref: "#/components/schemas/WhoisPocResponse" WhoisAsn: description: WHOIS ASN response. content: application/json: schema: $ref: "#/components/schemas/WhoisAsnResponse" Batch: description: Batch response object. content: application/json: schema: type: object additionalProperties: type: object example: 8.8.8.8/city: Mountain View 8.8.8.8: ip: 8.8.8.8 hostname: dns.google city: Mountain View region: California country: US loc: 37.4056,-122.0775 org: AS15169 Google LLC postal: 94043 timezone: America/Los_Angeles Summarize: description: Summarize response object. content: application/json: schema: type: object example: summary: Example of summarizing IP addresses value: status: Report Generated reportUrl: https://ipinfo.io/tools/summarize-ips/3ea606f3-b3ad-4a37-a875-b897a0c2e718 Map: description: Map response object. content: application/json: schema: type: object example: summary: Example of mapping IP addresses value: status: Report Generated reportUrl: https://ipinfo.io/tools/map/40c04638-a340-44b8-90de-f95afdff99d8 Ip: description: Public IP address. content: text/plain: schema: type: string example: "66.87.125.72" Hostname: description: Hostname of the IP address. content: text/plain: schema: type: string example: "ip-66-87-125-72.spfdma.spcsdns.net" City: description: The city name of the IP address. content: text/plain: schema: type: string example: "Springfield" Region: description: The name of the region or state of the IP address. content: text/plain: schema: type: string example: "Massachusetts" Country: description: Name of th country in the 2 letter ISO 3166-1 alpha-2 for the IP address. content: text/plain: schema: type: string example: "US" Location: description: Geographic coordinate of the IP address in the format of `<latitude>, <longitude>`. content: text/plain: schema: type: string example: "42.0999,-72.5783" Postal: description: Postal code or zip code for the IP address. content: text/plain: schema: type: string example: "01105" Timezone: description: Timezone of the located IP address in the format of IANA Time Zones. content: text/plain: schema: type: string example: "America/New_York" Organization: description: ASN and AS organization name for the IP address. content: text/plain: schema: type: string example: "AS51501 Khabarovsk home networks Ltd" NotFound: description: Wrong ip. Please provide a valid IP address. content: application/json: schema: $ref: "#/components/schemas/Error404" NotFoundASN: description: ASN not found. content: application/json: schema: $ref: "#/components/schemas/Error404ASN" Forbidden: description: Unknown token or invalid permission. We return the same error for blocking malicious IP addresses as well. content: application/json: schema: $ref: "#/components/schemas/Error403" TooManyRequests: description: Allocated API rate limit has been reached for the token. The user will be prompted with options to increase their API limit. content: application/json: schema: $ref: "#/components/schemas/Error429" BadRequest: description: If users try to access a field type that does not exist or do not have permissions to access it, they will encounter a wrong module or field type error. content: application/json: schema: $ref: "#/components/schemas/Error400" BadRequestMe: description: If the passed IPinfo access token is not present or is invalid. content: application/json: schema: $ref: "#/components/schemas/Error400Me" InternalServerError: description: Internal server error or server unavailable. content: text/plain: schema: $ref: "#/components/schemas/Error500" UnprocessableEntity: description: The input payload does not meet the specification. content: application/json: schema: $ref: "#/components/schemas/Error422" securitySchemes: BasicAuth: type: http scheme: basic BearerAuth: type: http scheme: bearer ApiKeyAuth: type: apiKey in: query name: token

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/NimbleBrainInc/mcp-ipinfo'

If you have feedback or need assistance with the MCP directory API, please join our Discord server