Z39.50 Software

Procedures applying to the Software Page


Free Software

Mercury Z39.50 Client

Developed by Basedow Information Systems, Mercury Z39.50 Client for Windows 2000/XP is able to search multiple Z39.50 databases simultaneously. Records can be exported to MARC, XML, XML via XSL, to any OLE DB compatible database and as plain text. It is available as freeware.

Website: http://www.basedowinfosys.com/projects/mzc
Contact: Mark Basedow


ZMARCO allows MARC records available through a Z39.50 server to be made available via OAI.

Contact: Tom Habing

Alejandria WorldLibrary

A universal Z39.50 client that uses a web interface. It allows simultaneous queries to multiple Z servers, several user's sessions, to configure the details of the Z servers to be searched.The software may be downloaded from: http://alejandria.hacer.ula.ve/Z3950
Contact:Valeria León



ZContent is a Perl script and module that provides a Z39.50 target for the CONTENTdm server.
ZContent will process incoming Z39.50 requests, convert them to appropriate CONTENTdm requests, and return the results in either USMARC or XML format. Developed at the University of Utah Marriott Library.
Contact: see http://www.lib.utah.edu/digital/ZContent.html


VB ZOOM is an ActiveX DLL, written in Visual Basic which is an implementation of the ZOOM (Z39.50 Object-Orientation Model) Abstract API. It uses the YAZ Toolkit from Index Data. Documentation, source code, and ActiveX DLL -- all freely available from SourceForge .
Contact: Thomas Habing http://dli.grainger.uiuc.edu University of Illinois at Urbana-Champaign, (217) 244-4425

Knowledge Integration Ltd

JZKit is a Pure Java, Open source (LGPL), toolkit designed to assist developers implementing the Z39.50 standard in pure java environments. The toolkit is presented in three distinct levels: Encoders/Decoders, Protocol Endpoint and IR-Services. A number of example origin and target implementations are available.

Information: http://www.k-int.com/jzkit
Development versions source: http://sourceforge.net/projects/jzjkit
Contact: Ian Ibbotson


Z39.50 Client Software operating in Microsoft Windows environment. The user interface is in Simplified Chinese. (It is recommended that the software be used on a Simplified Chinese version of Windows operating system). The software may be downloaded from: http://www.datatrans.com.cn
.For further information, contact JIN Peihua


ZETA Perl defines a set of functions, variables and conventions that provide a consistent interface to the Z39.50 services and protocol for Perl applications. It was mainly designed and implemented to be usable by web developers. However, it would be of help as well in writing a Z3950 client with very little effort.The current version of the ZETA Perl (0.059) supports the following APDUs: Init, Search, Present, Close, Delete, Scan and Sort

Packaging: Both sources and binaries in common tarball format. The software includes platform dependent libraries which are still copyrighted by Finsiel S.p.A.

Platforms: tested on the following:

  • Intel i?86 running Linux 2.x.x
  • SUN-Sparc running Solaris 2.6
  • IBM PowerPC running AIX 4.1.X
  • Intel i?86 *not* running NT 4.0
  • Intel i?86 *not* running win95/98
Available: by anonymous FTP from:

Requirement: perl 5.003. ( 5.005_2 better)

License: This package is free software and may be used, redistributed and/or modified under the terms of either the Artistic License of Perl itself (see included file Artistic) or the GNU General Public License Version 2 (see included file COPYING). See included LICENSE file for further details.

ZedKit for UNIX

Supplied by Crossnet Systems Ltd. Z39.50 Software Development Kit, C and C++. Supports most of Z39.50 including comprehensive example code, test utilities and documentation. Supports TCP/IP and OSI stacks.

ICONE Z39.50 Windows client

Supplied by Crossnet Systems Ltd. Windows client developed for the ONE project. Built on Crossnet ZedKit for Windows, offering a useful set of search and retrieval facilities, result set management, index browsing, sort, save and print records. Available for Windows 3.1x, Windows 95, NT.

YAZ Tools and Applications (Index Data)

  • YAZ / YAZ++
    C/C++ programmer's toolkits supporting the development of Z39.50/SRW/SRU clients and servers. Z39.50-2003 (version 3) as well as SRW/SRU version 1.1 are supported in both the client and server roles. The current versions of YAZ include support for the industry standard ZOOM API for Z39.50.
  • YAZ Proxy
    A highly configurable Z39.50 proxy server and SRW/SRU--Z39.50 gateway which can be used in a number of different applications, ranging from debugging Z39.50-based applications and protecting overworked servers, to improving the performance of stateless WWW/Z39.50 gateways and mapping retrieved MARC records to XML for re-purposing in a Web environment.
    A Perl interface for the "generic front-end server" component of the YAZ toolkit. It provides a simple API which hides the complexity of Z39.50 session management, PDU serialization and network operations; implements Z39.50 origin (client) functionality as well as the SRW/SRU protocols; supports init, search, present, scan and sort; can also handle GRS-1, MARC,
    SUTRS and XML, and enables the conversion of MARC in ISO2709 toMARCXML on the client side.
  • SimpleServer
    A Perl module intended to make it as simple as possible to develop new Z39.50 servers over any type of database imaginable. Runs in threaded mode, which, among other things, means that SimpleServer can run on a Windows platform.
    Contact: yazlist@indexdata.com

Other Tools and Applications Developed by Index Data

  • IRTcl
    An extension to the Tcl language environments that allows you to rapidly develop platform-independent, graphical clients to the Z39.50 protocol supporting both the X Window, and MS/Windows environments.
    Contact: info@indexdata.com
  • Keystone Digital Library Suite
    A family of Open Source software applications packaged together to provide libraries, museums and archives with state-of-the-art digital library services. Supports content management, portal creation and management, federated search services, harvesting metadata from remote repositories and link resolver services.
    Contact: TKL@indexdata.com
  • ParaZ
    A client-side Z39.50 performance tester designed to indicate a baseline of best possible performance for a given set of parallel Z39.50 operations.
    Contact: info@indexdata.com
  • ZAP!
    An Apache module which allows you to build simple Web interfaces to Z39.50 servers, requiring only a minimum of knowledge about the Z39.50 standard. ZAP! hides most of the complexity of session management, parallel searching, etc.
    Contact: zaplist@indexdata.com
  • Zebra
    A high-performance, general-purpose structured text indexing and retrieval engine that reads structured records in a variety of input formats (e.g. email, XML, MARC) and allows access to them through exact boolean search expressions and relevance-ranked free-text queries.
    Contact: zebralist@indexdata.com
  • Z-Spy
    A robot-like script that automatically probes Z39.50 targets. It is written in Tcl/Tk using IRTcl. Z-Spy will determine what parts of the Z39.50 protocol a given target supports and keep track of what targets are live.
    Contact: info@indexdata.com


A minimal Z39.50-1995 (v.3) client-server pair and prototype indexing and fulltext search engines (PRISE) developed by NIST for Unix (Solaris) using Tk/Tcl for the GUI. No usage restrictions.


Commercial Software


Commercial software developed and supported by Index Data
Contact: David Dorman

  • IRTcl
    See IRTcl under FREE SOFTWARE for description. The software is available for custom licensing arrangements as well as for free download. Support contracts are available but optional for both Open Source distributions and special license arrangements.
  • Keystone Digital Library Suite
    See Keystone Digital Library Suite under FREE SOFTWARE for description. Keystone combines Index Data's specialized information retrieval programs, years of experience with IR interface design and adherence to all relevant technical standards. Each installation is customized to meet the customers unique needs, yet is distributed under a GNU GPL license, allowing the library to freely use and re-distribute the software.
  • YAZ Proxy
    See YAZ Proxy under FREE SOFTWARE for description. Because each installation of YAZ Proxy is unique to the institution or company using it, there is no "generic" Open Source distribution. Depending on the wishes of the customer, a customized YAZ Proxy installation can either be an Open Source distribution or proprietary distribution.
  • YAZ Tools:
    YAZ / YAZ++
    See YAZ Tools and Applications under FREE SOFTWARE for descriptions. In addition to distributing them under a BSD license, Index Data also offers support agreements for each of these toolkits.
  • ZAP!
    See ZAP! under FREE SOFTWARE for description. The software is available for custom licensing arrangements as well as for free download. Support contracts are available but optional for both Open Source distributions and special license arrangements.
  • Zebra
    See Zebra under FREE SOFTWARE for description. The software is available for custom licensing arrangements as well as for free download. Support contracts are available but optional for both Open Source distributions and special license arrangements.


Integral Concepts ZSearcher 2.0

Integral Concepts ZSearcher is a Z39.50 v.3 client for Windows (9X, NT, XP) that uses multi-threading and multi-document design for high-speed simultaneous searches of multiple servers. Records can be retrieved in USMARC (MARC21), UKMARC or UNIMARC formats; exported with a built-in FTP client; and saved to disk as MARC, XML or ASCII text files.

Contact: Max Okrasa

Sunstone Z39.50 Server

