{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Role1776/mcp-retrieval","description":"Local Go MCP server: DuckDuckGo/Bing web + image search, readability scraping to Markdown.","title":"MCP Retrieval","repository":{"url":"https://github.com/Role1776/mcp-retrieval","source":"github"},"version":"0.1.7","websiteUrl":"https://github.com/Role1776/mcp-retrieval#readme","packages":[{"registryType":"oci","identifier":"ghcr.io/role1776/mcp-retrieval:0.1.7","transport":{"type":"stdio"},"environmentVariables":[{"description":"stdio (client spawns the process) or http (streamable HTTP listener).","default":"stdio","choices":["stdio","http"],"name":"MCP_TRANSPORT"},{"description":"Server name reported in the MCP initialize handshake.","default":"mcp-retrieval","name":"MCP_NAME"},{"description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","default":"/mcp","name":"MCP_PATH"},{"description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","default":"8080","name":"SERVER_PORT"},{"description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_READ_TIMEOUT"},{"description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_WRITE_TIMEOUT"},{"description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","default":"local","choices":["local","prod"],"name":"LOG_MODE"},{"description":"Idle connections the outbound HTTP client keeps per host.","default":"100","name":"MAX_IDLE_CONNS_PER_HOST"},{"description":"Maximum queries or URLs accepted in one call.","default":"10","name":"MAX_QUERIES"},{"description":"Snippets returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_RESULTS"},{"description":"Upper bound for snippets per query.","default":"20","name":"MAX_RESULTS"},{"description":"Images returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_IMAGES"},{"description":"Upper bound for images per query.","default":"10","name":"MAX_IMAGES"},{"description":"Per-call timeout in milliseconds when the call does not request one.","default":"5000","name":"DEFAULT_TIMEOUT_MS"},{"description":"Lowest timeout a call may request, in milliseconds.","default":"1000","name":"MIN_TIMEOUT_MS"},{"description":"Highest timeout a call may request, in milliseconds.","default":"10000","name":"MAX_TIMEOUT_MS"},{"description":"Characters kept per scraped page when the call does not ask for a limit.","default":"20000","name":"DEFAULT_DOCUMENT_CHARS"},{"description":"Upper bound for characters kept per scraped page.","default":"20000","name":"MAX_DOCUMENT_CHARS"},{"description":"Outbound proxy scheme. Optional; set all five PROXY_* variables or none.","name":"PROXY_SCHEME"},{"description":"Outbound proxy host. Enables per-request rotating proxy sessions.","name":"PROXY_HOST"},{"description":"Outbound proxy port. Required when PROXY_HOST is set.","name":"PROXY_PORT"},{"description":"Outbound proxy username. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_LOGIN"},{"description":"Outbound proxy password. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_PASSWORD"}]},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-retrieval/releases/download/v0.1.7/mcp-retrieval_0.1.7_darwin_amd64.mcpb","version":"0.1.7","fileSha256":"f39c4d87499cdf09cc156ff8a004b51da391812168aa5c9fdbfbde51f7e02485","transport":{"type":"stdio"},"environmentVariables":[{"description":"stdio (client spawns the process) or http (streamable HTTP listener).","default":"stdio","choices":["stdio","http"],"name":"MCP_TRANSPORT"},{"description":"Server name reported in the MCP initialize handshake.","default":"mcp-retrieval","name":"MCP_NAME"},{"description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","default":"/mcp","name":"MCP_PATH"},{"description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","default":"8080","name":"SERVER_PORT"},{"description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_READ_TIMEOUT"},{"description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_WRITE_TIMEOUT"},{"description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","default":"local","choices":["local","prod"],"name":"LOG_MODE"},{"description":"Idle connections the outbound HTTP client keeps per host.","default":"100","name":"MAX_IDLE_CONNS_PER_HOST"},{"description":"Maximum queries or URLs accepted in one call.","default":"10","name":"MAX_QUERIES"},{"description":"Snippets returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_RESULTS"},{"description":"Upper bound for snippets per query.","default":"20","name":"MAX_RESULTS"},{"description":"Images returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_IMAGES"},{"description":"Upper bound for images per query.","default":"10","name":"MAX_IMAGES"},{"description":"Per-call timeout in milliseconds when the call does not request one.","default":"5000","name":"DEFAULT_TIMEOUT_MS"},{"description":"Lowest timeout a call may request, in milliseconds.","default":"1000","name":"MIN_TIMEOUT_MS"},{"description":"Highest timeout a call may request, in milliseconds.","default":"10000","name":"MAX_TIMEOUT_MS"},{"description":"Characters kept per scraped page when the call does not ask for a limit.","default":"20000","name":"DEFAULT_DOCUMENT_CHARS"},{"description":"Upper bound for characters kept per scraped page.","default":"20000","name":"MAX_DOCUMENT_CHARS"},{"description":"Outbound proxy scheme. Optional; set all five PROXY_* variables or none.","name":"PROXY_SCHEME"},{"description":"Outbound proxy host. Enables per-request rotating proxy sessions.","name":"PROXY_HOST"},{"description":"Outbound proxy port. Required when PROXY_HOST is set.","name":"PROXY_PORT"},{"description":"Outbound proxy username. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_LOGIN"},{"description":"Outbound proxy password. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_PASSWORD"}]},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-retrieval/releases/download/v0.1.7/mcp-retrieval_0.1.7_darwin_arm64.mcpb","version":"0.1.7","fileSha256":"ed6096c62c711a935748cf574afa9a343a862034048cf59b8b0691857f1ce9f9","transport":{"type":"stdio"},"environmentVariables":[{"description":"stdio (client spawns the process) or http (streamable HTTP listener).","default":"stdio","choices":["stdio","http"],"name":"MCP_TRANSPORT"},{"description":"Server name reported in the MCP initialize handshake.","default":"mcp-retrieval","name":"MCP_NAME"},{"description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","default":"/mcp","name":"MCP_PATH"},{"description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","default":"8080","name":"SERVER_PORT"},{"description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_READ_TIMEOUT"},{"description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_WRITE_TIMEOUT"},{"description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","default":"local","choices":["local","prod"],"name":"LOG_MODE"},{"description":"Idle connections the outbound HTTP client keeps per host.","default":"100","name":"MAX_IDLE_CONNS_PER_HOST"},{"description":"Maximum queries or URLs accepted in one call.","default":"10","name":"MAX_QUERIES"},{"description":"Snippets returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_RESULTS"},{"description":"Upper bound for snippets per query.","default":"20","name":"MAX_RESULTS"},{"description":"Images returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_IMAGES"},{"description":"Upper bound for images per query.","default":"10","name":"MAX_IMAGES"},{"description":"Per-call timeout in milliseconds when the call does not request one.","default":"5000","name":"DEFAULT_TIMEOUT_MS"},{"description":"Lowest timeout a call may request, in milliseconds.","default":"1000","name":"MIN_TIMEOUT_MS"},{"description":"Highest timeout a call may request, in milliseconds.","default":"10000","name":"MAX_TIMEOUT_MS"},{"description":"Characters kept per scraped page when the call does not ask for a limit.","default":"20000","name":"DEFAULT_DOCUMENT_CHARS"},{"description":"Upper bound for characters kept per scraped page.","default":"20000","name":"MAX_DOCUMENT_CHARS"},{"description":"Outbound proxy scheme. Optional; set all five PROXY_* variables or none.","name":"PROXY_SCHEME"},{"description":"Outbound proxy host. Enables per-request rotating proxy sessions.","name":"PROXY_HOST"},{"description":"Outbound proxy port. Required when PROXY_HOST is set.","name":"PROXY_PORT"},{"description":"Outbound proxy username. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_LOGIN"},{"description":"Outbound proxy password. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_PASSWORD"}]},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-retrieval/releases/download/v0.1.7/mcp-retrieval_0.1.7_linux_amd64.mcpb","version":"0.1.7","fileSha256":"253bd83891e536ad0fa2943caae2be265318f4d30f6cdddfb21874e2aa141698","transport":{"type":"stdio"},"environmentVariables":[{"description":"stdio (client spawns the process) or http (streamable HTTP listener).","default":"stdio","choices":["stdio","http"],"name":"MCP_TRANSPORT"},{"description":"Server name reported in the MCP initialize handshake.","default":"mcp-retrieval","name":"MCP_NAME"},{"description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","default":"/mcp","name":"MCP_PATH"},{"description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","default":"8080","name":"SERVER_PORT"},{"description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_READ_TIMEOUT"},{"description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_WRITE_TIMEOUT"},{"description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","default":"local","choices":["local","prod"],"name":"LOG_MODE"},{"description":"Idle connections the outbound HTTP client keeps per host.","default":"100","name":"MAX_IDLE_CONNS_PER_HOST"},{"description":"Maximum queries or URLs accepted in one call.","default":"10","name":"MAX_QUERIES"},{"description":"Snippets returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_RESULTS"},{"description":"Upper bound for snippets per query.","default":"20","name":"MAX_RESULTS"},{"description":"Images returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_IMAGES"},{"description":"Upper bound for images per query.","default":"10","name":"MAX_IMAGES"},{"description":"Per-call timeout in milliseconds when the call does not request one.","default":"5000","name":"DEFAULT_TIMEOUT_MS"},{"description":"Lowest timeout a call may request, in milliseconds.","default":"1000","name":"MIN_TIMEOUT_MS"},{"description":"Highest timeout a call may request, in milliseconds.","default":"10000","name":"MAX_TIMEOUT_MS"},{"description":"Characters kept per scraped page when the call does not ask for a limit.","default":"20000","name":"DEFAULT_DOCUMENT_CHARS"},{"description":"Upper bound for characters kept per scraped page.","default":"20000","name":"MAX_DOCUMENT_CHARS"},{"description":"Outbound proxy scheme. Optional; set all five PROXY_* variables or none.","name":"PROXY_SCHEME"},{"description":"Outbound proxy host. Enables per-request rotating proxy sessions.","name":"PROXY_HOST"},{"description":"Outbound proxy port. Required when PROXY_HOST is set.","name":"PROXY_PORT"},{"description":"Outbound proxy username. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_LOGIN"},{"description":"Outbound proxy password. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_PASSWORD"}]},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-retrieval/releases/download/v0.1.7/mcp-retrieval_0.1.7_linux_arm64.mcpb","version":"0.1.7","fileSha256":"3a8053dd42e6e5afef130686824f9e0b1206e6ca0b5e854b5b7c0cb326717a01","transport":{"type":"stdio"},"environmentVariables":[{"description":"stdio (client spawns the process) or http (streamable HTTP listener).","default":"stdio","choices":["stdio","http"],"name":"MCP_TRANSPORT"},{"description":"Server name reported in the MCP initialize handshake.","default":"mcp-retrieval","name":"MCP_NAME"},{"description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","default":"/mcp","name":"MCP_PATH"},{"description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","default":"8080","name":"SERVER_PORT"},{"description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_READ_TIMEOUT"},{"description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_WRITE_TIMEOUT"},{"description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","default":"local","choices":["local","prod"],"name":"LOG_MODE"},{"description":"Idle connections the outbound HTTP client keeps per host.","default":"100","name":"MAX_IDLE_CONNS_PER_HOST"},{"description":"Maximum queries or URLs accepted in one call.","default":"10","name":"MAX_QUERIES"},{"description":"Snippets returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_RESULTS"},{"description":"Upper bound for snippets per query.","default":"20","name":"MAX_RESULTS"},{"description":"Images returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_IMAGES"},{"description":"Upper bound for images per query.","default":"10","name":"MAX_IMAGES"},{"description":"Per-call timeout in milliseconds when the call does not request one.","default":"5000","name":"DEFAULT_TIMEOUT_MS"},{"description":"Lowest timeout a call may request, in milliseconds.","default":"1000","name":"MIN_TIMEOUT_MS"},{"description":"Highest timeout a call may request, in milliseconds.","default":"10000","name":"MAX_TIMEOUT_MS"},{"description":"Characters kept per scraped page when the call does not ask for a limit.","default":"20000","name":"DEFAULT_DOCUMENT_CHARS"},{"description":"Upper bound for characters kept per scraped page.","default":"20000","name":"MAX_DOCUMENT_CHARS"},{"description":"Outbound proxy scheme. Optional; set all five PROXY_* variables or none.","name":"PROXY_SCHEME"},{"description":"Outbound proxy host. Enables per-request rotating proxy sessions.","name":"PROXY_HOST"},{"description":"Outbound proxy port. Required when PROXY_HOST is set.","name":"PROXY_PORT"},{"description":"Outbound proxy username. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_LOGIN"},{"description":"Outbound proxy password. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_PASSWORD"}]},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-retrieval/releases/download/v0.1.7/mcp-retrieval_0.1.7_windows_amd64.mcpb","version":"0.1.7","fileSha256":"0a3a5da55bc12b2578701e8c8403d3a41544a095ee99300b27a6484ec8f675bf","transport":{"type":"stdio"},"environmentVariables":[{"description":"stdio (client spawns the process) or http (streamable HTTP listener).","default":"stdio","choices":["stdio","http"],"name":"MCP_TRANSPORT"},{"description":"Server name reported in the MCP initialize handshake.","default":"mcp-retrieval","name":"MCP_NAME"},{"description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","default":"/mcp","name":"MCP_PATH"},{"description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","default":"8080","name":"SERVER_PORT"},{"description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_READ_TIMEOUT"},{"description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_WRITE_TIMEOUT"},{"description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","default":"local","choices":["local","prod"],"name":"LOG_MODE"},{"description":"Idle connections the outbound HTTP client keeps per host.","default":"100","name":"MAX_IDLE_CONNS_PER_HOST"},{"description":"Maximum queries or URLs accepted in one call.","default":"10","name":"MAX_QUERIES"},{"description":"Snippets returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_RESULTS"},{"description":"Upper bound for snippets per query.","default":"20","name":"MAX_RESULTS"},{"description":"Images returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_IMAGES"},{"description":"Upper bound for images per query.","default":"10","name":"MAX_IMAGES"},{"description":"Per-call timeout in milliseconds when the call does not request one.","default":"5000","name":"DEFAULT_TIMEOUT_MS"},{"description":"Lowest timeout a call may request, in milliseconds.","default":"1000","name":"MIN_TIMEOUT_MS"},{"description":"Highest timeout a call may request, in milliseconds.","default":"10000","name":"MAX_TIMEOUT_MS"},{"description":"Characters kept per scraped page when the call does not ask for a limit.","default":"20000","name":"DEFAULT_DOCUMENT_CHARS"},{"description":"Upper bound for characters kept per scraped page.","default":"20000","name":"MAX_DOCUMENT_CHARS"},{"description":"Outbound proxy scheme. Optional; set all five PROXY_* variables or none.","name":"PROXY_SCHEME"},{"description":"Outbound proxy host. Enables per-request rotating proxy sessions.","name":"PROXY_HOST"},{"description":"Outbound proxy port. Required when PROXY_HOST is set.","name":"PROXY_PORT"},{"description":"Outbound proxy username. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_LOGIN"},{"description":"Outbound proxy password. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_PASSWORD"}]},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-retrieval/releases/download/v0.1.7/mcp-retrieval_0.1.7_windows_arm64.mcpb","version":"0.1.7","fileSha256":"359eb31e9a3d276d699197d60a1ae072a62d768c8ab249449822c0c9123c606f","transport":{"type":"stdio"},"environmentVariables":[{"description":"stdio (client spawns the process) or http (streamable HTTP listener).","default":"stdio","choices":["stdio","http"],"name":"MCP_TRANSPORT"},{"description":"Server name reported in the MCP initialize handshake.","default":"mcp-retrieval","name":"MCP_NAME"},{"description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","default":"/mcp","name":"MCP_PATH"},{"description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","default":"8080","name":"SERVER_PORT"},{"description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_READ_TIMEOUT"},{"description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","default":"60s","name":"SERVER_WRITE_TIMEOUT"},{"description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","default":"local","choices":["local","prod"],"name":"LOG_MODE"},{"description":"Idle connections the outbound HTTP client keeps per host.","default":"100","name":"MAX_IDLE_CONNS_PER_HOST"},{"description":"Maximum queries or URLs accepted in one call.","default":"10","name":"MAX_QUERIES"},{"description":"Snippets returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_RESULTS"},{"description":"Upper bound for snippets per query.","default":"20","name":"MAX_RESULTS"},{"description":"Images returned per query when the call does not ask for a count.","default":"5","name":"DEFAULT_IMAGES"},{"description":"Upper bound for images per query.","default":"10","name":"MAX_IMAGES"},{"description":"Per-call timeout in milliseconds when the call does not request one.","default":"5000","name":"DEFAULT_TIMEOUT_MS"},{"description":"Lowest timeout a call may request, in milliseconds.","default":"1000","name":"MIN_TIMEOUT_MS"},{"description":"Highest timeout a call may request, in milliseconds.","default":"10000","name":"MAX_TIMEOUT_MS"},{"description":"Characters kept per scraped page when the call does not ask for a limit.","default":"20000","name":"DEFAULT_DOCUMENT_CHARS"},{"description":"Upper bound for characters kept per scraped page.","default":"20000","name":"MAX_DOCUMENT_CHARS"},{"description":"Outbound proxy scheme. Optional; set all five PROXY_* variables or none.","name":"PROXY_SCHEME"},{"description":"Outbound proxy host. Enables per-request rotating proxy sessions.","name":"PROXY_HOST"},{"description":"Outbound proxy port. Required when PROXY_HOST is set.","name":"PROXY_PORT"},{"description":"Outbound proxy username. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_LOGIN"},{"description":"Outbound proxy password. Required when PROXY_HOST is set.","isSecret":true,"name":"PROXY_PASSWORD"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-17T23:06:09.27807Z","publishedAt":"2026-08-17T23:06:09.27807Z","updatedAt":"2026-08-17T23:06:09.27807Z","isLatest":true}}}
