India API

io.github.dharunashokkumarPublished by GitHub account dharunashokkumarv1.1.35Updated Oct 25, 2026

Free Indian data and AI: pincode, IFSC, GSTIN, holidays, GST invoice, OCR, translation. No key.

VerifiedStreamable HTTPWeb executableLocation & LifestyleDeveloper ToolsAI & ML

Overview

AI-generated overview

A free, keyless remote MCP server offering Indian reference data, format checks, and AI utilities such as translation, OCR, and document generation.

What you can do
Look up Indian reference data: pincodes and post offices, IFSC bank branches, RTO codes, holidays and working days, HSN codes, airports, railway stations, constituencies, and NSE/BSE company details and logos, plus IP, DNS, email, whois, TLS and IPv6 checks and website icons and UPI payment links and QR codes and barcodes and number-to-words and identifier format checks and fake test data and text chunking and embeddings and reranking and moderation and transliteration and translation and speech to text and text to speech and OCR and barcode reading and image and PDF tools and GST invoice and Typst PDF generation and code and link preview images and Tamil legacy encoding conversion.
When to use it
Useful when an assistant needs Indian address, banking, tax, holiday, company or transport facts, or needs to generate invoices, QR codes, images, PDFs, or run Indian-language translation, transliteration, OCR and speech tools without signing up for an API key.
Requirements
Remote Streamable HTTP endpoint; no authentication, API key or sign-up. Network access to the service. Each client has an allowance of 600 requests a minute, with heavier operations costing more.
Before you install
Format checks confirm structure only, not that an identifier was issued. UPI payment links are generated only and nothing is checked with a bank. Uploaded files are sent to a third-party service, though the README says they are deleted after the response. Some Hindi text-to-speech voices are non-commercial use only, and company logos are trademarks of their owners.

Installation

In SourceWeft

  1. Open India API in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.dharunashokkumar%2Findia-api/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "india-api": {
      "type": "http",
      "url": "https://api.dharun.dev/mcp"
    }
  }
}

README

India API

Free, open source APIs for Indian data. Pincodes, IFSC and bank branches, GSTIN and PAN checks, bank and market holidays, RTO codes, company logos, UPI QR codes, numbers in lakh and crore, GST invoices as PDF, OCR in Indian languages, PDF and image tools, translation, speech to text and text to speech, and more: 44 APIs behind one consistent JSON shape. No API key, no sign-up, open CORS, and an MCP server so AI assistants can use it too.

[CI] [OpenSSF Scorecard] [OpenSSF Best Practices] [Licence: AGPL-3.0]

Documentation: api.dharun.dev · API reference · Guides · Use with AI · OpenAPI · llms.txt

bash
curl https://api.dharun.dev/v1/pincode/637001
json
{  "data": { "pincode": "637001", "district": "Namakkal", "stateCode": "TN", "state": "Tamil Nadu", "offices": [ ... ] },  "meta": { "source": { "name": "...", "licence": "...", "attribution": "..." } }}

APIs

Each name links to its page, with every parameter, a real response and code in curl, JavaScript and Python.

