{"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.9","websiteUrl":"https://github.com/Role1776/mcp-retrieval#readme","packages":[{"registryType":"oci","identifier":"ghcr.io/role1776/mcp-retrieval:0.1.9","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.9/mcp-retrieval_0.1.9_darwin_amd64.mcpb","version":"0.1.9","fileSha256":"7ffb4c98b4ec08313773148b5dd096c95c77472e89082b8d1f7aaf4cacdefe62","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.9/mcp-retrieval_0.1.9_darwin_arm64.mcpb","version":"0.1.9","fileSha256":"941fbc39d627f47e386734d802b60bfb59e1be42674dc00fdf20db690b5853a7","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.9/mcp-retrieval_0.1.9_linux_amd64.mcpb","version":"0.1.9","fileSha256":"19e17374ac0caae7336ed35d905ce7e4eafa5c41a53497b673fa10a3e47cd2fe","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.9/mcp-retrieval_0.1.9_linux_arm64.mcpb","version":"0.1.9","fileSha256":"4ef072023de9ddf817fff68d99b466319de60b404fb242b46217f0b14e149517","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.9/mcp-retrieval_0.1.9_windows_amd64.mcpb","version":"0.1.9","fileSha256":"5ac5ab3b4f6cd1bdb5ff7280bdddf688d1debdcd57806fd041c163e758896fd5","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.9/mcp-retrieval_0.1.9_windows_arm64.mcpb","version":"0.1.9","fileSha256":"a39c7b9cc6c5111003733eaa4bc4c0d241e4bef92272949c4ab4f23c7ed6d0fa","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-10-09T22:37:55.763182Z","publishedAt":"2026-10-09T22:37:55.763182Z","updatedAt":"2026-10-09T22:37:55.763182Z","isLatest":true}}}