Easily configurable version 3 target for the BRS/SEARCH search engine from Dataware Technologies. Supports Init, Search, Present, Delete-result-sets (and naming of result sets), Scan, Sort and Close. Attribute sets and the mapping of attributes to the database are user configurable. Various MARC formats, SUTRS and GRS-1 are supported internally. Any other record format is accessible through Java plug-ins or external executables.

Contact: Anders Sundström

Finsiel ZETA Suite

The ZETA Suite provides Search and Retrieval facilities fully compliant with Z39.50-1995. It consists of the following modules:
  • ZETA Development Toolkit
    A collection of libraries and software modules to be used as a common development framework for server and client Z39.50 applications. Major components:
    • ZETA Core Library
      Shields users from difficulties of encoding/decoding Z39.50 APDUs and transmitting them over TCP/IP networks. Consistent, user-friendly and well-defined interface, entirely written in ANSI C. Also available as a DLL for Microsoft Windows 95 and NT 4.0 Systems
    • ZETA Target Builder
      A C language toolkit to facilitate the development of Z30.50 compliant target systems. Provides programmers with all they need (e.g. operating system, networking, Z39.50 and configuration facilities) to develop in a short time a fully operable Z39.50 Server on top of their own IRS/DBMS Systems.
    • ZETA Client
      A simple command line based Z39.50 client. Has a multi-association design allowing you to issue and execute multiple commands simultaneosly or in background. Implements command name completion, target list caching, command aliases, and all features found in other clients.
  • ZETA Proxy
    A fast and efficient Unix Daemon, acts as intermediary between Z39.50 clients and servers containing the information the clients want. Mainly designed to merge in a single result set the search results created on several and often heterogenous databases, each of them remotely accessible using the Z39.50 protocol. It can:
    • Simultaneosly search with a single query several and often heteregeneous Z39.50 targets, each of them supporting only its own Z39.50 Profile (e.g. libraries, museums, resource archives, other). Temporarily merges the widespread results sets in a centralized and single location and is also able to retrieve the records from the appropriate target depending on the client's choice.
    • Provide a safe proxying of Z39.50 APDUs, controlled by simply access rules. In a network proxy environment, allows organizations and companies to provide a secure and controlled access to their internal Z39.50 available databases. For example authentication can be implemented in a single location, at the proxy run-time environment, rather than at Z39.50 target level.
    • Maintain the Z39.50 association with the remote Z39.50 targets for a configurable amount of time following the disconnection of the Z39.50 client. The clients, to re-use all the result sets previously created, are simply required to establish a new Z39.50 association with the proxy server. Improves response times and reduces bandwith usage.
  • ZETA Gateway
    HTTP to Z39.50 gateway, simultaneously searches several Z39.50 targets using different search profiles. Easily customizable template Web site supporting: stateful interactions, multi-target queries, multi-profile queries
  • ZETA Server
    Off-the-shelf solution to interface the DBMS Engine by different vendors. Modular and configurable. Profile-specific access points and presentation structures are defined through a database independent, configuration language.
  • Intel x86 based running Linux ELF 2.0.X
  • SUN Sparc running Solaris 2.6
  • Hewlett-Packward PA Risc 1.0 running HP-UX 10.X
  • IBM PowerPC running AIX 4.1.X
  • Silicon Graphics MIPS R5000 running IRIX 6.2

Contact: Giuliano Barsanti
Copyright (c) 1996, 1998 Finsiel - All Rights Reserved


Strategy for Libraries Stowe Computing; Australia

A modern library management system. Allows remote sources of information to be harnessed and integrated with library resources, either temporarily, e.g. for display purposes, or for permanent update of the local database. Available as an integrated library system or as individual clients. The cataloguing client uses Z39.50 update and the Union Catalogue Profile (UCP). Clients operate under Windows NT or Windows 95. Supports all MARC formats.


Blue Angel Technologies MetaStar Suite