APIExampleWhat you get
Company logos/v1/logos/TCS, /v1/companies/RELIANCESVG or PNG logo of an NSE or BSE listed company, REITs and InvITs included; sector, ISIN, market cap, indexes; old tickers still work
Pincodes/v1/pincode/637001, /v1/pincode/near?lat=&lng=Post offices, district, state, coordinates; pincodes near a point
IFSC and banks/v1/ifsc/SBIN0000001, /v1/banks?q=graminBank, branch, address, MICR, payment systems; banks and their codes by name
RTO codes/v1/rto/TN-28Transport office for a vehicle registration
Holidays/v1/holidays/2026?type=marketBank, central government and stock market holidays
Working days/v1/working-days/2026-01-16?calendar=bank&state=TNWorking day or not, the next one, N working days ahead, T+1 settlement dates; whether NSE is open
HSN and SAC/v1/hsn/0902, /v1/hsn?q=teaTariff codes with descriptions and their chapter
Mutual funds/v1/mutual-funds/122639Latest NAV of a scheme, search by name or fund house
Railway stations/v1/stations/MASStation name, zone, state
Airports/v1/airports/MAAIATA and ICAO codes, city, coordinates
Phone numbers/v1/phone/9500112345Valid or not, mobile or landline, original operator and circle
Constituencies/v1/constituency?pincode=637001Assembly and parliamentary constituency for a place
Panchang/v1/panchang/2026-01-14?pincode=600001Tithi, nakshatra, yoga, karana, sunrise, Rahu kalam, Tamil month
Sun and moon/v1/sun-moon/today?pincode=600001Sunrise, sunset, twilight, moonrise, moon phase and illumination
Satellite passes/v1/sat-pass?sat=ISS&pincode=600001When the ISS or an amateur radio satellite passes over, and whether it can be seen
HF propagation/v1/propagationSolar flux, K and A index, NOAA scales, and a day and night rating per band
Thirukkural/v1/thirukkural/1Couplet, transliteration, two English translations; search and random
Transliteration/v1/transliterate?to=tamil&text=..., /v1/transliterate/suggest?lang=ta&text=vanakkamBetween nine Indian scripts, ISO 15919, IAST and ASCII; Roman typing to 21 Indian scripts with a model
Translation/v1/translate?from=en&to=ta&text=...Between English and 22 Indian languages with IndicTrans2
Embeddings and reranking/v1/embed?text=..., POST /v1/rerankMultilingual vectors for semantic search, and a reranker to order results
Tamil legacy encodings/v1/tamil-font/convert?from=tscii&text=...TSCII text to Unicode and back
IP lookup/v1/ip/8.8.8.8, /v1/ipCountry, city and network of an address, or of the caller
Email check/v1/email/[email protected]Syntax, disposable domain, whether the domain takes mail
DNS check/v1/dns/example.com?type=MXRecords as several public resolvers see them
Traceroute from India/v1/mtr/example.comMTR-style path from a server in India: network, loss and latency per hop
Whois/v1/whois/example.co.in, /v1/whois/AS55836Registrar, dates, status and nameservers of a domain; holder and abuse contact of an IP network or AS number, through RDAP
TLS check/v1/tls/example.comCertificate validity, chain, days left, TLS versions and weak ciphers, as a list of problems
IPv6 check/v1/ipv6/example.comIPv6 addresses for the site, its nameservers and mail servers
HTTP probe from India/v1/probe?url=https://example.comDNS, connect, TLS and first-byte times from India, redirects, headers and the CDN edge city
Website icons/v1/icon/github.com?size=64Any site's icon as a square PNG, or an initials tile
QR, UPI QR and barcodes/v1/qr?text=hello, /v1/upi-qr?pa=shop@okaxis&am=250, POST /v1/barcode/readQR codes, UPI payment QR codes and links, barcodes; reading codes from a photo
GST invoicePOST /v1/invoiceA GST tax invoice PDF from JSON: CGST and SGST or IGST, HSN summary, amount in words, UPI QR
OCRPOST /v1/ocr?lang=eng+tamText from photos, scans and scanned PDFs in English and ten Indian languages
Image toolsPOST /v1/image/convert?format=webp&width=800Resize and convert (WebP, AVIF, HEIC in), remove backgrounds, perceptual hashes
PDF toolsPOST /v1/pdf/merge, /pages, /rotate, /compress, /text, /renderMerge, split, rotate, compress, read text, draw pages
Typst to PDF/v1/typst?text=...Typst documents to PDF or PNG, with Indian scripts
SpeechPOST /v1/stt, /v1/tts?text=...&voice=hi, POST /v1/audio/denoiseSpeech to text and subtitles with Whisper; text to speech in Hindi, Telugu, Malayalam and English; noise removal
Generated images/v1/og-image?title=HelloLink preview cards and code images, in ten scripts
Text tools/v1/text/chunk, /redact, /moderate, /tokens, /languageChunking for retrieval, PII and name redaction, moderation with Hinglish and Tanglish, token counts, language detection
Regex tester/v1/regex?pattern=...&text=...Every match with its groups, replacement, the pattern explained
Fake Indian data/v1/fake/companies?count=5Test people and companies with PAN and GSTIN that pass format checks
Number to words/v1/words/1,25,000?lang=taLakh and crore spelling in English, Hindi, Tamil
Format checks/v1/validate/gstin/27AAPFU0939F1ZVGSTIN, PAN and IFSC structure and check characters
States/v1/states/TNState codes, GST codes, vehicle prefixes

One shape everywhere

  • Every JSON response is { "data": ..., "meta": { ... } }. data is an object, or an array for list endpoints, which add meta.total, meta.limit and meta.offset.
  • meta.source names the dataset, its version, its licence and the credit it asks for.
  • Errors are { "error": { "code", "message" } } with a matching HTTP status.
  • Each client has an allowance of 600 requests a minute. A lookup costs 1; a request that takes real CPU work (image rendering, astronomy, live DNS) costs 10, a file upload 15, and a neural network job (speech, speech to text, translation, background removal, denoise) 30. Embeddings, reranking and moderation count as CPU work.
  • Text endpoints take ?text=, or a POST body as text/plain or JSON {"text": "..."}.
  • Image endpoints return the image itself, ready for an <img> tag; PDF and audio endpoints return the file.
  • File endpoints take a POST of the file as the body, or as multipart/form-data, up to 10 MB. Files are deleted when the answer is sent; nothing is kept.

Use it from AI assistants

One MCP server, one Agent Skill and one Claude Code plugin cover every API.

