io.github.CloudCorpRecords/searchport

Official registry Search and web

Web, local, news, image, and video search through the Brave Search API.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package @reneturcios/searchport
Claude Code
claude mcp add searchport -- npx -y @reneturcios/searchport@0.1.0 mcp
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "searchport": {
            "command": "npx",
            "args": [
                "-y",
                "@reneturcios/searchport@0.1.0",
                "mcp"
            ]
        }
    }
}
OCI package ghcr.io/cloudcorprecords/searchport:0.1.0
Claude Code
claude mcp add searchport -- docker run -i --rm ghcr.io/cloudcorprecords/searchport:0.1.0 mcp
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "searchport": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/cloudcorprecords/searchport:0.1.0",
                "mcp"
            ]
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. searchport
  2. Install
  3. CLI
  4. MCP server
  5. Development
  6. License

searchport

searchport is one doorway to five kinds of Brave search. A single question can be asked against the general web index, local business listings, current news, images, or videos, and every answer comes back in the same shape: a title, the address it lives at, a short excerpt, and one extra line of detail that fits the kind — how long ago a story ran, how long a video plays, where a shop is and how it is rated. It runs from the command line or as an MCP server for agents.

A Brave Search API subscription key is required. Put it in the BRAVE_API_KEY environment variable; the key is sent to the API as the X-Subscription-Token header and never appears in output. When the variable is missing, every search fails with an error that names it.

Install

npx @reneturcios/searchport web "trail running shoes"

Or run the container image:

docker run -i -e BRAVE_API_KEY ghcr.io/cloudcorprecords/searchport

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

CLI

export BRAVE_API_KEY="your subscription key"

# General web search; --count is results per page (max 20),
# --offset pages forward (max 9)
searchport web "composting basics"
searchport web "composting basics" --count 5 --offset 1

# The other four kinds take the same query and --count
searchport local "bakery near the mission" --count 5
searchport news "trail network vote"
searchport images "ridge sunrise"
searchport videos "trail running form"

# Machine-readable output for any kind
searchport web "composting basics" --json

searchport --version

Exit codes: 0 on success, 1 when a search fails (including a missing BRAVE_API_KEY or an API error), 2 for usage errors.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

npx -y @reneturcios/searchport mcp

MCP client configuration:

{
  "mcpServers": {
    "searchport": {
      "command": "npx",
      "args": ["-y", "@reneturcios/searchport", "mcp"],
      "env": { "BRAVE_API_KEY": "your subscription key" }
    }
  }
}
Tools
ToolInputWhat it returns
brave_web_searchquery (string, required), count (number, optional), offset (number, optional)Web results as a numbered text block: title, URL, and excerpt per result.
brave_local_searchquery (string, required), count (number, optional)Local listings: name, URL, and a detail line with address, phone, and rating when the API provides them.
brave_news_searchquery (string, required), count (number, optional)News stories: headline, URL, summary, and the story's age.
brave_image_searchquery (string, required), count (number, optional)Image results: title, source page URL, and the direct image URL.
brave_video_searchquery (string, required), count (number, optional)Video results: title, URL, description, and duration.

Counts are clamped to the API's per-page limit of 20 and offsets to its maximum of 9. An empty result set is reported as such, not as an error; a missing key or a failed API call is reported as a tool error.

Development

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

Frequently asked questions

What is io.github.CloudCorpRecords/searchport?

Web, local, news, image, and video search through the Brave Search API.

How do I install io.github.CloudCorpRecords/searchport?

It runs on your machine. In Claude Code: claude mcp add searchport -- npx -y @reneturcios/searchport@0.1.0 mcp. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.CloudCorpRecords/searchport need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.CloudCorpRecords/searchport open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.CloudCorpRecords/searchport?

It is published by CloudCorpRecords. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.