Skip to main content

Tool Registry service for ARP runtimes (tool discovery, schemas, invocation).

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Tool Registry

This repo contains the Tool Registry service: a standalone tool provider for ARP runtimes.

Current phase: MVP implementation (stdlib HTTP server).

Design docs

Install

pipx install arp-jarvis-tool-registry
python3 -m pip install arp-jarvis-tool-registry

Run locally

Create a virtualenv, then install and run the service:

python3 -m venv .venv
source .venv/bin/activate

python3 -m pip install -e .

arp-jarvis-tool-registry

If port 8000 is already in use, it binds to a free port and logs it (or use --port 0 to always pick a free port). Use --auto-port to fall back when an explicit --port (or TOOL_REGISTRY_PORT) is in use.

Env vars:

  • TOOL_REGISTRY_HOST (default 127.0.0.1)
  • TOOL_REGISTRY_PORT (default 8000)
  • TOOL_REGISTRY_DOMAINS (default core)

Endpoints:

  • GET /v1/health
  • GET /v1/version
  • GET /v1/tools
  • GET /v1/tools/{tool_id}
  • POST /v1/tool-invocations (body: {"invocation_id":"...","tool_id":"...","args":{...}} or {"invocation_id":"...","tool_name":"...","args":{...}})

More docs:

Run tests

From the repo root:

python3 -m unittest discover -v

Or (if you have pytest installed):

pytest -q

Optional (schema contract tests):

python3 -m pip install jsonschema

MVP capabilities + known gaps

Capabilities:

  • Tool discovery (GET /v1/tools) and detail (GET /v1/tools/{tool_id}).
  • Validated invocation (POST /v1/tool-invocations) with normalized ToolInvocationResult/ErrorEnvelope.
  • Simple in-repo “domain modules” pattern for adding tools.

Known gaps:

  • No auth, rate limiting, or multi-tenant policy layer yet.
  • Stdlib HTTP server only (FastAPI/ASGI swap is a future improvement).
  • No MCP aggregation implementation in this MVP.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arp_jarvis_tool_registry-0.1.0.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arp_jarvis_tool_registry-0.1.0-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file arp_jarvis_tool_registry-0.1.0.tar.gz.

File metadata

  • Download URL: arp_jarvis_tool_registry-0.1.0.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for arp_jarvis_tool_registry-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e6a6ec0d643a8124e6137852dce0af52175faee5749854ad55fb7c6b4935b652
MD5 03288fb95ed566e5d81e3d2ed9ab8368
BLAKE2b-256 c44af5c79290b340897a25f82ba1408d06969b2ffca1d4349c5181f8251634ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for arp_jarvis_tool_registry-0.1.0.tar.gz:

Publisher: publish.yml on AgentRuntimeProtocol/JARVIS_Tool_Registry

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file arp_jarvis_tool_registry-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for arp_jarvis_tool_registry-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cdbbf15cfd6d6a92f935145555e57b3486d7035b5f18c58282861b6758091841
MD5 ab3fbf70214ae15d5d612b02cc0aa3f6
BLAKE2b-256 fff1a9a11ebcf96b22ceddcc49dd54936d509ef3919740c7127d836c5e599fd9

See more details on using hashes here.

Provenance

The following attestation bundles were made for arp_jarvis_tool_registry-0.1.0-py3-none-any.whl:

Publisher: publish.yml on AgentRuntimeProtocol/JARVIS_Tool_Registry

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page