bash
# Claude Code: the MCP serverclaude mcp add --transport http india-api https://api.dharun.dev/mcp
# Claude Code: the plugin (skill and MCP server together)/plugin marketplace add dharunashokkumar/api.dharun.dev/plugin install india-api@dharun-dev
# Any agent that reads Agent Skills (Claude Code, Codex, Copilot, Cursor, Gemini CLI)npx skills add dharunashokkumar/api.dharun.dev
  • MCP server: https://api.dharun.dev/mcp, Streamable HTTP, stateless, no authentication. Each tool returns exactly what the matching REST endpoint returns. Setup for Claude, ChatGPT, VS Code, Cursor, Windsurf, Gemini CLI and Codex: api.dharun.dev/ai. In the MCP Registry as io.github.dharunashokkumar/india-api.
  • Agent Skill: skills/india-api.
  • Claude Code plugin: plugins/india-api, with the marketplace in .claude-plugin/marketplace.json.
  • For crawlers and agents: /llms.txt, /llms-full.txt, every page as Markdown (add .md or send Accept: text/markdown), /openapi.json, an MCP server card, an AI catalog and an API catalog under /.well-known/.

The skill, the plugin and server.json are generated from the catalog in internal/api/catalog.go; a test fails when the committed copies are out of date.

Licence

  • Calling the API puts no licence on your app.
  • The code is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0-only). If you run a modified copy as a service for others, you must offer them your changes.
  • Code examples, the guides' code, the Agent Skill and the Claude Code plugin are MIT-0: use them anywhere, no credit needed.
  • Data keeps the licence of its source (below); every response repeats the credit.
  • Third-party code and fonts compiled into the server keep their licences, such as the SGP4 code in internal/orbit (BSD-2-Clause) and the Noto fonts (OFL-1.1). The release bundle's NOTICES lists every one.
  • Company logos are trademarks of their owners.

Security and privacy

Report vulnerabilities privately: see SECURITY.md. Client IP addresses are never logged, and endpoints that take personal values never log their input; the full list is at api.dharun.dev/privacy. Each release carries a build provenance attestation:

bash
gh attestation verify dharun-api-linux-amd64.tar.gz --repo dharunashokkumar/api.dharun.dev

Contributing

Bug reports, corrections to data and requests for new APIs are welcome as issues. Pull requests are not accepted; see CONTRIBUTING.md.

Data sources

DatasetSourceLicenceRecords
PincodesAll India Pincode Directory, Department of Posts (data.gov.in)Government Open Data License - India157,125 post offices
IFSCrazorpay/ifsc, compiled from Reserve Bank of India and NPCI listsPublic domain, as stated by the publisher183,214 branches
RTO codesWikipedia, "List of Regional Transport Office districts in India"CC BY-SA 4.0 (shared under the same licence)1,361 codes
Bank holidaysReserve Bank of India holiday matrix, 34 regional officesOfficial publication2026
Central government holidaysDepartment of Personnel and Training memorandaOfficial publication2026, 2027
Market and clearing holidaysNational Stock Exchange of IndiaOfficial publication2026
HSN and SAC codesGST portal code list; the nomenclature is from the Customs Tariff Act, 1975 and GST notification 11/2017Statute22,614 codes
Mutual fund NAVAssociation of Mutual Funds in India, NAVAll.txtPublished daily by AMFI; credited14,375 schemes
Railway stationsWikipedia, "List of railway stations in India"CC BY-SA 4.0 (shared under the same licence)3,975 stations
AirportsOurAirportsPublic domain9,509 airports, 622 in India
Phone seriesWikipedia, "Mobile telephone numbering in India"CC BY-SA 4.0 (shared under the same licence)2,247 series
ConstituenciesDataMeet community mapsAssembly CC BY 2.5 India; parliamentary CC04,182 assembly, 543 parliamentary
Thirukkuraltk120404/thirukkural; translations by G.U. Pope and by Drew and LazarusPublic domain text; compilation Apache-2.01,330 couplets
IP addressesDB-IP LiteCC BY 4.0fetched by each server
Whois registriesIANA RDAP bootstrap registries (RFC 9224); each registration is fetched live from its registryCC0 1.01,201 top-level domains, refreshed weekly
Orbit elementsCelesTrak, from US Space Force data via Space-Track.org; only computed passes and positions are publishedNone stated; redistribution with credit allowed by USSPACECOMfetched by each server, 111 satellites
Space weatherNOAA Space Weather Prediction CenterPublic domain (US government work)fetched by each server, hourly
Speech voicesPiper voices, each trained on its own recordingsPer voice: public domain, CC BY 4.0, IIT Madras Indic TTS licence, or CC BY-NC-SA 4.0 (two Hindi voices, non-commercial)fetched by each server, 10 voices
Background removal modelIS-Net (Qin et al.), ONNX export by rembgApache-2.0fetched by each server
Embeddings and rerankingmultilingual-e5-small (Microsoft); bge-reranker-v2-m3 (BAAI)MIT; Apache-2.0fetched by each server
Speech recognitionWhisper small (OpenAI), through whisper.cppMITfetched by each server
TranslationIndicTrans2 distilled 200M (AI4Bharat)MITfetched by each server
Transliteration modelIndicXlit (AI4Bharat), converted to ONNX hereMITfetched by each server
Name detectionIndicNER (AI4Bharat); bert-base-NERMITfetched by each server
ModerationDetoxify multilingual (Unitary); Hinglish toxicity (Darel Philip, on L3Cube HingRoBERTa, CC BY 4.0); Tanglish offensive language (Sean Benhur)Apache-2.0; MIT; Apache-2.0fetched by each server
Disposable email domainsdisposable-email-domainsCC09,881 domains
Logos and company detailsCollected from TradingViewLogos are trademarks of the companies they identify5,599 companies, 5,354 with a logo

