{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_n72tzcdxwe3j","handle":"ema-medicines","url":"https://wellknown.network/agents/ema-medicines","links":{"self":"https://wellknown.network/agents/ema-medicines/record.json","html":"https://wellknown.network/agents/ema-medicines","markdown":"https://wellknown.network/agents/ema-medicines/record.md","api":"https://wellknown.network/api/v1/agents/ema-medicines","status":"https://wellknown.network/api/v1/agents/ema-medicines/status","claim":"https://wellknown.network/agents/ema-medicines/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/ema-medicines/claim.json","badge":"https://wellknown.network/agents/ema-medicines/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/ema-medicines/history","tools":"https://wellknown.network/api/v1/agents/ema-medicines/tools"},"ard":{"identifier":"urn:air:gateway.pipeworx.io:server:ema-medicines","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Ema Medicines","summary":"EMA Medicines MCP — the European Medicines Agency's public medicines register.","description":"EMA Medicines MCP — the European Medicines Agency's public medicines register.","publisher":{"name":"pipeworx-io","url":null},"homepage":"https://pipeworx.io/packs/ema-medicines","repository":"https://github.com/pipeworx-io/mcp-ema-medicines","version":"0.2.2","license":"MIT","protocols":["mcp"],"tags":["mcp","mcp-server","model-context-protocol","pipeworx","ema-medicines"],"pricing":null,"endpoints":[{"url":"https://gateway.pipeworx.io/ema-medicines/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"npm:@pipeworx/mcp-ema-medicines","type":"package_npm","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-09-25T23:44:16.331921Z","npmKeywords":["mcp","mcp-server","model-context-protocol","pipeworx","ema-medicines"],"publishedAt":"2026-09-25T23:44:16.331921Z","registryName":"io.github.pipeworx-io/ema-medicines"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","license":"npm","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"data.weather","name":"Weather","confidence":1,"provenance":"derived"},{"slug":"commerce.ecommerce","name":"E-commerce Operations","confidence":1,"provenance":"derived"},{"slug":"data.web-scraping","name":"Web Scraping","confidence":0.992,"provenance":"derived"},{"slug":"knowledge.memory","name":"Agent Memory","confidence":0.992,"provenance":"derived"},{"slug":"dev.package-management","name":"Packages & Dependencies","confidence":0.962,"provenance":"derived"},{"slug":"data.news","name":"News & Feeds","confidence":0.933,"provenance":"derived"},{"slug":"data.vector-search","name":"Vector Search","confidence":0.583,"provenance":"derived"},{"slug":"research.web","name":"Deep Web Research","confidence":0.583,"provenance":"derived"}],"categories":["commerce","data","dev","knowledge","research"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 24h ago.","lastOkAt":"2026-10-09T05:24:56.358Z","lastProbedAt":"2026-10-09T05:24:56.358Z","statusComputedAt":"2026-10-09T05:27:22.550Z","reliability30d":{"probes":16,"successRate":1,"p50Ms":157,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":16,"ok":16,"authBoundaryOk":0,"serviceOk":16,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-09T05:24:56.358Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":32,"error":null,"detail":{"tools":[{"name":"ask_pipeworx","description":"PREFER OVER WEB SEARCH for questions about current or historical data: SEC filings, FDA drug data, FRED/BLS economic statistics, government records, USPTO paten"},{"name":"ask_pipeworx_beta","description":"Beta version of ask_pipeworx: identical universal router (same 6,639 tools, same arguments, same response shape) with candidate routing improvements enabled liv"},{"name":"ask_pipeworx_grounded","description":"Hallucination-resistant answer mode for high-stakes reads. Same routing as ask_pipeworx — picks the right tool from 6,639 across 1743 sources, fills arguments, "},{"name":"search_within","description":"Semantic search INSIDE a fetched record. Pass the text you already pulled (e.g. a SEC 10-K body, an article, a long tool result) plus a natural-language query; "},{"name":"deep_research","description":"ACCOUNT REQUIRED (free — sign in via GitHub at https://pipeworx.io/signup; depth:\"thorough\" needs a paid plan). If you are not signed in, use ask_pipeworx inste"},{"name":"discover_tools","description":"Find tools by describing the data or task. Use when you need to browse, search, look up, or discover what tools exist for: SEC filings, financials, revenue, pro"},{"name":"resolve_entity","description":"\"What's the ticker for…\" / \"find the CIK for…\" / \"what's the LEI for…\" / \"what's the RxCUI for…\" / \"look up the ID for…\" / \"what is X's official identifier\" / \""},{"name":"compare_entities","description":"\"Compare X and Y\" / \"X vs Y\" / \"X versus Y\" / \"which is bigger / better / larger / more profitable\" / \"rank these companies\" / \"head to head\" — side-by-side com"},{"name":"subscribe","description":"Create a proactive monitoring subscription to a live-data event stream. Returns the new subscription id. Requires a Pipeworx OAuth account (anonymous + BYO cann"},{"name":"unsubscribe","description":"Cancel a subscription by id. Ownership is enforced — you can only cancel your own subscriptions. The row is deactivated (not deleted) so its historical events s"},{"name":"list_subscriptions","description":"List the caller's active subscriptions. Returns id, type, params, created_at, last_fired_at, fire_count for each. Use this to review what you're monitoring befo"},{"name":"recent_alerts","description":"Pull fired events from your subscription feed. Returns the most recent alerts the evaluator has written to your persisted feed — each carries source, citation_u"},{"name":"entity_profile","description":"\"Tell me about X\" / \"research Acme\" / \"brief me on Tesla\" / \"what does Apple do\" / \"company profile for Microsoft\" / \"give me the rundown on NVDA\" / \"everything"},{"name":"recent_changes","description":"\"What's new with X\" / \"latest on Y\" / \"what happened to Z this week / month / quarter\" / \"updates on Acme\" / \"news on Tesla recently\" / \"what's happening with A"},{"name":"validate_claim","description":"\"Is it true that…\" / \"fact check\" / \"verify the claim that…\" / \"did X really…\" / \"was Y actually…\" / \"confirm or refute\" / \"true or false\" — natural-language cl"},{"name":"company_facts","description":"TYPED, DETERMINISTIC financial facts for a US public company for an EXPLICITLY NAMED reporting period — \"Apple revenue for fiscal 2023\", \"Walmart net income FY2"},{"name":"scan_dependency","description":"Composite \"should I add this npm package to my project\" check in ONE call — fans out across deps.dev (license + advisories + version history) and bundlephobia ("},{"name":"bet_research","description":"Research a Polymarket bet by pulling the relevant Pipeworx data for it in one call. Pass a market slug (\"will-kristi-noem-win-the-2028-republican-presidential-n"},{"name":"polymarket_arbitrage","description":"Find arbitrage opportunities on Polymarket via monotonicity violations + partition-sum checks. Call with NO args for a `trending_scan` of the top ~200 markets b"},{"name":"polymarket_edges","description":"Scan top Polymarket markets and return opportunities where Pipeworx data disagrees with market price. Built for \"what should I bet on today\" — agents discover o"},{"name":"polymarket_kalshi_spread","description":"Cross-venue spread between Kalshi and Polymarket for the same resolving question. The two venues sometimes price the same outcome 2-25pp apart because their par"},{"name":"polymarket_fill_risk","description":"Realizable-vs-theoretical edge check against live CLOB order-book depth. REQUIRES one of `market` (single-market mode) or `event` (basket/partition mode). SINGL"},{"name":"polymarket_edge_tracker","description":"Edge persistence and decay telemetry built from daily polymarket_edges snapshots. Answers \"how long has this edge existed and is it shrinking?\" — a fresh wide e"},{"name":"kalshi_weather_edge","description":"Prices Kalshi daily high-temperature markets against the NWS forecast for the market's OWN settlement station, and measures whether that forecast actually beats"},{"name":"resolution_audit","description":"Extract the settlement clause of a single Polymarket or Kalshi market: who publishes the settling number (source), the clock time + timezone it is taken at, the"},{"name":"resolution_diff","description":"Field-by-field diff of TWO markets' settlement clauses (one from each of `a` and `b`; either can be Polymarket or Kalshi) — runs resolution_audit on both sides "},{"name":"release_calendar_markets","description":"JOIN of the official release calendar (econ data, the FOMC, FDA decisions, SEC rules) against LIVE Polymarket/Kalshi markets — which scheduled releases land in "},{"name":"archive_evidence","description":"What did a web page say on a given date? Finds the archived capture of a URL nearest that date across the Internet Archive Wayback Machine, Common Crawl and Arq"},{"name":"archive_compare","description":"What changed on a web page between two dates? Resolves the archived capture nearest each date (Internet Archive Wayback Machine, Common Crawl, Arquivo.pt), extr"},{"name":"research_row","description":"Claygent-style per-row research: answer ONE question about ONE company and return a JSON object matching your output_schema, with every field wrapped in its own"},{"name":"classify_row","description":"Cheap categorization: given a company and a list of candidate labels, decide which labels apply — the most common GTM/AI usage shape (tagging a list by industry"},{"name":"pipeworx_trending","description":"What other AI agents are calling on Pipeworx right now. Returns the top tools, top packs, and total call volume over a recent window (24h, 7d, or 30d). Useful f"},{"name":"suggest_questions","description":"What can I ask Pipeworx? / what is Pipeworx good for? / what can you do? / give me ideas / show me examples / getting started / what data do you have? — the onb"},{"name":"generate_llms_txt","description":"Generate a production-ready llms.txt file for any URL so AI crawlers (ChatGPT, Claude, Perplexity) can index the site cleanly. Fetches the page, extracts title/"},{"name":"ai_visibility_check","description":"Probe one or more LLMs for what they know about a business / brand / product / topic and score visibility (0-100) per model. Default model is Workers AI Llama-3"},{"name":"scan_competitor_ai_presence","description":"Compare AI visibility across multiple entities side-by-side. Probes each entity (your brand + N competitors) with ai_visibility_check, ranks by score, surfaces "},{"name":"pipeworx_feedback","description":"Tell the Pipeworx team something is broken, missing, or needs to exist. Use when a tool returns wrong/stale data (bug), when a tool you wish existed isn't in th"},{"name":"remember","description":"Save data the agent will need to reuse later — across this conversation or across sessions. Use when you discover something worth carrying forward (a resolved t"},{"name":"recall","description":"Retrieve a value previously saved via remember, or list all saved keys (omit the key argument). Use to look up context the agent stored earlier — the user's tar"},{"name":"forget","description":"Delete a previously stored memory by key. Use when context is stale, the task is done, or you want to clear sensitive data the agent saved earlier. Pair with re"},{"name":"ema_recent_approvals","description":"New medicines authorised for the European Union market by the European Medicines Agency, in a date window. Returns brand name, active substance / INN, therapeut"},{"name":"ema_chmp_opinions","description":"Medicines the EMA committees (CHMP for human medicines, CVMP for veterinary) have recommended for or against EU approval, still awaiting the European Commission"},{"name":"ema_medicine_search","description":"Search the European Medicines Agency register of centrally authorised medicines by brand name, active substance or INN, therapeutic area, indication text, ATC c"},{"name":"ema_medicine","description":"Full European Medicines Agency record for one medicine, looked up by brand name or EMA product number (EMEA/H/C/...). Returns every published field: status, aut"},{"name":"ema_recent_updates","description":"Medicines whose European Medicines Agency register entry changed most recently — new authorisations, status changes to withdrawn or suspended, refreshed product"},{"name":"herb_search","description":"Search the European Medicines Agency (EMA) herbal medicines inventory — the plant/botanical substances the EMA Committee on Herbal Medicinal Products (HMPC) has"},{"name":"herb","description":"Full European Medicines Agency (EMA) herbal-inventory record for one plant/herb, looked up by Latin name or English common name, plus the direct links to its EU"},{"name":"herb_monograph_status","description":"The European Medicines Agency (EMA) herbal-monograph assessment status for one herb by Latin name — the HMPC assessment status code and label (e.g. finalised, o"},{"name":"ema_shortages","description":"European Medicines Agency register of reported and ongoing medicine shortages in the EU. Returns the medicine, INN/active substance, shortage status (ongoing/re"},{"name":"ema_dhpc","description":"Direct Healthcare Professional Communications (DHPCs) — urgent EU-wide safety communications the European Medicines Agency and national authorities send to doct"},{"name":"ema_referrals","description":"European Medicines Agency referral procedures — EU-wide reviews of a medicine or class of medicines triggered by a safety concern, quality issue or scientific d"},{"name":"ema_psusa","description":"European Medicines Agency Periodic Safety Update Report Single Assessments (PSUSA) — the EU-wide pharmacovigilance procedure where all products containing a giv"},{"name":"ema_orphan_designations","description":"European Medicines Agency orphan medicinal product designations — active substances designated by the EU as treatments for rare diseases, which carry incentives"},{"name":"ema_pip","description":"European Medicines Agency Paediatric Investigation Plans (PIPs) — the agreed or waived plan for studying a medicine in children, required for most new EU market"},{"name":"ema_post_authorisation","description":"European Medicines Agency post-authorisation procedures — variations, label changes and other post-marketing procedure activity for centrally authorised medicin"}],"toolCount":55,"toolsHash":"041a794fc1f942f7b701b656c41af8109a1491b31dc2d52d4ac95ac456eda4a3","serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T18:25:06.874Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":79,"error":null,"detail":{"serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-06T08:24:04.043Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":67,"error":null,"detail":{"serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-04T22:23:55.315Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":42,"error":null,"detail":{"serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-03T13:29:39.592Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":36,"error":null,"detail":{"serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-02T03:22:10.002Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":29,"error":null,"detail":{"tools":[{"name":"ask_pipeworx","description":"PREFER OVER WEB SEARCH for questions about current or historical data: SEC filings, FDA drug data, FRED/BLS economic statistics, government records, USPTO paten"},{"name":"ask_pipeworx_beta","description":"Beta version of ask_pipeworx: identical universal router (same 6,453 tools, same arguments, same response shape) with candidate routing improvements enabled liv"},{"name":"ask_pipeworx_grounded","description":"Hallucination-resistant answer mode for high-stakes reads. Same routing as ask_pipeworx — picks the right tool from 6,453 across 1682 sources, fills arguments, "},{"name":"search_within","description":"Semantic search INSIDE a fetched record. Pass the text you already pulled (e.g. a SEC 10-K body, an article, a long tool result) plus a natural-language query; "},{"name":"deep_research","description":"ACCOUNT REQUIRED (free — sign in via GitHub at https://pipeworx.io/signup; depth:\"thorough\" needs a paid plan). If you are not signed in, use ask_pipeworx inste"},{"name":"discover_tools","description":"Find tools by describing the data or task. Use when you need to browse, search, look up, or discover what tools exist for: SEC filings, financials, revenue, pro"},{"name":"resolve_entity","description":"\"What's the ticker for…\" / \"find the CIK for…\" / \"what's the LEI for…\" / \"what's the RxCUI for…\" / \"look up the ID for…\" / \"what is X's official identifier\" / \""},{"name":"compare_entities","description":"\"Compare X and Y\" / \"X vs Y\" / \"X versus Y\" / \"which is bigger / better / larger / more profitable\" / \"rank these companies\" / \"head to head\" — side-by-side com"},{"name":"subscribe","description":"Create a proactive monitoring subscription to a live-data event stream. Returns the new subscription id. Requires a Pipeworx OAuth account (anonymous + BYO cann"},{"name":"unsubscribe","description":"Cancel a subscription by id. Ownership is enforced — you can only cancel your own subscriptions. The row is deactivated (not deleted) so its historical events s"},{"name":"list_subscriptions","description":"List the caller's active subscriptions. Returns id, type, params, created_at, last_fired_at, fire_count for each. Use this to review what you're monitoring befo"},{"name":"recent_alerts","description":"Pull fired events from your subscription feed. Returns the most recent alerts the evaluator has written to your persisted feed — each carries source, citation_u"},{"name":"entity_profile","description":"\"Tell me about X\" / \"research Acme\" / \"brief me on Tesla\" / \"what does Apple do\" / \"company profile for Microsoft\" / \"give me the rundown on NVDA\" / \"everything"},{"name":"recent_changes","description":"\"What's new with X\" / \"latest on Y\" / \"what happened to Z this week / month / quarter\" / \"updates on Acme\" / \"news on Tesla recently\" / \"what's happening with A"},{"name":"validate_claim","description":"\"Is it true that…\" / \"fact check\" / \"verify the claim that…\" / \"did X really…\" / \"was Y actually…\" / \"confirm or refute\" / \"true or false\" — natural-language cl"},{"name":"company_facts","description":"TYPED, DETERMINISTIC financial facts for a US public company for an EXPLICITLY NAMED reporting period — \"Apple revenue for fiscal 2023\", \"Walmart net income FY2"},{"name":"scan_dependency","description":"Composite \"should I add this npm package to my project\" check in ONE call — fans out across deps.dev (license + advisories + version history) and bundlephobia ("},{"name":"bet_research","description":"Research a Polymarket bet by pulling the relevant Pipeworx data for it in one call. Pass a market slug (\"will-kristi-noem-win-the-2028-republican-presidential-n"},{"name":"polymarket_arbitrage","description":"Find arbitrage opportunities on Polymarket via monotonicity violations + partition-sum checks. Call with NO args for a `trending_scan` of the top ~200 markets b"},{"name":"polymarket_edges","description":"Scan top Polymarket markets and return opportunities where Pipeworx data disagrees with market price. Built for \"what should I bet on today\" — agents discover o"},{"name":"polymarket_kalshi_spread","description":"Cross-venue spread between Kalshi and Polymarket for the same resolving question. The two venues sometimes price the same outcome 2-25pp apart because their par"},{"name":"polymarket_fill_risk","description":"Realizable-vs-theoretical edge check against live CLOB order-book depth. REQUIRES one of `market` (single-market mode) or `event` (basket/partition mode). SINGL"},{"name":"polymarket_edge_tracker","description":"Edge persistence and decay telemetry built from daily polymarket_edges snapshots. Answers \"how long has this edge existed and is it shrinking?\" — a fresh wide e"},{"name":"kalshi_weather_edge","description":"Prices Kalshi daily high-temperature markets against the NWS forecast for the market's OWN settlement station, and measures whether that forecast actually beats"},{"name":"resolution_audit","description":"Extract the settlement clause of a single Polymarket or Kalshi market: who publishes the settling number (source), the clock time + timezone it is taken at, the"},{"name":"resolution_diff","description":"Field-by-field diff of TWO markets' settlement clauses (one from each of `a` and `b`; either can be Polymarket or Kalshi) — runs resolution_audit on both sides "},{"name":"release_calendar_markets","description":"JOIN of the official release calendar (econ data, the FOMC, FDA decisions, SEC rules) against LIVE Polymarket/Kalshi markets — which scheduled releases land in "},{"name":"pipeworx_trending","description":"What other AI agents are calling on Pipeworx right now. Returns the top tools, top packs, and total call volume over a recent window (24h, 7d, or 30d). Useful f"},{"name":"suggest_questions","description":"What can I ask Pipeworx? / what is Pipeworx good for? / what can you do? / give me ideas / show me examples / getting started / what data do you have? — the onb"},{"name":"generate_llms_txt","description":"Generate a production-ready llms.txt file for any URL so AI crawlers (ChatGPT, Claude, Perplexity) can index the site cleanly. Fetches the page, extracts title/"},{"name":"ai_visibility_check","description":"Probe one or more LLMs for what they know about a business / brand / product / topic and score visibility (0-100) per model. Default model is Workers AI Llama-3"},{"name":"scan_competitor_ai_presence","description":"Compare AI visibility across multiple entities side-by-side. Probes each entity (your brand + N competitors) with ai_visibility_check, ranks by score, surfaces "},{"name":"pipeworx_feedback","description":"Tell the Pipeworx team something is broken, missing, or needs to exist. Use when a tool returns wrong/stale data (bug), when a tool you wish existed isn't in th"},{"name":"remember","description":"Save data the agent will need to reuse later — across this conversation or across sessions. Use when you discover something worth carrying forward (a resolved t"},{"name":"recall","description":"Retrieve a value previously saved via remember, or list all saved keys (omit the key argument). Use to look up context the agent stored earlier — the user's tar"},{"name":"forget","description":"Delete a previously stored memory by key. Use when context is stale, the task is done, or you want to clear sensitive data the agent saved earlier. Pair with re"},{"name":"ema_recent_approvals","description":"New medicines authorised for the European Union market by the European Medicines Agency, in a date window. Returns brand name, active substance / INN, therapeut"},{"name":"ema_chmp_opinions","description":"Medicines the EMA committees (CHMP for human medicines, CVMP for veterinary) have recommended for or against EU approval, still awaiting the European Commission"},{"name":"ema_medicine_search","description":"Search the European Medicines Agency register of centrally authorised medicines by brand name, active substance or INN, therapeutic area, indication text, ATC c"},{"name":"ema_medicine","description":"Full European Medicines Agency record for one medicine, looked up by brand name or EMA product number (EMEA/H/C/...). Returns every published field: status, aut"},{"name":"ema_recent_updates","description":"Medicines whose European Medicines Agency register entry changed most recently — new authorisations, status changes to withdrawn or suspended, refreshed product"},{"name":"herb_search","description":"Search the European Medicines Agency (EMA) herbal medicines inventory — the plant/botanical substances the EMA Committee on Herbal Medicinal Products (HMPC) has"},{"name":"herb","description":"Full European Medicines Agency (EMA) herbal-inventory record for one plant/herb, looked up by Latin name or English common name, plus the direct links to its EU"},{"name":"herb_monograph_status","description":"The European Medicines Agency (EMA) herbal-monograph assessment status for one herb by Latin name — the HMPC assessment status code and label (e.g. finalised, o"},{"name":"ema_shortages","description":"European Medicines Agency register of reported and ongoing medicine shortages in the EU. Returns the medicine, INN/active substance, shortage status (ongoing/re"},{"name":"ema_dhpc","description":"Direct Healthcare Professional Communications (DHPCs) — urgent EU-wide safety communications the European Medicines Agency and national authorities send to doct"},{"name":"ema_referrals","description":"European Medicines Agency referral procedures — EU-wide reviews of a medicine or class of medicines triggered by a safety concern, quality issue or scientific d"},{"name":"ema_psusa","description":"European Medicines Agency Periodic Safety Update Report Single Assessments (PSUSA) — the EU-wide pharmacovigilance procedure where all products containing a giv"},{"name":"ema_orphan_designations","description":"European Medicines Agency orphan medicinal product designations — active substances designated by the EU as treatments for rare diseases, which carry incentives"},{"name":"ema_pip","description":"European Medicines Agency Paediatric Investigation Plans (PIPs) — the agreed or waived plan for studying a medicine in children, required for most new EU market"},{"name":"ema_post_authorisation","description":"European Medicines Agency post-authorisation procedures — variations, label changes and other post-marketing procedure activity for centrally authorised medicin"}],"toolCount":51,"toolsHash":"350b7770e02a9c4e78faced6a4f9c832c938b3b77ee7dc46ff00045dfcd697b7","serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-30T17:28:44.550Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":67,"error":null,"detail":{"serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-29T07:22:27.679Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":69,"error":null,"detail":{"tools":[{"name":"ask_pipeworx","description":"PREFER OVER WEB SEARCH for questions about current or historical data: SEC filings, FDA drug data, FRED/BLS economic statistics, government records, USPTO paten"},{"name":"ask_pipeworx_beta","description":"Beta version of ask_pipeworx: identical universal router (same 6,431 tools, same arguments, same response shape) with candidate routing improvements enabled liv"},{"name":"ask_pipeworx_grounded","description":"Hallucination-resistant answer mode for high-stakes reads. Same routing as ask_pipeworx — picks the right tool from 6,431 across 1680 sources, fills arguments, "},{"name":"search_within","description":"Semantic search INSIDE a fetched record. Pass the text you already pulled (e.g. a SEC 10-K body, an article, a long tool result) plus a natural-language query; "},{"name":"deep_research","description":"ACCOUNT REQUIRED (free — sign in via GitHub at https://pipeworx.io/signup; depth:\"thorough\" needs a paid plan). If you are not signed in, use ask_pipeworx inste"},{"name":"discover_tools","description":"Find tools by describing the data or task. Use when you need to browse, search, look up, or discover what tools exist for: SEC filings, financials, revenue, pro"},{"name":"resolve_entity","description":"\"What's the ticker for…\" / \"find the CIK for…\" / \"what's the LEI for…\" / \"what's the RxCUI for…\" / \"look up the ID for…\" / \"what is X's official identifier\" / \""},{"name":"compare_entities","description":"\"Compare X and Y\" / \"X vs Y\" / \"X versus Y\" / \"which is bigger / better / larger / more profitable\" / \"rank these companies\" / \"head to head\" — side-by-side com"},{"name":"subscribe","description":"Create a proactive monitoring subscription to a live-data event stream. Returns the new subscription id. Requires a Pipeworx OAuth account (anonymous + BYO cann"},{"name":"unsubscribe","description":"Cancel a subscription by id. Ownership is enforced — you can only cancel your own subscriptions. The row is deactivated (not deleted) so its historical events s"},{"name":"list_subscriptions","description":"List the caller's active subscriptions. Returns id, type, params, created_at, last_fired_at, fire_count for each. Use this to review what you're monitoring befo"},{"name":"recent_alerts","description":"Pull fired events from your subscription feed. Returns the most recent alerts the evaluator has written to your persisted feed — each carries source, citation_u"},{"name":"entity_profile","description":"\"Tell me about X\" / \"research Acme\" / \"brief me on Tesla\" / \"what does Apple do\" / \"company profile for Microsoft\" / \"give me the rundown on NVDA\" / \"everything"},{"name":"recent_changes","description":"\"What's new with X\" / \"latest on Y\" / \"what happened to Z this week / month / quarter\" / \"updates on Acme\" / \"news on Tesla recently\" / \"what's happening with A"},{"name":"validate_claim","description":"\"Is it true that…\" / \"fact check\" / \"verify the claim that…\" / \"did X really…\" / \"was Y actually…\" / \"confirm or refute\" / \"true or false\" — natural-language cl"},{"name":"company_facts","description":"TYPED, DETERMINISTIC financial facts for a US public company for an EXPLICITLY NAMED reporting period — \"Apple revenue for fiscal 2023\", \"Walmart net income FY2"},{"name":"scan_dependency","description":"Composite \"should I add this npm package to my project\" check in ONE call — fans out across deps.dev (license + advisories + version history) and bundlephobia ("},{"name":"bet_research","description":"Research a Polymarket bet by pulling the relevant Pipeworx data for it in one call. Pass a market slug (\"will-kristi-noem-win-the-2028-republican-presidential-n"},{"name":"polymarket_arbitrage","description":"Find arbitrage opportunities on Polymarket via monotonicity violations + partition-sum checks. Call with NO args for a `trending_scan` of the top ~200 markets b"},{"name":"polymarket_edges","description":"Scan top Polymarket markets and return opportunities where Pipeworx data disagrees with market price. Built for \"what should I bet on today\" — agents discover o"},{"name":"polymarket_kalshi_spread","description":"Cross-venue spread between Kalshi and Polymarket for the same resolving question. The two venues sometimes price the same outcome 2-25pp apart because their par"},{"name":"polymarket_fill_risk","description":"Realizable-vs-theoretical edge check against live CLOB order-book depth. REQUIRES one of `market` (single-market mode) or `event` (basket/partition mode). SINGL"},{"name":"polymarket_edge_tracker","description":"Edge persistence and decay telemetry built from daily polymarket_edges snapshots. Answers \"how long has this edge existed and is it shrinking?\" — a fresh wide e"},{"name":"kalshi_weather_edge","description":"Prices Kalshi daily high-temperature markets against the NWS forecast for the market's OWN settlement station, and measures whether that forecast actually beats"},{"name":"resolution_audit","description":"Extract the settlement clause of a single Polymarket or Kalshi market: who publishes the settling number (source), the clock time + timezone it is taken at, the"},{"name":"resolution_diff","description":"Field-by-field diff of TWO markets' settlement clauses (one from each of `a` and `b`; either can be Polymarket or Kalshi) — runs resolution_audit on both sides "},{"name":"release_calendar_markets","description":"JOIN of the official release calendar (econ data, the FOMC, FDA decisions, SEC rules) against LIVE Polymarket/Kalshi markets — which scheduled releases land in "},{"name":"pipeworx_trending","description":"What other AI agents are calling on Pipeworx right now. Returns the top tools, top packs, and total call volume over a recent window (24h, 7d, or 30d). Useful f"},{"name":"suggest_questions","description":"What can I ask Pipeworx? / what is Pipeworx good for? / what can you do? / give me ideas / show me examples / getting started / what data do you have? — the onb"},{"name":"generate_llms_txt","description":"Generate a production-ready llms.txt file for any URL so AI crawlers (ChatGPT, Claude, Perplexity) can index the site cleanly. Fetches the page, extracts title/"},{"name":"ai_visibility_check","description":"Probe one or more LLMs for what they know about a business / brand / product / topic and score visibility (0-100) per model. Default model is Workers AI Llama-3"},{"name":"scan_competitor_ai_presence","description":"Compare AI visibility across multiple entities side-by-side. Probes each entity (your brand + N competitors) with ai_visibility_check, ranks by score, surfaces "},{"name":"pipeworx_feedback","description":"Tell the Pipeworx team something is broken, missing, or needs to exist. Use when a tool returns wrong/stale data (bug), when a tool you wish existed isn't in th"},{"name":"remember","description":"Save data the agent will need to reuse later — across this conversation or across sessions. Use when you discover something worth carrying forward (a resolved t"},{"name":"recall","description":"Retrieve a value previously saved via remember, or list all saved keys (omit the key argument). Use to look up context the agent stored earlier — the user's tar"},{"name":"forget","description":"Delete a previously stored memory by key. Use when context is stale, the task is done, or you want to clear sensitive data the agent saved earlier. Pair with re"},{"name":"ema_recent_approvals","description":"New medicines authorised for the European Union market by the European Medicines Agency, in a date window. Returns brand name, active substance / INN, therapeut"},{"name":"ema_chmp_opinions","description":"Medicines the EMA committees (CHMP for human medicines, CVMP for veterinary) have recommended for or against EU approval, still awaiting the European Commission"},{"name":"ema_medicine_search","description":"Search the European Medicines Agency register of centrally authorised medicines by brand name, active substance or INN, therapeutic area, indication text, ATC c"},{"name":"ema_medicine","description":"Full European Medicines Agency record for one medicine, looked up by brand name or EMA product number (EMEA/H/C/...). Returns every published field: status, aut"},{"name":"ema_recent_updates","description":"Medicines whose European Medicines Agency register entry changed most recently — new authorisations, status changes to withdrawn or suspended, refreshed product"},{"name":"herb_search","description":"Search the European Medicines Agency (EMA) herbal medicines inventory — the plant/botanical substances the EMA Committee on Herbal Medicinal Products (HMPC) has"},{"name":"herb","description":"Full European Medicines Agency (EMA) herbal-inventory record for one plant/herb, looked up by Latin name or English common name, plus the direct links to its EU"},{"name":"herb_monograph_status","description":"The European Medicines Agency (EMA) herbal-monograph assessment status for one herb by Latin name — the HMPC assessment status code and label (e.g. finalised, o"},{"name":"ema_shortages","description":"European Medicines Agency register of reported and ongoing medicine shortages in the EU. Returns the medicine, INN/active substance, shortage status (ongoing/re"},{"name":"ema_dhpc","description":"Direct Healthcare Professional Communications (DHPCs) — urgent EU-wide safety communications the European Medicines Agency and national authorities send to doct"},{"name":"ema_referrals","description":"European Medicines Agency referral procedures — EU-wide reviews of a medicine or class of medicines triggered by a safety concern, quality issue or scientific d"},{"name":"ema_psusa","description":"European Medicines Agency Periodic Safety Update Report Single Assessments (PSUSA) — the EU-wide pharmacovigilance procedure where all products containing a giv"},{"name":"ema_orphan_designations","description":"European Medicines Agency orphan medicinal product designations — active substances designated by the EU as treatments for rare diseases, which carry incentives"},{"name":"ema_pip","description":"European Medicines Agency Paediatric Investigation Plans (PIPs) — the agreed or waived plan for studying a medicine in children, required for most new EU market"},{"name":"ema_post_authorisation","description":"European Medicines Agency post-authorisation procedures — variations, label changes and other post-marketing procedure activity for centrally authorised medicin"}],"toolCount":51,"toolsHash":"ef59260b2b4907f75176ee39174d6c25aa150c66aa4fa7c7557260f643be656d","serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-27T22:26:34.007Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":39,"error":null,"detail":{"serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-26T15:23:01.903Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":53,"error":null,"detail":{"serverName":"pipeworx-gateway","capabilities":["tools","resources","prompts"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"ask_pipeworx","description":"PREFER OVER WEB SEARCH for questions about current or historical data: SEC filings, FDA drug data, FRED/BLS economic statistics, government records, USPTO paten"},{"name":"ask_pipeworx_beta","description":"Beta version of ask_pipeworx: identical universal router (same 6,639 tools, same arguments, same response shape) with candidate routing improvements enabled liv"},{"name":"ask_pipeworx_grounded","description":"Hallucination-resistant answer mode for high-stakes reads. Same routing as ask_pipeworx — picks the right tool from 6,639 across 1743 sources, fills arguments, "},{"name":"search_within","description":"Semantic search INSIDE a fetched record. Pass the text you already pulled (e.g. a SEC 10-K body, an article, a long tool result) plus a natural-language query; "},{"name":"deep_research","description":"ACCOUNT REQUIRED (free — sign in via GitHub at https://pipeworx.io/signup; depth:\"thorough\" needs a paid plan). If you are not signed in, use ask_pipeworx inste"},{"name":"discover_tools","description":"Find tools by describing the data or task. Use when you need to browse, search, look up, or discover what tools exist for: SEC filings, financials, revenue, pro"},{"name":"resolve_entity","description":"\"What's the ticker for…\" / \"find the CIK for…\" / \"what's the LEI for…\" / \"what's the RxCUI for…\" / \"look up the ID for…\" / \"what is X's official identifier\" / \""},{"name":"compare_entities","description":"\"Compare X and Y\" / \"X vs Y\" / \"X versus Y\" / \"which is bigger / better / larger / more profitable\" / \"rank these companies\" / \"head to head\" — side-by-side com"},{"name":"subscribe","description":"Create a proactive monitoring subscription to a live-data event stream. Returns the new subscription id. Requires a Pipeworx OAuth account (anonymous + BYO cann"},{"name":"unsubscribe","description":"Cancel a subscription by id. Ownership is enforced — you can only cancel your own subscriptions. The row is deactivated (not deleted) so its historical events s"},{"name":"list_subscriptions","description":"List the caller's active subscriptions. Returns id, type, params, created_at, last_fired_at, fire_count for each. Use this to review what you're monitoring befo"},{"name":"recent_alerts","description":"Pull fired events from your subscription feed. Returns the most recent alerts the evaluator has written to your persisted feed — each carries source, citation_u"},{"name":"entity_profile","description":"\"Tell me about X\" / \"research Acme\" / \"brief me on Tesla\" / \"what does Apple do\" / \"company profile for Microsoft\" / \"give me the rundown on NVDA\" / \"everything"},{"name":"recent_changes","description":"\"What's new with X\" / \"latest on Y\" / \"what happened to Z this week / month / quarter\" / \"updates on Acme\" / \"news on Tesla recently\" / \"what's happening with A"},{"name":"validate_claim","description":"\"Is it true that…\" / \"fact check\" / \"verify the claim that…\" / \"did X really…\" / \"was Y actually…\" / \"confirm or refute\" / \"true or false\" — natural-language cl"},{"name":"company_facts","description":"TYPED, DETERMINISTIC financial facts for a US public company for an EXPLICITLY NAMED reporting period — \"Apple revenue for fiscal 2023\", \"Walmart net income FY2"},{"name":"scan_dependency","description":"Composite \"should I add this npm package to my project\" check in ONE call — fans out across deps.dev (license + advisories + version history) and bundlephobia ("},{"name":"bet_research","description":"Research a Polymarket bet by pulling the relevant Pipeworx data for it in one call. Pass a market slug (\"will-kristi-noem-win-the-2028-republican-presidential-n"},{"name":"polymarket_arbitrage","description":"Find arbitrage opportunities on Polymarket via monotonicity violations + partition-sum checks. Call with NO args for a `trending_scan` of the top ~200 markets b"},{"name":"polymarket_edges","description":"Scan top Polymarket markets and return opportunities where Pipeworx data disagrees with market price. Built for \"what should I bet on today\" — agents discover o"},{"name":"polymarket_kalshi_spread","description":"Cross-venue spread between Kalshi and Polymarket for the same resolving question. The two venues sometimes price the same outcome 2-25pp apart because their par"},{"name":"polymarket_fill_risk","description":"Realizable-vs-theoretical edge check against live CLOB order-book depth. REQUIRES one of `market` (single-market mode) or `event` (basket/partition mode). SINGL"},{"name":"polymarket_edge_tracker","description":"Edge persistence and decay telemetry built from daily polymarket_edges snapshots. Answers \"how long has this edge existed and is it shrinking?\" — a fresh wide e"},{"name":"kalshi_weather_edge","description":"Prices Kalshi daily high-temperature markets against the NWS forecast for the market's OWN settlement station, and measures whether that forecast actually beats"},{"name":"resolution_audit","description":"Extract the settlement clause of a single Polymarket or Kalshi market: who publishes the settling number (source), the clock time + timezone it is taken at, the"},{"name":"resolution_diff","description":"Field-by-field diff of TWO markets' settlement clauses (one from each of `a` and `b`; either can be Polymarket or Kalshi) — runs resolution_audit on both sides "},{"name":"release_calendar_markets","description":"JOIN of the official release calendar (econ data, the FOMC, FDA decisions, SEC rules) against LIVE Polymarket/Kalshi markets — which scheduled releases land in "},{"name":"archive_evidence","description":"What did a web page say on a given date? Finds the archived capture of a URL nearest that date across the Internet Archive Wayback Machine, Common Crawl and Arq"},{"name":"archive_compare","description":"What changed on a web page between two dates? Resolves the archived capture nearest each date (Internet Archive Wayback Machine, Common Crawl, Arquivo.pt), extr"},{"name":"research_row","description":"Claygent-style per-row research: answer ONE question about ONE company and return a JSON object matching your output_schema, with every field wrapped in its own"},{"name":"classify_row","description":"Cheap categorization: given a company and a list of candidate labels, decide which labels apply — the most common GTM/AI usage shape (tagging a list by industry"},{"name":"pipeworx_trending","description":"What other AI agents are calling on Pipeworx right now. Returns the top tools, top packs, and total call volume over a recent window (24h, 7d, or 30d). Useful f"},{"name":"suggest_questions","description":"What can I ask Pipeworx? / what is Pipeworx good for? / what can you do? / give me ideas / show me examples / getting started / what data do you have? — the onb"},{"name":"generate_llms_txt","description":"Generate a production-ready llms.txt file for any URL so AI crawlers (ChatGPT, Claude, Perplexity) can index the site cleanly. Fetches the page, extracts title/"},{"name":"ai_visibility_check","description":"Probe one or more LLMs for what they know about a business / brand / product / topic and score visibility (0-100) per model. Default model is Workers AI Llama-3"},{"name":"scan_competitor_ai_presence","description":"Compare AI visibility across multiple entities side-by-side. Probes each entity (your brand + N competitors) with ai_visibility_check, ranks by score, surfaces "},{"name":"pipeworx_feedback","description":"Tell the Pipeworx team something is broken, missing, or needs to exist. Use when a tool returns wrong/stale data (bug), when a tool you wish existed isn't in th"},{"name":"remember","description":"Save data the agent will need to reuse later — across this conversation or across sessions. Use when you discover something worth carrying forward (a resolved t"},{"name":"recall","description":"Retrieve a value previously saved via remember, or list all saved keys (omit the key argument). Use to look up context the agent stored earlier — the user's tar"},{"name":"forget","description":"Delete a previously stored memory by key. Use when context is stale, the task is done, or you want to clear sensitive data the agent saved earlier. Pair with re"},{"name":"ema_recent_approvals","description":"New medicines authorised for the European Union market by the European Medicines Agency, in a date window. Returns brand name, active substance / INN, therapeut"},{"name":"ema_chmp_opinions","description":"Medicines the EMA committees (CHMP for human medicines, CVMP for veterinary) have recommended for or against EU approval, still awaiting the European Commission"},{"name":"ema_medicine_search","description":"Search the European Medicines Agency register of centrally authorised medicines by brand name, active substance or INN, therapeutic area, indication text, ATC c"},{"name":"ema_medicine","description":"Full European Medicines Agency record for one medicine, looked up by brand name or EMA product number (EMEA/H/C/...). Returns every published field: status, aut"},{"name":"ema_recent_updates","description":"Medicines whose European Medicines Agency register entry changed most recently — new authorisations, status changes to withdrawn or suspended, refreshed product"},{"name":"herb_search","description":"Search the European Medicines Agency (EMA) herbal medicines inventory — the plant/botanical substances the EMA Committee on Herbal Medicinal Products (HMPC) has"},{"name":"herb","description":"Full European Medicines Agency (EMA) herbal-inventory record for one plant/herb, looked up by Latin name or English common name, plus the direct links to its EU"},{"name":"herb_monograph_status","description":"The European Medicines Agency (EMA) herbal-monograph assessment status for one herb by Latin name — the HMPC assessment status code and label (e.g. finalised, o"},{"name":"ema_shortages","description":"European Medicines Agency register of reported and ongoing medicine shortages in the EU. Returns the medicine, INN/active substance, shortage status (ongoing/re"},{"name":"ema_dhpc","description":"Direct Healthcare Professional Communications (DHPCs) — urgent EU-wide safety communications the European Medicines Agency and national authorities send to doct"},{"name":"ema_referrals","description":"European Medicines Agency referral procedures — EU-wide reviews of a medicine or class of medicines triggered by a safety concern, quality issue or scientific d"},{"name":"ema_psusa","description":"European Medicines Agency Periodic Safety Update Report Single Assessments (PSUSA) — the EU-wide pharmacovigilance procedure where all products containing a giv"},{"name":"ema_orphan_designations","description":"European Medicines Agency orphan medicinal product designations — active substances designated by the EU as treatments for rare diseases, which carry incentives"},{"name":"ema_pip","description":"European Medicines Agency Paediatric Investigation Plans (PIPs) — the agreed or waived plan for studying a medicine in children, required for most new EU market"},{"name":"ema_post_authorisation","description":"European Medicines Agency post-authorisation procedures — variations, label changes and other post-marketing procedure activity for centrally authorised medicin"}],"package":{"name":"@pipeworx/mcp-ema-medicines","registry":"npm","observedAt":"2026-10-09T22:20:10.727Z","publishedAt":"2026-09-25T23:45:26.765Z","latestVersion":"0.2.2","weeklyDownloads":249},"toolSurface":{"id":"ts_qegn2vufyfv4","endpointId":"ep_caekrvrkjeaa","hash":"041a794fc1f942f7b701b656c41af8109a1491b31dc2d52d4ac95ac456eda4a3","toolCount":55,"serverName":"pipeworx-gateway","serverVersion":"0.1.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-09T05:24:56.361Z","lastSeenAt":"2026-10-09T05:24:56.361Z","observations":1,"toolNames":["ask_pipeworx","ask_pipeworx_beta","ask_pipeworx_grounded","search_within","deep_research","discover_tools","resolve_entity","compare_entities","subscribe","unsubscribe","list_subscriptions","recent_alerts","entity_profile","recent_changes","validate_claim","company_facts","scan_dependency","bet_research","polymarket_arbitrage","polymarket_edges","polymarket_kalshi_spread","polymarket_fill_risk","polymarket_edge_tracker","kalshi_weather_edge","resolution_audit","resolution_diff","release_calendar_markets","archive_evidence","archive_compare","research_row","classify_row","pipeworx_trending","suggest_questions","generate_llms_txt","ai_visibility_check","scan_competitor_ai_presence","pipeworx_feedback","remember","recall","forget","ema_recent_approvals","ema_chmp_opinions","ema_medicine_search","ema_medicine","ema_recent_updates","herb_search","herb","herb_monograph_status","ema_shortages","ema_dhpc","ema_referrals","ema_psusa","ema_orphan_designations","ema_pip","ema_post_authorisation"],"distinctSurfaces":7},"endpointFacts":[{"id":"ep_caekrvrkjeaa","url":"https://gateway.pipeworx.io/ema-medicines/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-09T05:24:56.425Z","auth":{"observedAt":"2026-10-09T05:24:56.442Z","authRequired":false,"scheme":null,"resourceMetadata":{"url":"https://gateway.pipeworx.io/.well-known/oauth-protected-resource/ema-medicines/mcp","resource":"https://gateway.pipeworx.io/ema-medicines/mcp","authorizationServers":["https://gateway.pipeworx.io"],"scopesSupported":["pipeworx:read"]},"authorizationServer":{"url":"https://gateway.pipeworx.io/.well-known/oauth-authorization-server","issuer":"https://gateway.pipeworx.io","grantTypesSupported":["authorization_code","refresh_token"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["none","client_secret_post","client_secret_basic"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":true},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":true,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-09T05:24:56.453Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"pipeworx.io","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-19T01:57:25.000Z","validTo":"2026-12-18T02:57:05.000Z","daysToExpiry":68,"sanCount":3,"fingerprint256":"F8:33:DA:2D:BF:C0:5B:07:A6:43:56:70:94:C1:0B:D3:F3:B3:28:1A:2C:54:20:9B:B7:7E:5C:68:A5:FF:66:D4"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"npm","key":"@pipeworx/mcp-ema-medicines","url":"https://www.npmjs.com/package/@pipeworx/mcp-ema-medicines","firstSeenAt":"2026-09-26T13:18:04.574Z","fetchedAt":"2026-10-09T22:19:41.625Z","normalizedAt":"2026-10-09T22:19:41.625Z"},{"source":"mcp_registry","key":"io.github.pipeworx-io/ema-medicines","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.pipeworx-io%2Fema-medicines","firstSeenAt":"2026-09-17T08:18:44.188Z","fetchedAt":"2026-10-08T00:19:32.224Z","normalizedAt":"2026-10-08T00:19:32.224Z"}]},"firstSeenAt":"2026-09-17T08:18:44.188Z","updatedAt":"2026-10-09T22:20:10.727Z"}