Provides an integrated system for managing and publishing information using Z39.50. Provides out-of-the-box support for a number of metadata standards (including GILS, FGDC, CIMI, ICPSR, Dublin Core, DIF, ANZLIC). Permits development and deployment of custom records without programming. The MetaStar Suite consists of the following tools:
  • Server. Makes metadata available for searching and retrieval using Z39.50. Integrated with a number of popular off-the-shelf search engines (e.g., Alta Vista, Fulcrum, etc.) and is configurable for full-text and structured searches.
  • Data Entry. A Java Applet used to remotely enter metadata records directly from a Web browser. Handles data entry for hierarchical and repeating metadata elements, and verifies compliance with the metadata standard requirements.
  • Harvester. A software robot that gathers information from designated Web sites, parses HTML, and extracts designated metadata elements (e.g., title), HTML META tags (e.g., Dublin Core elements), and XML tags.
  • Repository. An administrative tool for capturing, importing, managing, and exporting metadata in a variety of file formats. Accommodates repeating, hierarchical, and locally-defined elements, and integrates with third-party relational database management systems (e.g., Microsoft Access, Oracle) using the ODBC industry standard interface.
  • Gateway. Simultaneously searches physically distributed Z39.50 servers with a single query and merges results into a single result set. Provides a Web-based query interface and customizable HTML templates for configuring both the query and search results pages. Implemented in Java and interfaces to most popular Web servers.
  • Search Client. A Java Applet used to search and retrieve information from one or more Z39.50 servers directly from a Web browser.
  • Software Development Kits (SDKs). The Z39.50 Client and Server SDKs (in C++ and Java) allows users to develop custom applications. The Translation SDK aids developers in customizing metadata import from and export to external systems.

The MetaStar components work together at each step of the information management process. Information is entered, imported or gathered into the MetaStar Repository by an administrator. When ready to be published, the MetaStar Server provides Z39.50 search and retrieval access to the information. Remote users can then search and retrieve records using the MetaStar Search Client and/or MetaStar Gateway, or browse the results from their desktop Web browser. Each tool can be operated independently, or can be used as plug-and-play components of an integrated information management system.

OCLC SiteSearch Suite

The OCLC SiteSearch suite includes software components with Z39.50 client/server functionality, as well as tools to extend Z39.50 compliance to locally built databases and non-Z39.50 resources. Software components include:
  • OCLC SiteSearch WebZ software
    A customizable Web interface to Z39.50 databases, non-Z39.50 databases (with published API), and databases built locally with other OCLC SiteSearch components.
  • OCLC SiteSearch Database Builder
    A tool set for building and maintaining databases locally. Works with OCLC SiteSearch WebZ to provide Z39.50 and Web access to locally mounted databases.
  • OCLC SiteSearch Imaging Support Package
    Windows-based software application and tools for creating and maintaining electronic image collections. Works with the OCLC SiteSearch WebZ and Database Builder components.

IPriori, Inc.

Providing Windows NT - based servers, protocol integration and consulting.

ZNavigator, Z39.50v.3 Windows Client

Supplied byEnWare,S.A as one of the results of the CEC's Telematics projects, CaseLibrary. A Windows client that fully supports Z39.50v.3 in several MARC formats as well as GRS-1 and SUTRS.

ZedKit for Windows

Supplied by Crossnet Systems Ltd. Z39.50 Software Development Kit, C and C++. for Windows 95/NT. Supports most of Z39.50 including comprehensive example code, test utilities and documentation.

ZedJAVA Z39.50 JAVA software development kit

Supplie by Crossnet Systems Ltd and DSTC Pty Ltd. JAVA 1.1 software development kit for Z39.50. Supports all Z39.50 services, records and externals. Comes with example programs and comprehensive on-line documentation. Commercial, kits oriented to either Windows or UNIX development.

The TeraText Database System

Formerly: The Structured Information Manager (SIM)
A high performance Z39.50 search engine and web development environment. Extensive support for SGML, XML and MARC. Available for Solaris and NT. Developed by InQuirion Pty Ltd and distributed in the US by TeraText Solutions, a division of SAIC.


Products from Sea Change Corporation

BookWhere 2000 for Windows 95/98/NT

A version 3 compliant client application designed for librarians and researchers. Supports parallel searching of multiple databases. Supports USMARC, UKMARC. UNIMARC, MAB2, DANMARC, NORMARC, GRS-1 and SUTRS and exports references to all bibliographic management packages. User interface available in English, French, Italian and Danish. Evaluation software available.

BookWhere API for Windows 95/98/NT

An OLE Automation based interface to most of the BookWhere functionality. Available for license to Windows application developers to allow rapid inclusion of Z39.50 functions into their software. Currently employed in Reference Manager 9, ProCite 5 and Athena 8.

WebClarity Z39.50/HTTP Gateway

Designed for NT Servers, this product provides "remote client" capabilities to users with graphical Web browsers. This product is based on the BookWhere API and the User Interface has been developed in Server Side Java. It is available on an OEM basis to software companies and is also licensed to other organisations.

EndNote 3 from Niles Software, Inc.

A bibliographic tool for research writers that includes a Z39.50 client supporting Init, Search, and Present. Works on Macintosh and Windows.

Z39.50 Maintenance Agency
Network Development & MARC Standards Office
Comments on this document: z3950@loc.gov
Updated: October 2006

Library of Congress
Library of Congress Help Desk