Exact versions, retrieval dates and checksums are in data/sources.json (the models: pinned by revision and checksum in internal/dataset/aimodels.go), and every response repeats the credit in meta.source. Models published only as PyTorch weights or in full precision were converted to ONNX and int8 by tools/models/convert.py and attached to the models-2026-10 release.

Known gaps:

  • State government holidays are not included. Bank holidays are per state, and they come from each state's own notification.
  • Andaman and Nicobar RTO codes are missing: the source article has no section for them.
  • The pincode file was fetched through a mirror because the government portal refuses scripted downloads. Its size matches the file the portal lists.
  • Railway stations come from a community list: some stations are missing and a few codes are out of date.
  • Assembly constituency boundaries pre-date the latest redrawing in six states; the response says so where it applies.
  • Phone operator and circle are the original allocation of a number series. A ported number keeps its series, so the current operator can differ.
  • Panchang timings are computed from Sun and Moon positions and can differ from a printed almanac by a minute or so.
  • Tamil legacy encodings: TSCII only so far; TAB, TAM and Bamini are planned.
  • Hindi and Tamil number words follow standard written forms, with Tamil compound numbers written as separate words. Corrections are welcome.

Run it locally

Requires Go 1.26 or newer.

bash
go run ./cmd/apidata build -resvg none    # build every dataset from data/ into seed/go run ./cmd/api                          # http://127.0.0.1:8080/go test ./...

PNG output (logos and generated images) is rendered by resvg; bash tools/fetch-resvg.sh <dir> downloads the pinned Linux build. Without it everything else works and PNG requests answer 501.

Configuration is by environment variable; see deploy/dharun-api.env.example. ROADMAP.md tracks what is built, what is planned and what was turned down.

Repository layout

text
cmd/api            the servercmd/apidata        data tool: build, import, refresh, statusinternal/api       routing, endpoints, the website, MCP, metricsinternal/api/guides      the guides, in Markdowninternal/api/templates   the Markdown forms of the pages and the skillinternal/dataset   one file per dataset: how it is built, fetched and checkedinternal/typeset   text shaping and the fonts for generated imagesinternal/panchang  almanac calculationsinternal/translit  transliteration between scriptsinternal/tamilfont Tamil 8-bit encodingsinternal/textkit   chunking, redaction, token counts, language detectioninternal/fake      test datainternal/words     number to wordsinternal/validate  GSTIN, PAN, IFSC and checksum rulesinternal/india     states and their codesdata/              one folder per dataset (logos included), and sources.jsonskills/            the Agent Skill (generated from the catalog)plugins/           the Claude Code plugin (generated); marketplace in .claude-plugin/server.json        the MCP Registry entry (generated)deploy/            systemd units, installer, self-updater, monitoringtools/             release build, smoke test, install test, resvg download, logo scraper

How data stays fresh

Each dataset is its own read-only SQLite file. A release carries a seed copy of every dataset, built from data/. On a server, apidata refresh runs hourly as a separate short-lived job: each dataset that a program can fetch (IFSC, RTO codes, bank and market holidays, HSN, mutual fund NAV, airports, stations, IP addresses, disposable domains) is downloaded when it is due, checked, and built into a new file in the server's own data directory. The API serves whichever copy is newer and picks up a new file without a restart. A deploy replaces the seeds and never touches the server's own copies.

Datasets that cannot be fetched by a program are updated by hand and ship with a push:

bash
go run ./cmd/apidata import pincode -file pincode.csv    # CSV saved from data.gov.inpython tools/scrape_logos.py --dry-run                   # logos: see new, renamed and delisted companiespython tools/scrape_logos.py                             # then download and write themgo run ./cmd/apidata status                              # which copy of each dataset is in use

Central government holidays are typed into data/holidays/central/<year>.json from the yearly memorandum, usually published in July for the following year.

Release and deploy

