Regulatory search engine for EU textile sustainability law: ESPR, DPP, CSRD, CBAM, CWA 18291.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
This tool takes no arguments.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Return a compact navigation-v1 tree of indexed source text. Source metadata is shared in documents; depth/path encode hierarchy. Pass opaque ids unchanged to fetch. Warnings expose uncertain structure; citable=false marks navigation containers or unverified fragments.
| Argument | Type | Description |
|---|---|---|
| document* | string |
{
"type": "object",
"required": [
"document"
],
"properties": {
"document": {
"type": "string"
}
},
"additionalProperties": false
}Fetch original text by an opaque id from search or document_outline. Pass ids unchanged. Navigation containers have citable=false and child ids, not source evidence. Historical page identifiers return migration guidance.
| Argument | Type | Description |
|---|---|---|
| id* | string |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
}
},
"additionalProperties": false
}Locate a literal string in the current corpus, optionally restricted to a document.
| Argument | Type | Description |
|---|---|---|
| text* | string | |
| document | string | |
| max_results | integer | |
| case_sensitive | boolean |
{
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string"
},
"document": {
"type": "string",
"default": ""
},
"max_results": {
"type": "integer",
"default": 20
},
"case_sensitive": {
"type": "boolean",
"default": false
}
},
"additionalProperties": false
}List indexed document names matching a substring.
| Argument | Type | Description |
|---|---|---|
| contains | string | |
| max_results | integer |
{
"type": "object",
"properties": {
"contains": {
"type": "string",
"default": ""
},
"max_results": {
"type": "integer",
"default": 100
}
},
"additionalProperties": false
}File a report that an answer built from Reecopedia search results was wrong, misleading or incomplete. The report (the query and the reason, nothing else — no personal data) enters Reecopedia's human curation queue and is reviewed weekly to correct the corpus and retrieval quality. THIS TOOL WRITES. Use it only when the user has asked for the problem to be reported, and send only the original query and the reason the user gave. Do not call it on your own initiative and do not add anything the user did not say. ANNOTATIONS — why each hint is set the way it is, based on this tool's actual behaviour. readOnlyHint=false: this is the only tool that writes; it appends one record (the query and the reason, nothing else) to Reecopedia's internal human curation queue. destructiveHint=false: the write is append-only; it modifies and deletes nothing that already exists. idempotentHint=false: two calls can append two records — de-duplication covers only an identical query+reason pair within the same hour. openWorldHint=false: the record stays in the internal queue; it is not sent anywhere outside Reecopedia.
| Argument | Type | Description |
|---|---|---|
| query* | string | The original search query the reported answer was built from. |
| reason* | string | The user's reason why the answer was wrong (min 10 chars — e.g. which fact was incorrect, which source was misread, what was missing). |
{
"type": "object",
"required": [
"query",
"reason"
],
"properties": {
"query": {
"type": "string",
"description": "The original search query the reported answer was built from."
},
"reason": {
"type": "string",
"description": "The user's reason why the answer was wrong (min 10 chars —\ne.g. which fact was incorrect, which source was misread, what was\nmissing)."
}
},
"additionalProperties": false
}Return cited corpus results by id; use fetch for full source text. The client verifies the evidence. Query embeddings use Alibaba; candidate passages go to Jina for reranking.
| Argument | Type | Description |
|---|---|---|
| query* | string |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string"
}
},
"additionalProperties": false
}Search regulatory evidence in English legal register. Cite original document and unit; verify each claim. Optional scope narrows corpus partitions. No model assesses the answer in this MCP tool; the client must verify each claim against the returned text. Query embeddings use Alibaba; candidate passages are sent to Jina for reranking.
| Argument | Type | Description |
|---|---|---|
| query* | string | |
| scope | any | |
| top_k | integer |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string"
},
"scope": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
],
"default": null
},
"top_k": {
"type": "integer",
"default": 20
}
},
"additionalProperties": false
}