Metadata-Version: 2.4
Name: agentplane-registry
Version: 0.0.1
Summary: agentplane discovery service (standalone-capable)
License-Expression: MIT
Requires-Python: >=3.12
Requires-Dist: agentplane-core<0.1.0,>=0.0.1
Requires-Dist: aiosqlite>=0.20
Requires-Dist: fastapi>=0.115
Requires-Dist: fastmcp==3.4.4
Requires-Dist: httpx>=0.27
Requires-Dist: opentelemetry-api>=1.27
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.27
Requires-Dist: opentelemetry-sdk>=1.27
Requires-Dist: pydantic-settings>=2.4
Requires-Dist: pyjwt[crypto]>=2.9
Requires-Dist: sqlalchemy[asyncio]>=2.0.30
Requires-Dist: uvicorn>=0.30
Provides-Extra: postgres
Requires-Dist: asyncpg>=0.29; extra == 'postgres'
Requires-Dist: pgvector>=0.3; extra == 'postgres'
Provides-Extra: semantic
Requires-Dist: numpy>=1.26; extra == 'semantic'
Description-Content-Type: text/markdown

# agentplane-registry

Standalone-capable discovery service for A2A agents and MCP servers:
register, tag, search (text + optional semantic), health-check.

- Runs alone: SQLite by default, auth optional (generic OIDC, any issuer),
  no calls to other agentplane services.
- Extras: `agentplane-registry[semantic]` (numpy + embeddings via an
  OpenAI-compatible endpoint), `[postgres]` (asyncpg). Without extras the
  service degrades gracefully and announces features via `GET /capabilities`.
- Stores **gateway URLs only**; private/internal hosts are rejected unless
  `AGENTPLANE_REGISTRY_ALLOW_PRIVATE_URLS=true`.

Run it:

```
uvicorn --factory agentplane_registry.app:create_app --port 8100
```