Deployment is pull-based: the server fetches releases, nothing connects in to it.

  1. Every push to main runs CI: tests, shell lint, a full release build, a smoke test of the bundle against the full datasets, and an install of it on a fresh Debian 13.
  2. When it passes, the bundle is published as release v1.1.<run number>.
  3. On the server, dharun-api-update.timer checks every 2 minutes. It downloads the new release, verifies the checksum, switches to it, and checks /healthz. If the new version does not come up, it switches back and marks that release as failed.
  4. When CI has finished, the Production workflow waits (up to 20 minutes) for the public /healthz to report the new version, then runs the smoke test's route checks against the live site. A release that was never installed, or was rolled back, fails the run. The run shows on GitHub as a deployment to production.

First-time setup on a Debian 12 or 13 machine or container, as root:

bash
tar -C deploy -cz . | ssh <host> 'mkdir -p /root/api-deploy && tar -xz -C /root/api-deploy && sh /root/api-deploy/install.sh'

The server is one static binary plus a database file per dataset. It runs as the unprivileged user dharun-api with a read-only filesystem, and uses about 35 MB of memory idle and about 150 MB under a burst. The updater runs as root and is only replaced by re-running install.sh. Restrict port 8080 to your proxy and port 9464 to Prometheus with a firewall.

Monitoring

  • :9464/metrics serves Prometheus metrics: requests by API and status, response times, logo lookups, memory, api_lifetime_requests_total, and for each dataset which copy is in use, how old it is and whether its last refresh worked.
  • :9464/stats serves the all-time totals as JSON. They are saved to disk and survive restarts.
  • deploy/monitoring/ has the Prometheus scrape job, alert rules (API down, a refresh that keeps failing, stale data) and a Grafana dashboard.
  • Every request is one JSON line on stdout: route, status, duration, what was looked up, country and user agent. Client IP addresses are not logged, and format checks log nothing about the value checked.

Trademark notice

Company logos and trademarks belong to their respective owners. This project is an index for discovery and convenience; review each company's brand rules before production use. To request removal of a logo, open an issue.

Source: README.md at commit 8f7bd6c

Tools

80

search_companies

Search companies

Search Indian listed companies by ticker, earlier ticker, name, sector, industry, ISIN or index name (for example 'Nifty 50'). Returns details with logo URLs. Only companies listed today.

Parameterslimitqueryrequiredexchange

lookup_pincode

Lookup pincode

Look up an Indian pincode: its district, state and every post office that uses it.

Parameterspincoderequired

search_post_offices

Search post offices

Find Indian post offices and their pincodes by the start of the office name, optionally within a state or district.

Parametersqueryrequiredstatedistrict

lookup_ifsc

Lookup ifsc

Look up an Indian bank branch by its IFSC: bank, branch, address, MICR and supported payment systems.

Parametersifscrequired

search_bank_branches

Search bank branches

Find branches of one Indian bank by state, city or text in the branch name or address. Needs the four-letter bank code; use search_banks to find it.

Parametersbankrequiredcityquerystate

search_banks

Search banks

Find Indian banks and their four-letter codes by name.

Parametersqueryrequired

lookup_rto

Lookup rto

Find which Regional Transport Office an Indian vehicle registration belongs to. Accepts a code (TN-28) or a full number plate (TN28AB1234).

Parameterscoderequired

list_holidays

List holidays

List Indian holidays for a year: bank holidays, central government holidays, and stock market trading and clearing holidays. Filter by type, state or month.

Parameterstypeyearrequiredmonthstate

number_to_words

Number to words

Spell a number or rupee amount in words using the Indian system (lakh, crore), in English, Hindi or Tamil.

Parameterslangstylenumberrequired

validate_identifier

Validate identifier

Check the format of an Indian GSTIN, PAN or IFSC. Format only: it does not confirm the identifier was issued.

Parameterskindrequiredvaluerequired

lookup_airport

Lookup airport

Look up an airport by IATA code (MAA) or ICAO code (VOMM): name, city, state, country, coordinates and whether it has scheduled flights.

Parameterscoderequired

search_airports

Search airports

Search airports by name or city, worldwide (those with IATA codes) and every Indian airfield and heliport. Filter by country (ISO code) or Indian state.

Parametersquerystatecountry

find_constituency

Find constituency

Find the assembly (MLA) and parliamentary (MP, Lok Sabha) constituency of a place in India, by pincode or by latitude and longitude.

Parameterslatlngpincode

check_dns

Check dns

Look up a domain's DNS records (A, AAAA, MX, TXT, NS, CNAME, CAA, SOA, SRV, or PTR for an IP) at Cloudflare, Google, Quad9 and OpenDNS at once, and say whether they agree.

Parametersnamerequiredtype

check_email_address

Check email address

Check an email address without contacting its mail server: valid form, disposable (throwaway) domain, free provider, role account, and whether the domain has mail servers.

Parametersemailrequired

make_fake_indian_data

Make fake indian data

