Developer Guide
This guide is for developers and agent builders who want to use, extend, or build on Data Workers.
Using Agents in Claude Code
The quickest way to set up all agents:
npx dw-clawOr register as a persistent MCP server:
claude mcp add data-workers -- npx dw-clawYou can also add individual agents if you only need specific functionality:
claude mcp add data-workers-incidentclaude mcp add data-workers-qualityclaude mcp add data-workers-schemaOnce connected, agents expose their tools automatically. Use them in your development workflow. Agents maintain context across interactions and coordinate with other active agents in your session.
Using Agents in Cursor
Add agents to your Cursor environment via .cursor/mcp.json. Configure each agent with the npx command and agent name. Once configured, agents expose tools in Cursor's MCP panel. Use them the same way as in Claude Code — describe what you need in natural language.
Using Agents with Any MCP Client
Data Workers agents implement the standard MCP protocol (stdio transport). They work with any compatible client including OpenClaw, Cline, Continue, and custom implementations. Run an agent as an MCP server with npx data-workers-incident, or install globally with npm install -g data-workers-incident.
Using the API
For programmatic access, each agent exposes a REST API:
POST /api/v1/agents/{agent-name}/invokeGET /api/v1/agents/{agent-name}/statusGET /api/v1/agents/{agent-name}/toolsPOST /api/v1/agents/{agent-name}/tools/{tool-name}/executeAuthentication is via OAuth 2.0 bearer tokens.
Connecting to Enterprise Tools
Configure credentials for your data platforms via environment variables before starting your MCP client:
- •
SNOWFLAKE_ACCOUNT,SNOWFLAKE_USER,SNOWFLAKE_PASSWORD— Snowflake connection - •
BIGQUERY_PROJECT,GOOGLE_APPLICATION_CREDENTIALS— BigQuery connection - •
DATABRICKS_HOST,DATABRICKS_TOKEN— Databricks connection - •
AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,AWS_REGION— AWS services (Glue, Redshift, Kinesis) - •
AZURE_TENANT_ID,AZURE_CLIENT_ID,AZURE_CLIENT_SECRET— Azure services (Purview, Synapse) - •
PAGERDUTY_API_KEY— PagerDuty integration - •
SLACK_BOT_TOKEN— Slack notifications and approvals
Set these in your shell, .env file, or your organization's secrets manager. Agents auto-discover available connections on startup.
Building Custom Agents
Each Data Workers agent is an MCP server. You can build custom agents that plug into the swarm:
- •Implement the MCP server protocol. Your agent exposes tools, resources, and prompts via MCP.
- •Register with the context layer. Your custom agent shares context with other agents through the same shared context layer used by built-in agents.
- •Define your tools. Each tool has a name, description, input schema, and execution handler.
- •Set autonomy levels. Define which operations your agent can perform autonomously and which require approval.
Custom agents are first-class citizens in the swarm. The Swarm Orchestration Agent coordinates them alongside built-in agents.
Extending Existing Agents
You can extend built-in agents without building from scratch:
- •Fork and customize: Clone an agent's repository and modify its behavior for your domain
- •Add custom tools: Register additional tools with an existing agent's MCP server
- •Configure domain-specific rules: Add custom detection patterns, quality rules, or governance policies specific to your data environment
- •Custom integrations: Add MCP connections to internal tools that are not yet supported out of the box
Local Development
Set up a local development environment:
Prerequisites: Node.js 20+ (for the website and tooling), Python 3.10+ (for agent development), Git.
Clone the repository, install dependencies, and start the dev server:
git clone https://github.com/DataWorkersProject/dataworkers-website-marketing.gitcd dataworkers-website-marketing && npm installnpm run devThe dev server runs at http://localhost:5173 with hot reload enabled.
Contributing
The community edition is open source. Contributions are welcome:
- •Fork the repository on GitHub
- •Create a branch for your change (
git checkout -b feature/my-change) - •Make your changes and add tests where applicable
- •Submit a pull request with a clear description of the change and its motivation
- •A maintainer will review your PR. Address feedback and iterate until approved.
For bug reports and feature requests, open a GitHub Issue with reproduction steps or a description of the use case.