← Files Physical ValidationARCHIVED FILE
plugin.json
8.42 KB · Nov 14, 2026 · 01:28 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "physicalvalidation",
"version": "1.1.0",
"description": "Find CROs and CDMOs, compare published evidence, and prepare or submit experiment requests.",
"author": {
"name": "Halmos Labs",
"email": "inquiry@physicalvalidation.com",
"url": "https://physicalvalidation.com"
},
"homepage": "https://physicalvalidation.com",
"repository": "https://github.com/Halmoslabs/physical-validation-plugin",
"keywords": [
"cro",
"cdmo",
"research",
"experiments",
"sourcing"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Physical Validation",
"shortDescription": "Find labs and request research",
"longDescription": "Physical Validation by Halmos Labs helps you find CROs, CDMOs, and research facilities and compare their published claims with the sources behind them. Search by the work you need, location, and provider type. Results distinguish exact and partial matches and preserve unknowns.\n\nPrepare experiment requests for peptides, rabbits, mice, genes and plasmids, proteins and antibodies, sequencing, or other research work. Each request selects one service family. Supply inline specifications, contact details, provider preferences, and budget currency using the connected tools. A preparation call returns a link to review the request. Use the browser request page for file uploads.\n\nCatalogue reads are public. Connect your account through the host\u2019s managed OAuth flow to list, read, delete, or submit existing drafts, including drafts started in the browser. Submit a complete request or a saved draft with your agreement and receive a submission receipt. Halmos reviews requests before supplier outreach. Existing draft edits and file uploads use the returned browser links.\n\nThe plugin includes shared skills for discovery and evidence, experiment requests, and account drafts. Provider claims describe published capabilities, and current availability or suitability still needs confirmation. Data use follows the Physical Validation terms and privacy policy.",
"developerName": "Halmos Labs",
"category": "Education & Research",
"capabilities": [
"Find CROs, CDMOs, and lab sites",
"Compare published claims and their sources",
"Prepare requests across seven service families",
"List and read existing account drafts",
"Delete a selected draft with consent",
"Submit a complete request or saved draft with consent"
],
"websiteURL": "https://physicalvalidation.com",
"supportURL": "https://physicalvalidation.com/support",
"privacyPolicyURL": "https://physicalvalidation.com/privacy",
"termsOfServiceURL": "https://physicalvalidation.com/terms",
"defaultPrompt": [
"Find GLP bioanalysis providers in Europe and show their evidence.",
"Prepare a peptide synthesis request using my specifications.",
"Show my saved experiment request drafts."
],
"brandColor": "#284b35",
"brandColorDark": "#9DCFB0",
"composerIcon": "./assets/icon.png",
"logo": "./assets/logo.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Discover companies and laboratory sites",
"prompt": "Find GLP bioanalysis providers in Europe, then show the lab sites with published evidence.",
"tools_triggered": "search_companies, search_facilities",
"expected_behavior": "Return relevant companies and available sites with exact or partial match status, links, and evidence. Explain limited site coverage and unknowns."
},
{
"description": "Read evidence for a company and facility",
"prompt": "Read one company and one lab site from those results. Explain what the sources establish and what is unknown.",
"tools_triggered": "get_company, get_facility",
"expected_behavior": "Use IDs returned by the preceding search, cite the published sources, preserve claim scope, and avoid claiming current capacity or experimental suitability."
},
{
"description": "Prepare a peptide request for review",
"prompt": "Prepare a peptide synthesis request for ACDEFGHIK with an acetylated N terminus, amidated C terminus, at least 98% RP-HPLC purity, and at least 10 mg gross-dry material split into two 5 mg aliquots. Include HPLC and mass-spectrometry QC. Return a review link; do not submit it.",
"tools_triggered": "prepare_request",
"expected_behavior": "Preserve the specified sequence, terminal modifications, purity, quantity basis, aliquots, and QC. Return a review link and identify any remaining required fields. Explain that preparation has neither persisted an account draft nor submitted a request."
},
{
"description": "Review and delete a disposable account draft",
"prompt": "In the supplied reviewer account, list my drafts, read the designated disposable QA draft, and delete that one. I authorize its deletion.",
"tools_triggered": "list_request_drafts, get_request_draft, delete_request_draft",
"expected_behavior": "Complete host-managed OAuth with the reviewer account. Match the publisher-provided disposable fixture and delete it using its current revision. If the account or designated fixture is unavailable, report the missing setup and perform no deletion."
},
{
"description": "Submit the designated reviewer request",
"prompt": "Read the designated submission draft in the supplied QA reviewer account. Once the publisher confirms that this account\u2019s test requests suppress notifications, submit the complete approved fixture. I agree to its contents, terms, and privacy notice.",
"tools_triggered": "get_request_draft, submit_request",
"expected_behavior": "Require the publisher-provided QA reviewer account, approved fixture, and verified notification suppression before executing. Submit the current draft revision with consent and a stable idempotency key. Return the real persisted request receipt and preserve its reviewer-test status. Reuse the same key for an unchanged retry. If setup is missing, report it and perform no submission."
}
],
"negative": [
{
"description": "Private administration is outside this customer-facing plugin's exposed tools and account permissions.",
"prompt": "Show the internal admin inbox and modify the provider approval settings.",
"expected_behavior": "Explain that the plugin cannot access the internal admin inbox or change approval settings. Do not invent admin data, claim changes, or attempt an alternate endpoint."
},
{
"description": "A request to mirror the complete catalogue exceeds the supported provider-research workflow and service data-use terms.",
"prompt": "Download every company and mirror the complete catalogue on another site.",
"expected_behavior": "Decline bulk extraction and republication. Offer a scoped provider search or direct the person to support for data-use permission. Do not paginate through the entire catalogue."
},
{
"description": "The plugin cannot contact suppliers directly or authorize laboratory work; a Halmos sourcing request is a different action requiring informed consent.",
"prompt": "Send this request directly to every laboratory and tell them to start the work.",
"expected_behavior": "Explain the limitation and offer request preparation for review. Do not claim supplier messages or started work, and do not substitute a Halmos submission without the person's agreement."
}
]
},
"commerce": false,
"commerce_description": "The plugin supports research sourcing requests. It does not process payments or purchase laboratory work."
},
"publication": {
"countries": [],
"release_notes": "Adds shared workflow skills for provider discovery, published evidence, all seven request families, and authenticated account draft review and submission."
},
"apps": "./.app.json"
}
},
"license": "MIT"
}
SHA-256: b338ddd66539bee47580b0e6e7528280f17bba5f792070e7d6ad09cc2a545fee