Generate made-up Indian test data for building apps: people (name, gender, birth date, email, phone, PAN, address) or companies (name, PAN, GSTIN with a valid check character, address) or addresses, at real pincodes. Never real people.

Parameterskindrequiredseedcountstate

lookup_hsn_code

Lookup hsn code

Look up an Indian HSN code (goods) or SAC code (services) used in GST invoices: its description, the chapter and heading above it, and the codes below it. No GST rates.

Parameterscoderequired

search_hsn_codes

Search hsn codes

Find Indian HSN (goods) or SAC (services) codes by words of their description, such as 'green tea' or 'construction'.

Parameterskindqueryrequired

domain_icon

Domain icon

Get the icon of any website as a square PNG, from its favicon, Apple touch icon or web app manifest, redrawn at the size asked. A site without a usable icon gets an initials tile.

Parameterssizedomainrequired

lookup_ip_address

Lookup ip address

Find the country, region (Indian state), city and network operator of a public IPv4 or IPv6 address.

Parametersiprequired

check_ipv6

Check ipv6

Check whether a domain is ready for IPv6, from DNS: IPv6 (AAAA) addresses for the site and www, for each nameserver and each mail server, with a plain list of what is missing. No connection is made over IPv6.

Parametersdomainrequired

translate_text

Translate text

Translate text between English and 22 Indian languages (Hindi, Tamil, Telugu, Kannada, Malayalam, Bengali, Marathi, Gujarati, Punjabi, Odia, Assamese, Urdu and more) with AI4Bharat's IndicTrans2. Between two Indian languages it goes through English. Up to 2,000 characters.

Parameterstorequiredfromrequiredtextrequired

transliterate_roman_typing

Transliterate roman typing

Turn Indian-language words typed in Roman letters (vanakkam, namaste, kaise ho) into their own script, as phone keyboards do, with several guesses per word. Uses AI4Bharat's IndicXlit. Up to 60 words.

Parameterslangrequiredtextrequiredcount

moderate_text

Moderate text

Score a comment or message for abuse with three classifiers: general multilingual, Hinglish (Hindi in Roman letters, by kind: profanity, harassment, hate speech, caste, communal, regional, misogyny) and Tanglish (Tamil in Roman letters). Scores 0 to 1; a model's guess, not a decision.

Parameterstextrequiredthreshold

transcribe_audio

Transcribe audio

Speech to text with Whisper: the text of a recording (MP3, WAV, Ogg, M4A, WebM or video), with timed segments; about a hundred languages, Indian ones included. task=translate writes it in English. The first five minutes are heard.

Parametersfilerequiredtasklanguage

rerank_documents

Rerank documents

Order documents by how well each answers a query, with the multilingual bge-reranker-v2-m3 cross-encoder (Indian languages and English). Returns scores from 0 to 1, best first.

Parameterstopqueryrequireddocumentsrequired

make_gst_invoice

Make gst invoice

Make an Indian GST tax invoice as a PDF from seller, buyer and items. Works out each line's taxable value, CGST and SGST (or UTGST) within a state or IGST across states, the HSN-wise summary, rounding and the amount in words. format=json returns the worked-out amounts only.

Parametersformatinvoicerequired

compile_typst

Compile typst

Compile a Typst document to PDF (or one page as PNG). Noto fonts for Latin and nine Indian scripts are available; packages and files are not.

Parameterspageformatsourcerequired

text_to_speech

Text to speech

Speak text aloud in Hindi, Telugu, Malayalam or English with Piper voices; returns MP3 audio. Write the text in its own script. Some Hindi voices are for non-commercial use only.

Parameterstextrequiredspeedvoice

read_text_in_image

Read text in image

OCR: read the text in a photo, scan or scanned PDF, in English and Indian languages (Hindi, Tamil, Telugu, Kannada, Malayalam, Bengali, Gujarati, Punjabi, Odia, Marathi).

Parametersfilerequiredlang

read_barcodes

Read barcodes

Find and read every QR code and barcode (Data Matrix, Aztec, EAN, UPC, Code 128, Code 39, ITF, Codabar) in a picture.

Parametersfilerequired

make_qr_code

Make qr code

Make a QR code image (PNG) for any text or link.

Parametersbgfgeccsizetextrequired

make_barcode

Make barcode

Make a barcode image (PNG): Code 128, Code 39, Code 93, EAN-13, EAN-8, ITF, Codabar, Data Matrix, PDF417 or Aztec.

Parameterssizetextrequiredtyperequiredscaleheight

make_code_image

Make code image

Draw a code snippet as a PNG picture of an editor window with syntax colouring, for slides, posts and READMEs. Up to 150 lines of 140 characters.

Parameterscoderequiredthemetitlelanguage

make_social_preview_image

Make social preview image

Make a 1200 by 630 link preview (Open Graph) image as PNG from a title, with an optional subtitle, site name and tag. Latin and nine Indian scripts are set correctly. The same arguments always give the same picture.

