AgentDomain AutoGen
A native Python package built on Microsoft's official AutoGen McpWorkbench.
It connects to the separately installed AgentDomain Node.js MCP server over
stdio. The package owns the guarded implementation; the older MCP example files
are compatibility imports and launchers, not a second implementation.
Installation
Version 0.11.0 uses the separately installed
@agentdomain/mcp-server@0.11.0 bridge.
The runtime never installs npm packages or silently falls back to another version.
Install both packages:
python -m pip install agentdomain-autogen==0.11.0
npm install --ignore-scripts --no-audit --no-fund @agentdomain/mcp-server@0.11.0
Python 3.10+ is required; qualification uses Python 3.12. The package pins official
autogen-agentchat, autogen-core and autogen-ext[mcp] at 0.7.5, Python
mcp at 1.30.0, and Pydantic at 2.13.5. These are Microsoft AutoGen packages,
not the similarly named AG2 distribution.
Use The Installed Connector
import asyncio
from pathlib import Path
from agentdomain_autogen import (
AgentDomainWorkbench,
inspect_and_prepare,
server_parameters,
)
async def inspect():
params = server_parameters(
Path("/absolute/path/to/node"),
installed_package=Path("/trusted/node_modules/@agentdomain/mcp-server"),
)
async with AgentDomainWorkbench(params) as tools:
report = await inspect_and_prepare(tools, {"domain": "your-domain.xyz"})
print(report)
asyncio.run(inspect())
Both paths must be configured by the trusted application owner, never by a model
or tool response. Use node.exe on Windows. For development only, replace
installed_package with source_checkout=Path("/reviewed/built/AgentDomain").
That explicit mode requires the existing built MCP entrypoint; it never runs a
TypeScript loader or fetches an alternate executable.
The console command and python -m agentdomain_autogen accept the same arguments:
agentdomain-autogen --node /absolute/path/to/node \
--installed-package /trusted/node_modules/@agentdomain/mcp-server \
--domain your-domain.xyz
Use a domain XOR decimal token ID. An optional --expected-owner 0x... compares
an address; it is not authentication. --prepare-enable or --prepare-disable
also requires an expected owner and --builder-code, and returns an unsigned
setting plan for separate owner review. It does not execute that plan.
The importable inspect_and_prepare function accepts enabled=True/False and
builder_code="your_registered_code" for that same optional preparation step.
Policy And Trust Boundary
Only these MCP tools are discoverable and callable:
inspect_agent_identityinspect_agent_renewalprepare_auto_renew_change
The workbench validates closed argument schemas before calling the actual MCP server. Arbitrary RPC/chain/registry/command/key/approval fields and execution tools are rejected. Arguments are limited to 16 KiB, parsed JSON results to 1 MiB, and stdio reads to 30 seconds. The trusted package manifest is limited to 64 KiB. Token IDs must be positive uint256 decimal strings, domains at most 253 characters, and builder codes 1-32 lowercase letters, digits or underscores.
The child receives an OS-variable allowlist and a minimal PATH. Wallet keys,
AgentDomain API keys, write flags, model/provider configuration, cloud/proxy
credentials and NODE_OPTIONS are not forwarded. Python MCP's inherited OS
variables are accounted for by the pinned client version. This is not an OS
sandbox: the configured executable and installed dependencies must be trusted.
An expected-owner match, model statement or approval boolean cannot authorize a transaction. Minimum fees are not registrar quotes. Setting preparation does not fund a vault, spend, sign, approve, broadcast or complete a domain renewal. A separate trusted wallet host owns actual human approval and SDK execution. Enabling there may allow later authorized renewal spending from funded balances; disabling does not cancel an existing reservation.
RPC observations are not consensus proofs, DNS verification or confirmation of linked names/metadata. Errors are not converted into successful observations. Use the workbench as an async context manager. Component serialization is refused because restoring the upstream base provider would drop the guard.
Optional Real AssistantAgent
create_assistant(model, workbench) constructs the real AutoGen AssistantAgent,
with this guarded workbench, at most three tool iterations and no MCP sampling
model. Supply and close your own trusted model client. No provider extra or model
key is required for deterministic inspection.
agentdomain-autogen-assistant is an optional CLI. It reads a trusted AutoGen
component JSON from AUTOGEN_MODEL_CONFIG (at most 16 KiB); configure the actual
provider extra separately. Loading component JSON can import code, so never take
it from a model, website or MCP output. The package does not save that config or
forward provider keys to Node. Model calls can incur provider charges.
Build And Qualify Without Publishing
From the public checkout, use an isolated Python venv/cache under ignored
.qa/, not a source directory or a global install:
python -m pip install build==1.3.0
python -m build --outdir .qa/autogen-package/dist packages/autogen-plugin
python -m pip install \
-r packages/mcp-server/examples/autogen/framework-requirements.txt \
-c packages/mcp-server/examples/autogen/constraints.txt
python -m pip install --force-reinstall --no-deps --no-index \
.qa/autogen-package/dist/agentdomain_autogen-0.11.0-py3-none-any.whl
python -m pip check
python -B packages/autogen-plugin/test/verify_artifacts.py .qa/autogen-package/dist
The PEP 517 build creates a wheel from the sdist as well as the sdist itself. Both have an explicit source/license allowlist. No tests, caches, credentials, Node installation or private code belong in either archive. The framework-only CI input deliberately excludes this unpublished package. Never use the consumer's self-requirement to bootstrap a first-release build.
Build the public MCP/SDK through the repository's reviewed workflow, then run:
AGENTDOMAIN_AUTOGEN_PYTHON=/absolute/path/to/venv/bin/python \
node --test packages/mcp-server/test/autogen.integration.test.mjs
On PowerShell, set $env:AGENTDOMAIN_AUTOGEN_PYTHON to the isolated venv's
Scripts/python.exe. The native suite verifies that the connector imports from
an installed distribution, uses actual AutoGen and the Node MCP/SDK against
labelled synthetic RPC fixtures, exercises the real replay-model AssistantAgent,
and checks MCP child shutdown. It makes no paid LLM or live wallet calls.
Packaging follows PyPA's PEP 517 project guide and Hatchling's explicit file selection. The source is Apache-2.0; included LICENSE and NOTICE preserve the public repository's copyright and trademark terms.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentdomain_autogen-0.11.0.tar.gz.
File metadata
- Download URL: agentdomain_autogen-0.11.0.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cd122cc58b5c144992d4f751f171896a036703b4a83f80ff9e2358c5e1d3a37
|
|
| MD5 |
ffb0b3fd935ad90a41a6afe3fc7e047d
|
|
| BLAKE2b-256 |
43c3918030af9b516e6055767524f0e552905eb4fd4182d2ecff70634788e829
|
Provenance
The following attestation bundles were made for agentdomain_autogen-0.11.0.tar.gz:
Publisher:
publish-python.yml on 0xmdrakib/AgentDomain
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agentdomain_autogen-0.11.0.tar.gz -
Subject digest:
6cd122cc58b5c144992d4f751f171896a036703b4a83f80ff9e2358c5e1d3a37 - Sigstore transparency entry: 2833432242
- Sigstore integration time:
-
Permalink:
0xmdrakib/AgentDomain@99232d692d736737100ed4dec5e1d75130c70c6e -
Branch / Tag:
refs/heads/main - Owner: https://github.com/0xmdrakib
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python.yml@99232d692d736737100ed4dec5e1d75130c70c6e -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file agentdomain_autogen-0.11.0-py3-none-any.whl.
File metadata
- Download URL: agentdomain_autogen-0.11.0-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27b49abe4a43b93657b58d54d0fba6785b6a53c317313a8ccf7d930ca89bea00
|
|
| MD5 |
108f5e06c39d08aed52c323ff121e6be
|
|
| BLAKE2b-256 |
402263fb8abfe863c48004334a35c67ed28488c853b626896c54d2ff5aba2622
|
Provenance
The following attestation bundles were made for agentdomain_autogen-0.11.0-py3-none-any.whl:
Publisher:
publish-python.yml on 0xmdrakib/AgentDomain
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agentdomain_autogen-0.11.0-py3-none-any.whl -
Subject digest:
27b49abe4a43b93657b58d54d0fba6785b6a53c317313a8ccf7d930ca89bea00 - Sigstore transparency entry: 2833432253
- Sigstore integration time:
-
Permalink:
0xmdrakib/AgentDomain@99232d692d736737100ed4dec5e1d75130c70c6e -
Branch / Tag:
refs/heads/main - Owner: https://github.com/0xmdrakib
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python.yml@99232d692d736737100ed4dec5e1d75130c70c6e -
Trigger Event:
workflow_dispatch
-
Statement type: