PDAC Subtype Agent
by anne-voigtco.huggingface.anne-voigt/pdac-subtype-agent-prod
- Remote endpoint
- 11 tools
Uptime
Checked · every day
0%from 4 days of checks
Up without downtime on 0 of 4 days with data; down 5123 minutes in all, the longest 1440 minutes on 1 November.
- No downtime
- Degraded
- Down over 5 minutes
- No data
- Not checked yet
How far each check got
- Reached the address 100%
- Completed the handshake 0.0%
- Listed its tools 0.0%
Every day
| Day | Result | Checks | Median |
|---|---|---|---|
| 3 Nov (today) | Down 1367 minutes | 1 | – |
| 2 Nov | Down 1440 minutes | 1of 1 | – |
| 1 Nov | Down 1440 minutes | 1of 1 | – |
| 31 Oct | Down 876 minutes | 5 | – |
A failure counts as down time only when a second check five minutes later fails too. How we check
Connect to the publisher's own endpoint
Paste into Settings › Connectors › Add custom connector:
https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse Run in a terminal:
claude mcp add --transport sse pdac-subtype-agent-prod https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse Add to ~/.cursor/mcp.json:
Add to ~/.config/devin/mcp_config.json:
Add to mcp.json (Program › Install › Edit mcp.json):
Add to ~/.gemini/settings.json:
Add to config.json in oterm's data folder (~/Library/Application Support/oterm on macOS, ~/.local/share/oterm on Linux, %APPDATA%\oterm on Windows):
Add to ~/.config/eca/config.json (global) or .eca/config.json in the project:
{
"mcpServers": {
"pdac-subtype-agent-prod": {
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
} Add to .vscode/mcp.json:
{
"servers": {
"pdac-subtype-agent-prod": {
"type": "sse",
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
} Add to ~/.config/zed/settings.json:
{
"context_servers": {
"pdac-subtype-agent-prod": {
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
} This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
Add to cline_mcp_settings.json (MCP Servers › Configure › Configure MCP Servers):
Add to anythingllm_mcp_servers.json in the AnythingLLM storage plugins directory:
Add to Augment Settings Panel – MCP section – Import from JSON (VS Code extension):
{
"mcpServers": {
"pdac-subtype-agent-prod": {
"type": "sse",
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
} Add to ~/.continue/config.yaml:
mcpServers:
- name: "pdac-subtype-agent-prod"
type: sse
url: "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse" Add to ~/.config/goose/config.yaml:
extensions:
"pdac-subtype-agent-prod":
type: streamable_http
name: "pdac-subtype-agent-prod"
enabled: true
uri: "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
headers: {}
env_keys: []
envs: {}
timeout: 300 This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
Run in a terminal:
codex mcp add pdac-subtype-agent-prod --url https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
Add to ~/.llm/config.json:
Add to resources/assets/config/mcp.json in the installed app:
Add to ~/.boltai/mcp.json:
Add to ~/.bob/settings/mcp.json (global) or .bob/mcp.json (project):
Add to ~/.kiro/settings/mcp.json (user) or .kiro/settings/mcp.json (workspace):
Add to ~/.kiro/settings/mcp.json (user) or .kiro/settings/mcp.json (workspace):
{
"mcpServers": {
"pdac-subtype-agent-prod": {
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
} This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
Add to ~/.config/agenvoy/mcp.json:
{
"servers": {
"pdac-subtype-agent-prod": {
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
} This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
Add to ~/.config/amp/settings.json (user) or .amp/settings.json (workspace):
{
"amp.mcpServers": {
"pdac-subtype-agent-prod": {
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
} For agents: the install prompt
Every step above as one Markdown text, for an assistant installing it for you.
# Install the MCP server PDAC Subtype Agent (`co.huggingface.anne-voigt/pdac-subtype-agent-prod`)
Its page: https://plug.directory/servers/co.huggingface.anne-voigt/pdac-subtype-agent-prod
It runs on the publisher's servers; the client connects to its URL.
Use the section for the person's client.
## Claude Desktop
Paste into Settings › Connectors › Add custom connector:
```text
https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse
```
## Claude Code
Run in a terminal:
```sh
claude mcp add --transport sse pdac-subtype-agent-prod https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse
```
## Cursor, Devin Desktop, LM Studio, Gemini CLI, oterm, ECA
Merge into the place for the person's client:
- Cursor: ~/.cursor/mcp.json
- Devin Desktop: ~/.config/devin/mcp_config.json
- LM Studio: mcp.json (Program › Install › Edit mcp.json)
- Gemini CLI: ~/.gemini/settings.json
- oterm: config.json in oterm's data folder (~/Library/Application Support/oterm on macOS, ~/.local/share/oterm on Linux, %APPDATA%\oterm on Windows)
- ECA: ~/.config/eca/config.json (global) or .eca/config.json in the project
```json
{
"mcpServers": {
"pdac-subtype-agent-prod": {
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
}
```
## VS Code
Merge into .vscode/mcp.json:
```json
{
"servers": {
"pdac-subtype-agent-prod": {
"type": "sse",
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
}
```
## Zed
This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
## Cline, AnythingLLM, Augment Code
Merge into the place for the person's client:
- Cline: cline_mcp_settings.json (MCP Servers › Configure › Configure MCP Servers)
- AnythingLLM: anythingllm_mcp_servers.json in the AnythingLLM storage plugins directory
- Augment Code: Augment Settings Panel – MCP section – Import from JSON (VS Code extension)
```json
{
"mcpServers": {
"pdac-subtype-agent-prod": {
"type": "sse",
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
}
```
## Continue
Merge into ~/.continue/config.yaml:
```yaml
mcpServers:
- name: "pdac-subtype-agent-prod"
type: sse
url: "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
```
## Goose
This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
## Codex
This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
## mcp-client-cli, TUUI, BoltAI, Bob Shell, Kiro, Kiro CLI
This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
## Agenvoy
This server's endpoint speaks only SSE, which this client's documentation does not list among its transports; use another client for it.
## Amp
Merge into ~/.config/amp/settings.json (user) or .amp/settings.json (workspace):
```json
{
"amp.mcpServers": {
"pdac-subtype-agent-prod": {
"url": "https://anne-voigt-pdac-subtype-agent-prod.hf.space/gradio_api/mcp/sse"
}
}
}
```
Then restart the client, or reload its MCP servers, and ask it to list the server's tools to confirm it started.
Tools 11
pdac_subtype_agent_prod__build_joint_embeddingJoint embedding over N REGISTERED datasets (ADR-0020 §5, machine door). ``dataset_ids``: comma-separated registered ids (uploads stay UI-only, ADR-0006). ``selections``: optional JSON ARRAY of per-member ADR-0025 selection specs (null/{} for none), aligned by position. Returns the joint coordinates + the mandatory comparability banner, a structured refusal, or an error — never raises into Gradio. First build runs the full pipeline and is cached under the §5 member-identity key; a repeat call is instant.pdac_subtype_agent_prod__check_login_statuspdac_subtype_agent_prod__compare_alignStateless ADR-0020 §1 alignment over N result payloads (JSON array string). Each element must be a payload as returned by this Space's PurIST/GSVA endpoints (machine-door payloads carry their own ``run_id``, echoed back as ``run_refs``). Oversize or malformed input is refused by name, never truncated (the ADR-0025 machine-door posture). Returns the aligned comparison, a structured refusal, or an error — never raises into Gradio.pdac_subtype_agent_prod__enumerate_analysesStateless: list the analyses this specialist runs, each marked valid/invalid for a given internal ``data_level``. Returns the tool JSON; never raises.pdac_subtype_agent_prod__infer_data_stateStateless: resolve the two BYOD declarations (ADR-0010 Q1/Q2) to a data state plus the analyses valid for it. Returns the tool JSON; never raises into Gradio.pdac_subtype_agent_prod__run_byod_gene_setsGSVA signature scoring on an uploaded matrix (machine shell, ADR-0004). Comma-separated ``sets``/``stratify``; blank = the tool's own default. ``metadata`` (plan §C1, ADR-0022) is the optional per-sample metadata table — a second ``handle_file`` upload through the same ``_machine_upload_path`` contract (a bare path string is refused) and the same gate-0/digest pipeline inside the seam. Omitted → All-only stratification, exactly as before; the param is trailing and defaulted so existing callers are untouched. ``sample_selection`` (ADR-0025 §8, trailing-most) is an optional canonical-JSON selection spec — schema-validated and size-capped here (refused, never truncated); empty/omitted is byte-identical to pre-0025. If a user passes a file as an input, use the upload_file_to_gradio tool, if present, to upload the file to the gradio app and create a Gradio File Input. Then use the returned path as the input to the toolpdac_subtype_agent_prod__run_byod_puristPurIST subtyping on an uploaded matrix (machine shell, ADR-0004). ``matrix`` must be sent with ``gradio_client.handle_file``. ``attested`` must be explicitly true — the de-identification attestation is required on every door. ``principal`` is the end user the caller is acting for: recorded, never trusted. ``sample_selection`` (ADR-0025 §8, trailing) is an optional canonical-JSON selection spec — schema-validated and size-capped at this door (refused, never truncated); empty/omitted is byte-identical to pre-0025. ``request`` is injected by Gradio, not a positional argument. If a user passes a file as an input, use the upload_file_to_gradio tool, if present, to upload the file to the gradio app and create a Gradio File Input. Then use the returned path as the input to the toolpdac_subtype_agent_prod__run_findingsMachine door for the ADR-0028 ranking: score, then rank against the cohort's obs. Why this exists as its OWN endpoint rather than a `findings` block bolted onto ``score_signatures``. ``agents.yaml`` describes what the orchestrator may CALL, and the file records its own hard lesson twice: a capability declared but not delivered is worse than one not declared, because the tool-extraction call picks it confidently. The findings panel shipped UI-only, so until this endpoint existed the orchestrator could not obtain a ranking at all — and routing "which pathway differs most?" to ``score_signatures`` would have handed its summarizer 58 sets x N samples of raw scores and left it to invent the ordering. That is exactly the LLM free-association ADR-0027 §4 and ADR-0028 §5 forbid: the whole point is that the narrative restates a computed row. Extending ``score_signatures`` instead was rejected — it would change a payload the orchestrator already parses, and make every scoring call pay a datasetpdac_subtype_agent_prod__run_findings_test_inputsThe exact inputs behind a ranking, packed for DecoupleRpy's significance test. ADR-0028 §7, second amendment. ``rank_findings`` says which associations are strongest; whether they hold up is DecoupleRpy's question (ADR-0027). Its ``compare_scores_by_group`` endpoint (DecoupleRpy ADR-0035) tests a score matrix someone else computed, and this door hands it the one this ranking read: the same scoring call, the same samples, the labels each two-group row compared, and each row's Cliff's δ so DecoupleRpy can prove the numbers match before it reports a p-value. The orchestrator forwards ``request`` unchanged. Same arguments as ``rank_findings`` and the same scoring path (:func:`_ranked_findings`), so the two cannot describe different numbers. This endpoint computes no test statistic: it packs numbers for another agent to test. Registered datasets only; an upload's matrix is never kept (ADR-0006 §4). ``sample_selection`` and ``columns`` are ``rank_findings``' trailing arguments and must be fopdac_subtype_agent_prod__run_gene_setsComma-separated ``sets``/``stratify``; blank = the tool's own default. ``sample_selection`` (trailing, optional; ADR-0025 §8 amendment, 2026-10-08): an ADR-0025 selection spec as JSON. GSVA then re-runs on the selected samples, which become its reference set (PLAN-ranking-method-review C2). Every ok payload states that set in ``gsva_reference``.pdac_subtype_agent_prod__run_puristPurIST on a registered dataset. ``sample_selection`` (trailing, optional; ADR-0020 item 1, 2026-10-15) is an ADR-0025 selection spec as JSON, the same shape and parser as ``/score_signatures``. It lets a comparison run PurIST on one member's selected samples. Blank = the call exactly as before the parameter existed, so every existing caller is unaffected. A malformed spec is refused, never ignored (:func:`_machine_selection`).
From Hugging Face Spaces. Report a problem