Parameterstagsitethemetitlerequiredsubtitle

chunk_text

Chunk text

Split a long document (plain text or Markdown) into readable chunks for retrieval (RAG): at headings, paragraphs, sentences and words in that order; Markdown chunks keep their heading path. Each chunk carries its character offsets.

Parameterssizetextrequiredformatoverlap

embed_texts

Embed texts

Turn texts into 384-number vectors with multilingual-e5-small (Indian languages and English), scaled to length 1 so a dot product is the cosine similarity. For storing in a vector database or comparing meaning; use rerank_documents to order a few passages for a question instead.

Parameterstypetextsrequired

convert_tamil_legacy_text

Convert tamil legacy text

Convert Tamil text in an old 8-bit encoding (TSCII), which shows as accented Latin letters such as ¾Á¢ú without its font, to Unicode Tamil, or Unicode back to it.

Parameterstofromtextrequired

get_indian_states

Get indian states

List India's 28 states and 8 union territories, or get one, with its two-letter code, GST state code and vehicle registration prefixes.

Parametersstate

convert_image

Convert image

Resize a picture or convert it (JPEG, PNG, WebP, AVIF, GIF, TIFF out; HEIC and AVIF read too). Turned upright, all metadata such as the GPS position removed.

Parametersfitfilerequiredwidthformatheightquality

get_image_info

Get image info

Format, size, colour space, orientation and camera of a picture, and whether it carries EXIF data or a GPS position.

Parametersfilerequired

remove_image_background

Remove image background

Cut the subject out of a picture (a product, a person, an animal) and return it as a PNG with a transparent background, with the IS-Net model.

Parametersfilerequiredformat

hash_image

Hash image

Perceptual fingerprints of a picture (average, difference and DCT hashes) that stay nearly the same after resizing or recompression, for finding duplicates.

Parametersfilerequired

compare_images

Compare images

Compare two pictures by how they look: the bits by which their perceptual hashes differ, a score from 0 to 1, and whether they look like the same picture.

Parametersfilesrequired

read_pdf_text

Read pdf text

Read the text of a PDF, page by page. needs_ocr is true when the pages are scanned pictures; send those to read_text_in_image.

Parametersfilerequiredlastfirstlayout

get_pdf_info

Get pdf info

Page count, PDF version, title, author, dates and page sizes of a PDF, and whether it has forms, signatures or attachments.

Parametersfilerequired

render_pdf_page

Render pdf page

Draw one page of a PDF as a picture, for a preview.

Parametersfilerequiredpagewidthformat

select_pdf_pages

Select pdf pages

Make a new PDF from some pages of one, in the order named: to pick, reorder or split pages.

Parametersfilerequiredpagesrequired

rotate_pdf_pages

Rotate pdf pages

Turn the pages of a PDF clockwise by a multiple of 90 degrees.

Parametersfilerequiredanglepages

compress_pdf

Compress pdf

Make a PDF smaller by removing duplicate fonts and images and packing its structure. Scanned PDFs shrink little.

Parametersfilerequired

merge_pdfs

Merge pdfs

Join PDFs into one, in the order given.

Parametersfilesrequired

remove_audio_noise

Remove audio noise

Lower background noise (fans, traffic, hum) in a recording with DeepFilterNet; returns MP3. The first five minutes are cleaned.

Parametersfilerequiredlimit

traceroute_from_india

Traceroute from india

Trace the network path from a server in India to a host, MTR style: every hop with its address, name, network (AS) and country, packet loss and round-trip times. Shows how Indian networks reach a site.

Parametersvhostrequiredrounds

get_mutual_fund_nav

Get mutual fund nav

Get the latest NAV of an Indian mutual fund scheme by AMFI scheme code or ISIN, with its fund house, category, plan and option.

Parameterscoderequired

search_mutual_funds

Search mutual funds

Search Indian mutual fund schemes by name words, fund house or category, filtered by direct/regular plan and growth/IDCW option, with their latest NAVs.

Parametersplanqueryoptionfund_house

get_panchang

Get panchang

Hindu almanac (panchang) for a date and place: tithi, nakshatra, yoga, karana with their end times, sunrise, sunset, moonrise, moonset, Rahu kalam, Yamagandam, Gulika kalam, Abhijit muhurta, Tamil month and day, lunar month, Shaka and Vikram years.

Parameterstzlatlngdaterequiredpincode

check_indian_phone_number

Check indian phone number

Check an Indian phone number's form and type (mobile, toll-free, fixed line), format it, and name the operator and telecom circle its series was originally given to.

Parametersnumberrequired

probe_url_from_india

Probe url from india

Fetch a URL from a server in India and time it: DNS, connect, TLS, time to first byte and download, the HTTP status and version, every redirect, the response headers (cookie values hidden), the body's size and hash (never the body), and which CDN and edge city answered. Shows how fast a site is for visitors in India.

