accueil / serveurs / Recherche & Web / dev.oassis/web
dev.oassis/web
serveur MCP (Model Context Protocol) · oassis-api 0.1.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que dev.oassis/web est sûr ?
Au dernier audit MCP Hub, le serveur MCP « dev.oassis/web » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 11 outils
- web_act≈ 440 tokens
Runs actions against an open session and returns the resulting state. Actions: {navigate}, {click:{ref}}, {type:{ref,text,clear}}, {select:{ref,value}}, {press}, {scroll}, {wait}, {back}. The `ref` is the one `controls` gave you. It stops at the first failure and tells you where. $0.0005 per action.
Paramètres, retour & exemple (8)
Paramètresurl· string · optionnel
Page to process.json· object · optionnel
For the `json` format: `prompt` and/or `schema`.wait· object · optionnel
When to consider the page loaded: `until`, `selector`, `timeout`.maxAge· number · optionnel
Accept an answer up to this many milliseconds old. A cache hit costs $0.0002 instead of the format price. Leave it out to force a fresh render.actions· array · requis
Actions, in order.formats· array · optionnel
Outputs you want in the same response. `controls` is the map of what can be clicked; `elements` needs `selectors`; `json` needs `json.prompt`.selectors· array · optionnel
CSS selectors for `elements`.sessionId· string · requis
The one web_session_open returned.
Exemple d'appel{"name": "web_act", "arguments": {"actions": [], "sessionId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_batch_status≈ 118 tokens
Checks a batch of scrapes: status, how many are done, and the results. Free. Pass `cancel: true` to stop it and get the urls it never read refunded.
Paramètres, retour & exemple (3)
ParamètresjobId· string · requislimit· number · optionnel
Results to return (default 50).cancel· boolean · optionnel
Stop the batch and refund what it did not read.
Exemple d'appel{"name": "web_batch_status", "arguments": {"jobId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_crawl≈ 322 tokens
Follows a site's links and reads every page. Returns a jobId; poll it with web_crawl_status. Charged up front for the pages it is allowed to read (`limit`), and the pages it never reads are refunded. Use web_map first if you only need the urls.
Paramètres, retour & exemple (8)
Paramètresurl· string · requis
Where to start.limit· number · optionnel
Pages it may read (default 25, max 200).maxAge· number · optionnel
Accept an answer up to this many milliseconds old. A cache hit costs $0.0002 instead of the format price. Leave it out to force a fresh render.formats· array · optionnel
Outputs you want in the same response. `controls` is the map of what can be clicked; `elements` needs `selectors`; `json` needs `json.prompt`.maxDepth· number · optionnel
How far to follow links (default 2, max 5).excludePaths· array · optionnelincludePaths· array · optionnelincludeSubdomains· boolean · optionnel
Exemple d'appel{"name": "web_crawl", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_crawl_status≈ 122 tokens
Checks a crawl: status, pages read, discovered and still queued, and the pages themselves. Free. Pass `cancel: true` to stop it and get the unread pages refunded.
Paramètres, retour & exemple (3)
ParamètresjobId· string · requislimit· number · optionnel
Pages to return (default 50).cancel· boolean · optionnel
Stop the crawl and refund what it did not read.
Exemple d'appel{"name": "web_crawl_status", "arguments": {"jobId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_feedback≈ 210 tokens
Tell us an answer was good or bad. FREE. Use it when a result is wrong — empty markdown, a control map missing a button, data that does not match the page — with the url or the jobId so it can be reproduced. It is the only way we learn that we read a page badly: our logs cannot tell that apart from a page that is simply like that.
Paramètres, retour & exemple (5)
Paramètresurl· string · optionnel
The page that came out wrong.route· string · optionnel
Which tool or endpoint it is about.comment· string · optionnel
What you expected and what you got.verdict· string · requis · good | badreference· string · optionnel
The jobId or sessionId it happened on.
Exemple d'appel{"name": "web_feedback", "arguments": {"verdict": "good"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_map≈ 213 tokens
Every url of a site, fast and cheap: its sitemap plus, optionally, the links on the page. Use it BEFORE crawling, to see what is there and decide what is worth reading. $0.0003 with `includePage: false` (no browser at all), $0.0015 with the page.
Paramètres, retour & exemple (7)
Paramètresurl· string · requis
The site to map.limit· number · optionnel
Urls to return (default 1000, max 5000).search· string · optionnel
Keep only urls containing this text.includePage· boolean · optionnel
Render the page too (default true).excludePaths· array · optionnelincludePaths· array · optionnelincludeSubdomains· boolean · optionnel
Exemple d'appel{"name": "web_map", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_scrape≈ 432 tokens
Processes a page and returns every output you ask for at once: markdown, html, links, screenshot, PDF, accessibility tree, elements by selector, AI-structured data, and `controls` (what can be clicked). One call, and a partial failure does not void the rest. From $0.001 per output. A url pointing at a PDF, Word, Excel or CSV file is converted to markdown instead, with no browser, for $0.002.
Paramètres, retour & exemple (7)
Paramètresurl· string · optionnel
Page to process.html· string · optionnel
Raw HTML instead of `url`.json· object · optionnel
For the `json` format: `prompt` and/or `schema`.wait· object · optionnel
When to consider the page loaded: `until`, `selector`, `timeout`.maxAge· number · optionnel
Accept an answer up to this many milliseconds old. A cache hit costs $0.0002 instead of the format price. Leave it out to force a fresh render.formats· array · optionnel
Outputs you want in the same response. `controls` is the map of what can be clicked; `elements` needs `selectors`; `json` needs `json.prompt`.selectors· array · optionnel
CSS selectors for `elements`.
Exemple d'appel{"name": "web_scrape", "arguments": {"url": "texte", "html": "texte", "json": {}, "wait": {}, "maxAge": 1, "formats": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_scrape_batch≈ 405 tokens
A batch OF SCRAPES: reads a list of urls YOU give it (2 to 50, from any sites) and returns a jobId. It discovers nothing on its own — for that use web_crawl. Charged up front per url; urls that fail and urls served from the cache are refunded. Poll it with web_batch_status.
Paramètres, retour & exemple (6)
Paramètresjson· object · optionnel
For the `json` format: `prompt` and/or `schema`.urls· array · requis
The urls to read, 2 to 50. They do not have to share a site.wait· object · optionnel
When to consider the page loaded: `until`, `selector`, `timeout`.maxAge· number · optionnel
Accept an answer up to this many milliseconds old. A cache hit costs $0.0002 instead of the format price. Leave it out to force a fresh render.formats· array · optionnel
Outputs you want in the same response. `controls` is the map of what can be clicked; `elements` needs `selectors`; `json` needs `json.prompt`.selectors· array · optionnel
CSS selectors for `elements`.
Exemple d'appel{"name": "web_scrape_batch", "arguments": {"urls": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_search_exa≈ 252 tokens
Search the web with Exa's index: a query instead of a url, for when you do not know where to look. Returns title, url and a snippet per result. To read the pages, pass the urls to web_scrape_batch. The engine is named because the price is Exa's, passed through with no markup and read from its own payment challenge on every call — today $0.007 per search.
Paramètres, retour & exemple (6)
Paramètreslimit· number · optionnel
Results (default 10, max 50).query· string · requis
What to search for.since· string · optionnel
Only results published after this ISO date.domains· array · optionnel
Only these domains.snippets· boolean · optionnel
Text alongside each result (default true).excludeDomains· array · optionnel
Never these domains.
Exemple d'appel{"name": "web_search_exa", "arguments": {"query": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_session_close≈ 70 tokens
Closes a session and stops billing browser time. Free. If you do not close it, it closes itself after a minute without use.
Paramètres, retour & exemple (1)
ParamètressessionId· string · requis
Exemple d'appel{"name": "web_session_close", "arguments": {"sessionId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - web_session_open≈ 396 tokens
Opens a browser on a page and leaves it open, returning the map of controls. Use it when something has to be FILLED IN or CLICKED, not just read: inside the session the `controls` references keep working and you can act on the same state. $0.005 plus the outputs. Close it with web_session_close when you are done.
Paramètres, retour & exemple (6)
Paramètresurl· string · requis
Page to process.json· object · optionnel
For the `json` format: `prompt` and/or `schema`.wait· object · optionnel
When to consider the page loaded: `until`, `selector`, `timeout`.maxAge· number · optionnel
Accept an answer up to this many milliseconds old. A cache hit costs $0.0002 instead of the format price. Leave it out to force a fresh render.formats· array · optionnel
Outputs you want in the same response. `controls` is the map of what can be clicked; `elements` needs `selectors`; `json` needs `json.prompt`.selectors· array · optionnel
CSS selectors for `elements`.
Exemple d'appel{"name": "web_session_open", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».