{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetaLift-AI/metalift","description":"Metalift MCP server for AI agents","repository":{"url":"https://github.com/MetaLift-AI/metalift-mcp","source":"github","subfolder":"packages/mcp"},"version":"1.0.1","packages":[{"registryType":"npm","identifier":"@metalift/mcp","version":"1.0.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Metalift scrape API base URL","isRequired":true,"format":"string","name":"METALIFT_API_URL"},{"description":"API key from https://app.metalift.ai/dashboard/keys","isRequired":true,"format":"string","isSecret":true,"name":"METALIFT_API_KEY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-02T23:51:43.514095Z","publishedAt":"2026-07-02T23:51:43.514095Z","updatedAt":"2026-07-02T23:51:43.514095Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetaLift-AI/metalift","description":"Metalift MCP for AI agents: web search (2 credits), scrape, crawl, and map tools","repository":{"url":"https://github.com/MetaLift-AI/metalift-mcp","source":"github","subfolder":"packages/mcp"},"version":"1.0.15","packages":[{"registryType":"npm","identifier":"@metalift/mcp","version":"1.0.15","transport":{"type":"stdio"},"environmentVariables":[{"description":"Metalift scrape API base URL","isRequired":true,"format":"string","name":"METALIFT_API_URL"},{"description":"API key from https://app.metalift.ai/dashboard/keys","isRequired":true,"format":"string","isSecret":true,"name":"METALIFT_API_KEY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-06T09:53:35.35616Z","publishedAt":"2026-07-06T09:53:35.35616Z","updatedAt":"2026-07-06T09:53:35.35616Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Metadrama/obscura-mcp","description":"MCP server adapter for Obscura Rust headless browser — web scraping with anti-detection.","title":"Obscura MCP","repository":{"url":"https://github.com/Metadrama/obscura-mcp.git","source":"github"},"version":"0.1.1","packages":[{"registryType":"npm","identifier":"obscura-mcp","version":"0.1.1","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-01T17:13:23.455304Z","publishedAt":"2026-05-01T17:13:23.455304Z","updatedAt":"2026-05-01T17:13:23.455304Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Metatronsdoob369/cartographer-mcp","description":"Rule-tiered AST and sqlite-vec capability oracle for A-MEM agent workflows.","title":"Cartographer MCP","version":"0.1.2","packages":[{"registryType":"npm","identifier":"@joecwales/cartographer-mcp","version":"0.1.2","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-20T14:15:14.004488Z","publishedAt":"2026-05-20T14:15:14.004488Z","updatedAt":"2026-05-20T14:15:14.004488Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Metatronsdoob369/cartographer-mcp","description":"Rule-tiered AST and sqlite-vec capability oracle for A-MEM agent workflows.","title":"Cartographer MCP","version":"0.1.3","packages":[{"registryType":"npm","identifier":"@joecwales/cartographer-mcp","version":"0.1.3","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-20T19:58:37.188689Z","publishedAt":"2026-05-20T19:58:37.188689Z","updatedAt":"2026-05-20T19:58:37.188689Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.1.2","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.1.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Supabase project URL for uploading results to the leaderboard","format":"string","name":"METRILLM_SUPABASE_URL"},{"description":"Supabase anonymous key for uploading results","format":"string","isSecret":true,"name":"METRILLM_SUPABASE_ANON_KEY"},{"description":"Base URL for public result pages","format":"string","name":"METRILLM_PUBLIC_RESULT_BASE_URL"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-02T22:57:48.127507Z","publishedAt":"2026-03-02T22:57:48.127507Z","updatedAt":"2026-03-02T22:57:48.127507Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.2.0","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.2.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Supabase project URL for uploading results to the leaderboard","format":"string","name":"METRILLM_SUPABASE_URL"},{"description":"Supabase anonymous key for uploading results","format":"string","isSecret":true,"name":"METRILLM_SUPABASE_ANON_KEY"},{"description":"Base URL for public result pages","format":"string","name":"METRILLM_PUBLIC_RESULT_BASE_URL"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-03T16:50:31.693972Z","publishedAt":"2026-03-03T16:50:31.693972Z","updatedAt":"2026-03-03T16:50:31.693972Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.2.1","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.2.1","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-04T20:44:30.206793Z","publishedAt":"2026-03-04T20:44:30.206793Z","updatedAt":"2026-03-04T20:44:30.206793Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.2.2","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.2.2","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-06T14:26:25.526188Z","publishedAt":"2026-03-06T14:26:25.526188Z","updatedAt":"2026-03-06T14:26:25.526188Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.2.3","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.2.3","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-14T10:41:15.753185Z","publishedAt":"2026-03-14T10:41:15.753185Z","updatedAt":"2026-03-14T10:41:15.753185Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.2.4","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.2.4","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-14T11:22:53.213708Z","publishedAt":"2026-03-14T11:22:53.213708Z","updatedAt":"2026-03-14T11:22:53.213708Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.2.5","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.2.5","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-14T20:53:36.022565Z","publishedAt":"2026-03-14T20:53:36.022565Z","updatedAt":"2026-03-14T20:53:36.022565Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MetriLLM/metrillm","description":"Benchmark local LLM models — speed, quality & hardware fitness verdict from any MCP client","repository":{"url":"https://github.com/MetriLLM/metrillm","source":"github","subfolder":"mcp"},"version":"0.2.6","packages":[{"registryType":"npm","identifier":"metrillm-mcp","version":"0.2.6","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-16T13:38:34.755745Z","publishedAt":"2026-03-16T13:38:34.755745Z","updatedAt":"2026-03-16T13:38:34.755745Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-10-17/server.schema.json","name":"io.github.Mgnlockii/reelfy","description":"Pay-per-use AI and data tools via x402: image, video, music, voice, search, crypto. USDC.","title":"Reelfy Agent Tools","version":"1.0.0","websiteUrl":"https://api.reelfy.online","remotes":[{"type":"streamable-http","url":"https://api.reelfy.online/mcp","headers":[{"description":"Optional. Solana secret key (base58) holding USDC — pays per call via x402. Without it you can browse the 16-tool catalog for free.","isSecret":true,"name":"x-solana-key"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-16T14:40:02.979018Z","publishedAt":"2026-08-16T14:40:02.979018Z","updatedAt":"2026-08-16T14:40:02.979018Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Mibayy/token-savior","description":"Compact structural codebase MCP server for token-efficient AI development.","repository":{"url":"https://github.com/Mibayy/token-savior","source":"github"},"version":"0.9.0","packages":[{"registryType":"pypi","identifier":"token-savior","version":"0.9.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Comma-separated list of absolute paths to project roots to index.","isRequired":true,"format":"string","name":"WORKSPACE_ROOTS"},{"description":"Optional client identifier (e.g. 'claude-code', 'cursor', 'hermes') for usage attribution.","format":"string","name":"TOKEN_SAVIOR_CLIENT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-06T00:56:19.198665Z","publishedAt":"2026-04-06T00:56:19.198665Z","updatedAt":"2026-04-06T00:56:19.198665Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Mibayy/token-savior","description":"Structural codebase MCP server — navigate and edit code by symbol name, not raw text.","repository":{"url":"https://github.com/Mibayy/token-savior","source":"github"},"version":"0.9.1","packages":[{"registryType":"pypi","identifier":"token-savior","version":"0.9.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Comma-separated list of absolute paths to project roots to index.","isRequired":true,"format":"string","name":"WORKSPACE_ROOTS"},{"description":"Optional client identifier (e.g. 'claude-code', 'cursor', 'hermes') for usage attribution.","format":"string","name":"TOKEN_SAVIOR_CLIENT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-06T01:28:07.154995Z","publishedAt":"2026-04-06T01:28:07.154995Z","updatedAt":"2026-04-06T01:28:07.154995Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Mibayy/token-savior","description":"Structural codebase MCP server with persistent memory: navigate by symbol, recall across sessions.","repository":{"url":"https://github.com/Mibayy/token-savior","source":"github"},"version":"4.12.1","packages":[{"registryType":"pypi","identifier":"token-savior-recall","version":"4.12.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Comma-separated list of absolute paths to project roots to index.","isRequired":true,"format":"string","name":"WORKSPACE_ROOTS"},{"description":"Optional client identifier (e.g. 'claude-code', 'cursor', 'hermes') for usage attribution.","format":"string","name":"TOKEN_SAVIOR_CLIENT"},{"description":"Manifest size. 'optimized' (recommended) advertises the Pareto-optimal 15-tool set; 'auto' sizes it from your own usage; 'full' advertises every tool; 'compact-only' if you already run symbol navigation elsewhere.","format":"string","name":"TOKEN_SAVIOR_PROFILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-26T15:55:09.479888Z","publishedAt":"2026-07-26T15:55:09.479888Z","updatedAt":"2026-07-26T15:55:09.479888Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Mibayy/token-savior","description":"Structural codebase MCP server with persistent memory: navigate by symbol, recall across sessions.","repository":{"url":"https://github.com/Mibayy/token-savior","source":"github"},"version":"4.13.0","packages":[{"registryType":"pypi","identifier":"token-savior-recall","version":"4.13.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Comma-separated list of absolute paths to project roots to index.","isRequired":true,"format":"string","name":"WORKSPACE_ROOTS"},{"description":"Optional client identifier (e.g. 'claude-code', 'cursor', 'hermes') for usage attribution.","format":"string","name":"TOKEN_SAVIOR_CLIENT"},{"description":"Manifest size. 'optimized' (recommended) advertises the Pareto-optimal 15-tool set; 'auto' sizes it from your own usage; 'full' advertises every tool; 'compact-only' if you already run symbol navigation elsewhere.","format":"string","name":"TOKEN_SAVIOR_PROFILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-26T16:54:07.014729Z","publishedAt":"2026-07-26T16:54:07.014729Z","updatedAt":"2026-07-26T16:54:07.014729Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Mibayy/token-savior-recall","description":"Structural codebase MCP server with persistent memory: navigate by symbol, recall across sessions.","repository":{"url":"https://github.com/Mibayy/token-savior","source":"github"},"version":"4.11.0","packages":[{"registryType":"pypi","identifier":"token-savior-recall","version":"4.11.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Comma-separated list of absolute paths to project roots to index.","isRequired":true,"format":"string","name":"WORKSPACE_ROOTS"},{"description":"Optional client identifier (e.g. 'claude-code', 'cursor', 'hermes') for usage attribution.","format":"string","name":"TOKEN_SAVIOR_CLIENT"},{"description":"Manifest size. 'optimized' (recommended) advertises the Pareto-optimal 15-tool set; 'auto' sizes it from your own usage; 'full' advertises every tool; 'compact-only' if you already run symbol navigation elsewhere.","format":"string","name":"TOKEN_SAVIOR_PROFILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"deprecated","statusChangedAt":"2026-07-26T15:59:15.878481Z","statusMessage":"Renomme en io.github.Mibayy/token-savior : l'identifiant doit nommer le depot GitHub reel. Le paquet PyPI reste token-savior-recall.","publishedAt":"2026-07-26T15:36:08.810201Z","updatedAt":"2026-07-26T15:59:15.878481Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.10.0","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.10.0","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. Generate one at https://www.repeaterbook.com/user/api_apps.php","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Defaults to the address this library is registered with; set it only if you registered your own application, as another value returns 403 ua_mismatch.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-31T18:46:43.526819Z","publishedAt":"2026-08-31T18:46:43.526819Z","updatedAt":"2026-08-31T18:46:43.526819Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.10.1","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.10.1","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-01T22:04:58.717306Z","publishedAt":"2026-09-01T22:04:58.717306Z","updatedAt":"2026-09-01T22:04:58.717306Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.10.2","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.10.2","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-01T23:29:49.713486Z","publishedAt":"2026-09-01T23:29:49.713486Z","updatedAt":"2026-09-01T23:29:49.713486Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.11.1","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.11.1","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-02T20:31:52.16166Z","publishedAt":"2026-09-02T20:31:52.16166Z","updatedAt":"2026-09-02T20:31:52.16166Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.11.2","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.11.2","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-04T23:14:28.83049Z","publishedAt":"2026-09-04T23:14:28.83049Z","updatedAt":"2026-09-04T23:14:28.83049Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.11.3","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.11.3","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-04T23:37:12.818826Z","publishedAt":"2026-09-04T23:37:12.818826Z","updatedAt":"2026-09-04T23:37:12.818826Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.11.4","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.11.4","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-07T17:25:44.556373Z","publishedAt":"2026-09-07T17:25:44.556373Z","updatedAt":"2026-09-07T17:25:44.556373Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.11.5","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.11.5","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-09T01:44:21.905125Z","publishedAt":"2026-09-09T01:44:21.905125Z","updatedAt":"2026-09-09T01:44:21.905125Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.12.0","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.12.0","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-09T16:21:25.734367Z","publishedAt":"2026-09-09T16:21:25.734367Z","updatedAt":"2026-09-09T16:21:25.734367Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.12.1","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.12.1","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-10T13:28:43.438992Z","publishedAt":"2026-09-10T13:28:43.438992Z","updatedAt":"2026-09-10T13:28:43.438992Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MicaelJarniac/repeaterbook","description":"Look up amateur radio repeaters from RepeaterBook.com by location, band, and mode.","title":"RepeaterBook","repository":{"url":"https://github.com/MicaelJarniac/repeaterbook","source":"github"},"version":"0.13.0","websiteUrl":"https://repeaterbook.readthedocs.io/en/latest/mcp/","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"repeaterbook","version":"0.13.0","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"description":"The console script (repeaterbook-mcp) and the distribution (repeaterbook) have different names, and the server lives behind the 'mcp' extra.","value":"repeaterbook[mcp]","type":"named","name":"--from"},{"value":"repeaterbook-mcp","type":"positional"}],"environmentVariables":[{"description":"Per-user RepeaterBook 'rbuapp_' API token. Required: every export needs an approved token, and the server refuses to start without it. No application registration needed - log in to your RepeaterBook account, open https://www.repeaterbook.com/user/api_apps.php, find 'RepeaterBook Python Client' (App #114), and generate a token for it.","isRequired":true,"isSecret":true,"name":"REPEATERBOOK_APP_TOKEN"},{"description":"Where the SQLite database and HTTP cache live. Created if missing; a leading '~' is expanded.","default":".","name":"REPEATERBOOK_WORKING_DIR"},{"description":"Contact address used in the API User-Agent. Leave unset: it defaults to the address registered for App #114, and any other value returns 403 ua_mismatch. Set it only if you registered your own separate application with RepeaterBook.","format":"string","name":"REPEATERBOOK_APP_CONTACT"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-10T16:01:35.95213Z","publishedAt":"2026-09-10T16:01:35.95213Z","updatedAt":"2026-09-10T16:01:35.95213Z","isLatest":true}}}],"metadata":{"nextCursor":"io.github.MicaelJarniac/repeaterbook:0.13.0","count":30}}