Parametersurlrequiredrounds

get_hf_propagation

Get hf propagation

Current space weather from NOAA (solar flux, sunspot number, K and A indices, X-ray class, NOAA R/S/G scales) and a rule of thumb good/fair/poor rating of HF amateur radio bands by day and night.

Takes no parameters.

test_regex

Test regex

Run a regular expression (JavaScript or RE2/Go syntax) against a text: every match with its groups and character offsets, an optional replacement, and a token by token explanation of the pattern.

Parameterstextrequiredflagsflavorpatternrequiredreplace

get_satellite_passes

Get satellite passes

When the ISS, the Chinese space station or an amateur radio satellite passes over a place in the next days: rise, highest point and set times with compass directions and elevations, and when the pass can be seen with the eye.

Parameterstzlatlngdayspincodesatellitevisible_onlymin_elevation

find_satellites

Find satellites

List or search the tracked space stations and amateur radio satellites, with catalogue numbers, orbital periods and inclinations.

Parametersgroupquery

where_is_satellite

Where is satellite

Where a tracked satellite such as the ISS is right now: the point on Earth below it, its altitude and speed, and whether it is in sunlight.

Parameterssatelliterequired

lookup_railway_station

Lookup railway station

Look up an Indian Railways station by its code (MAS, NDLS): name, state, railway zone and elevation.

Parameterscoderequired

search_railway_stations

Search railway stations

Find Indian railway stations and their codes by name, state or railway zone.

Parameterszonequerystate

get_sun_and_moon

Get sun and moon

Sunrise, sunset, solar noon, day length, civil, nautical and astronomical twilight, moonrise, moonset, moon phase, illumination, age and the next new, first quarter, full and last quarter moons, for a date at an Indian pincode or any latitude and longitude.

Parameterstzlatlngdaterequiredpincode

count_tokens

Count tokens

Count the tokens a text uses for an OpenAI model or encoding (o200k_base for GPT-4o and later, cl100k_base for GPT-4).

Parameterstextrequiredmodel

redact_indian_identifiers

Redact indian identifiers

Mask Aadhaar, PAN, GSTIN, card, phone, email, UPI ID, vehicle, voter ID, passport and IP numbers in a text, checking check digits where they exist.

Parameterstextrequiredstyle

detect_language

Detect language

Detect the language and script of a text, including Indian languages.

Parameterstextrequired

get_thirukkural

Get thirukkural

Get a Thirukkural couplet by number (1-1330) in Tamil, with transliteration, English translations by G.U. Pope and by Drew and Lazarus, and its chapter.

Parametersnumberrequired

search_thirukkural

Search thirukkural

Search the Thirukkural in Tamil or English, or list a chapter (1-133) or a paal (1 virtue, 2 wealth, 3 love).

Parameterspaalquerychapter

check_tls

Check tls

Check a website's TLS certificate and setup on port 443, from India: whether the certificate is valid for the name and trusted, days until it expires, the chain as sent, issuer and key, which TLS versions (1.0 to 1.3) are accepted, the cipher and HTTP/2 offered, weak ciphers, and a plain list of problems.

Parametershostrequired

transliterate_indian_text

Transliterate indian text

Rewrite text from one Indian script in another (Devanagari, Bengali, Gurmukhi, Gujarati, Odia, Tamil, Telugu, Kannada, Malayalam), or in Roman letters (ISO 15919, IAST, plain ASCII), or from ISO 15919 / IAST into a script. Spelling only, not translation.

Parameterstorequiredfromtextrequired

whois_lookup

Whois lookup

Who registered a domain, IP network or AS number, through RDAP (the registries' replacement for whois): for a domain the registrar, registration and expiry dates, status, nameservers and DNSSEC; for an IP address or AS number the network, its holding organisation, country and abuse contact. Works for .in and .co.in. Personal contacts are never returned.

Parametersqueryrequired

check_working_day

Check working day

Check whether a date is a working day in India for banks in a state, NSE trading, NSE settlement or central government offices; get the previous and next working days, or the date N working days away (T+1 settlement: calendar settlement, add 1).

Parametersadddaterequiredstateofficecalendar

count_working_days

Count working days

Count Indian working days between two dates (both included) for a calendar, and list each day off with its reason.

Parameterstorequiredfromrequiredstateofficecalendar

indian_market_status

Indian market status

Is the Indian stock market (NSE equities) open now or at a given moment: session, reason if closed, and when it next opens.

Parametersat

find_post_offices_near

Find post offices near

Find Indian post offices and their pincodes near a latitude and longitude, nearest first.

Parameterslatrequiredlngrequiredradius

Version history

3
  1. v1.1.35LatestOct 25, 2026
  2. v1.1.22Oct 15, 2026
  3. v1.1.18Oct 14, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts