ArcGIS for Desktop

  • Documentation
  • Pricing
  • Support

  • My Profile
  • Help
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

The mapping platform for your organization

ArcGIS for Desktop

A complete professional GIS

ArcGIS for Server

GIS in your enterprise

ArcGIS for Developers

Tools to build location-aware apps

ArcGIS Solutions

Free template maps and apps for your industry

ArcGIS Marketplace

Get apps and data for your organization

  • Documentation
  • Pricing
  • Support
Esri
  • Sign In
user
  • My Profile
  • Sign Out

Help

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • More...

A quick tour of creating custom tools

  • Why create your own tools?
  • Useful tools need input and output parameters
  • Methods for creating tools
  • Documenting tools

You can create your own tools. Tools you create are called custom tools and become an integral part of geoprocessing, just like system tools. You can open and run any tool from the Search or Catalog window, use it in ModelBuilder and the Python window, and call it from another script.

Why create your own tools?

System tools (those installed with ArcGIS) are designed to perform one small but essential operation on geographic data. Using ModelBuilder or Python, you execute these tools in a sequence, feeding the output of one tool to the input of another. The model or script you create may be an essential part of your workflow—a task you need to repeat again and again. By turning your task-oriented models and scripts into tools, you can use them just like system tools, creating sequences of tasks in ModelBuilder or scripting. You can build your own library of tools that perform small but essential tasks for your organization.

Useful tools need input and output parameters

The most basic definition of a geoprocessing tool is that it is something you find in a toolbox. Any model you create and save is automatically a tool because it resides in a toolbox. A Python script on disk (a .py file) becomes a tool when you add it to the toolbox using the script tool wizard. Just because a model or script tool meets the technical definition of a tool (that is, it resides in a toolbox) does not mean it's useful—a useful tool needs two things:

  1. Input Parameters—So you can use a different set of inputs each time you execute the tool.
  2. Output Parameters—To use a tool in ModelBuilder, it must have one or more output parameters so that you can connect the outputs of your tool into the input of another tool.

Methods for creating tools

Once you have created your own toolbox, you can then make a new model tool or create a script tool inside the toolbox.

Using ModelBuilder

Any model you create and save in a toolbox becomes a tool, that is, a model tool.

  • A quick tour of creating tools with ModelBuilder
  • Tutorial—Creating tools with ModelBuilder

Using Python

A Python script you create and save on disk (a .py file) becomes a tool when you add it to a toolbox using the script tool wizard.

  • A quick tour of creating script tools
  • Using AMLs with script tools

Python toolboxes

Python toolboxes are geoprocessing toolboxes that are created entirely in Python.

  • A quick tour of Python toolboxes

Documenting tools

A useful tool has good documentation. Each toolbox and tool has an item description you can edit.

  • A quick tour of documenting tools and toolboxes
  • A quick tour of geoprocessing tool references
Feedback on this topic?

ArcGIS for Desktop

  • Home
  • Documentation
  • Pricing
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

  • About Us
  • Careers
  • Insiders Blog
  • User Conference
  • Developer Summit
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacy | Legal