mcp-cctb-search
Provides live web search through the Brave Search API, with source-traceable results, optional Tavily fallback, provider status checks, and health probes.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-cctb-searchsearch the web for today's top tech news and include sources"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DeepSeek Harness Web Search Plugin
Source-traceable Brave + Tavily live web search and URL extraction, packaged as a native DeepSeek Harness plugin.
简体中文 · TaroCub · Security · Releases
This plugin installs one native Harness bundle into the web profile. It adds:
web_searchfor routed Brave/Tavily live search;web_extractfor clean Tavily URL extraction;provider_statusfor local, secret-safe configuration checks;health_checkfor explicit live auth/quota/rate-limit/timeout probes;optional
/tarocubguidance when the plugin is used with the TaroCub gateway.
It works in plain DeepSeek Harness. TaroCub is optional.
Why This Plugin
Native model search is useful, but research workflows also need a stable tool contract and an inspectable source trail. This plugin returns provider, domain, rank, access time, source logs, extraction hashes, and visible fallback notices instead of hiding provider routing.
Tool | Provider behavior | Best for |
| Brave, then Tavily fallback | Current docs, URLs, prices, news, broad discovery |
| Tavily, then Brave fallback | Research and extraction-oriented answers |
| Brave + Tavily in parallel | Important claims that need cross-checking |
| Tavily Extract | Reading exact URLs supplied by the user |
| No provider request | Checking whether keys are available |
| Explicit live provider request | Diagnosing auth, quota, rate limits, or timeouts |
When one provider fails, results include fallbacks and notice. Extracted content includes contentHash. If a user gives an exact URL, read or extract that URL first; use search for discovery or background context.
Related MCP server: Multi-Search MCP Server
Architecture
DeepSeek Harness web profile
└── deepseek-harness-web-search-plugin
├── deepseek-harness-web-search bounded search guidance
└── mcp-cctb-search @deepseek-ai/dsh-mcp-client
└── node dist/search-mcp.js
├── Brave Search API
└── Tavily Search + Extract APIsThe committed MCP bundle is self-contained. A Git installation does not need a build step and does not add runtime npm dependencies.
Install
Prerequisites:
DeepSeek Harness
dshwith thewebprofile;Node.js 20 or newer;
at least one Brave or Tavily key for provider-backed tools.
dsh plugin --profile web add github:cloveric/deepseek-harness-web-search-pluginRestart Harness after installation. Installing the plugin does not configure provider credentials, create a Feishu/Lark app, or start TaroCub.
Configure Providers
Set one or both credentials in the environment that starts Harness:
export BRAVE_API_KEY="..."
export TAVILY_API_KEY="..."
dsh webBRAVE_SEARCH_API_KEY is accepted as an alias for BRAVE_API_KEY. Direct process environment values win. For compatibility with an existing local TaroCub/Codex setup, the MCP may read only these same named values from a Codex MCP environment section when direct values are absent.
The plugin never writes keys into a Harness profile, copies them into a workspace, or returns them from provider_status. It performs no provider request until a provider-backed tool or the explicit health_check tool is called.
Verify
Confirm that the bundle contributes exactly one Search MCP client:
dsh --profile web --dump-config | grep -A18 -B2 mcp-cctb-searchIn a Harness session, ask it to call mcp__cctb_search__provider_status. This verifies configuration visibility without consuming provider quota. Use mcp__cctb_search__health_check only when you want a real provider probe.
Expected tools:
mcp__cctb_search__web_search
mcp__cctb_search__web_extract
mcp__cctb_search__provider_status
mcp__cctb_search__health_checkUpdate Or Remove
dsh plugin --profile web update deepseek-harness-web-search-plugin
dsh plugin --profile web remove deepseek-harness-web-search-pluginRestart Harness after either operation and re-run dsh --profile web --dump-config.
TaroCub Integration
TaroCub is a separate Feishu/Lark-first local agent gateway. Its managed DeepSeek Hosts link the same web profile.
With the current plugin, TaroCub validates the package capability marker, bundled entrypoint, and Harness patch registration before letting the plugin own
mcp-cctb-search.Existing
tarocub-deepseek-harness-plugininstallations remain recognized by TaroCub during migration.With no plugin, an older companion-only plugin, or a damaged entrypoint/patch, TaroCub retains its private Search MCP fallback.
TaroCub sets
TAROCUB_SEARCH_MCP_OWNER=pluginorbridgefor its private Host so exactly one client is active.Plain Harness does not set this internal ownership flag, so the plugin is enabled by default.
Do not set TAROCUB_SEARCH_MCP_OWNER manually in normal Harness use. Plugin installation and TaroCub service deployment are separate operations.
Migration From The Former Package Name
The project was renamed from tarocub-deepseek-harness-plugin to make its web-search purpose explicit. Existing installations continue to work with TaroCub, but do not install both package names in one profile. Migrate once, then use the new name for future updates:
dsh plugin --profile web remove tarocub-deepseek-harness-plugin
dsh plugin --profile web add github:cloveric/deepseek-harness-web-search-plugin
dsh --profile web --dump-config | grep -c "id: mcp-cctb-search"Restart Harness after migration. The final count must be 1.
The canonical source also remains installable from TaroCub's plugin subdirectory:
dsh plugin --profile web add "github:cloveric/tarocub#path:deepseek-harness-plugin"Troubleshooting
Symptom | Check |
Tools are absent | Restart Harness, inspect |
| Export a supported key in the environment that launches |
Search returns auth/quota/rate-limit errors | Call |
Two | Remove manual duplicate profile patches; a normal plugin or TaroCub-managed Host registers only one owner. |
TaroCub reports a damaged plugin entrypoint or patch | Update/reinstall the plugin; TaroCub safely uses its bridge fallback meanwhile. |
A provider fallback was used | Preserve the returned |
Scope And Security
This project is an MCP and DeepSeek Harness plugin. It does not proxy model traffic, manage a Feishu/Lark tenant, persist provider credentials, or replace Harness-native plugins/search. Extract accepts only HTTP(S) URLs; all text returned through the MCP boundary is checked for configured provider credentials and common authorization formats. See SECURITY.md for the credential boundary and reporting process.
Development
npm ci
npm run verifyCanonical development happens in deepseek-harness-plugin/ inside TaroCub, then is published to this repository with git subtree. See CONTRIBUTING.md.
License
MIT. See LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search the agentic web. 4,100+ sites, 11 tools incl. check_url + verify_mcp for probe-before-use.
Web search, URL content extraction to Markdown, site mapping, and recursive web crawler.
Web search, fetch, extract, and research for AI agents. Markdown output + AI-synthesized answers.
Collaborative, cache-first web search for agents — cited answers from a shared live-web pool.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI models to fetch text content from URLs, extract links from web pages, and search the web using Brave Search with automatic content retrieval from top results. Provides comprehensive web scraping and search capabilities with robust error handling.51MIT
- AlicenseAqualityCmaintenanceProvides unified web search across multiple providers (Google, Tavily, DuckDuckGo, Brave) with automatic fallback, maximizing free API quota usage for AI workflows.1177MIT
- AlicenseAqualityDmaintenanceEnables advanced web search across multiple search engines (Brave, DuckDuckGo, Google, Bing, Yandex) with intelligent backend selection, full content extraction, and advanced filtering by time, language, geography, and content type.3MIT
- FlicenseNot gradedqualityCmaintenanceProvides web search capabilities using the Tavily API, enabling AI models to search the internet and retrieve up-to-date information.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cloveric/deepseek-harness-web-search-plugin'
If you have feedback or need assistance with the MCP directory API, please join our Discord server