Bundle
web-search-glm
ZAI GLM web search and fetch MCP plugin for DeepSeek Harness
- Source
- Tazio7
- License
- MIT
- Updated
- Updated yesterday
Readme
# dsh-zai-web-search
ZAI GLM web search and fetch MCP plugin for DeepSeek Harness.
This plugin integrates ZAI's (智谱AI) web search and fetch capabilities into DSH through MCP (Model Context Protocol) servers.
## Features
- **Web Search**: Search the web using ZAI's web search prime service
- **Web Fetch**: Fetch and read web content using ZAI's web reader service
- **Vision MCP**: Access ZAI's vision capabilities through MCP
- **Tool Registration**: Automatically registers tools with DSH harness for model use
- **Service Integration**: Provides a service for programmatic access
## Installation
1. Add the plugin to your DSH profile:
```bash
dsh plugin --profile <profile-name> add dsh-zai-web-search
```
2. The plugin will automatically use your DSH ZAI API key from `~/.dsh/.credentials.yaml`. No additional setup is required if you have configured ZAI in DSH.
## Configuration
The plugin is configured through `cordis.patch.yml` in your profile directory. Key configuration options:
- `apiKey`: Your ZAI API key (can be set via environment variable `ZAI_API_KEY`)
- `servers`: MCP server configurations
- `web-search-prime`: Web search service
- `web-reader`: Web content fetching service
- `zai-vision`: Vision capabilities service
- `registerTools`: Whether to register tools with DSH harness (default: true)
- `enabled`: Enable/disable the plugin (default: true)
## Usage
### As a Tool
Once installed and configured, the following tools will be available to the model:
- `web-search-prime/search`: Search the web
- `web-reader/fetch`: Fetch web content
- `zai-vision/*`: Vision-related tools
### As a Service
You can also use the service programmatically in your DSH plugins:
```typescript
import { Context } from '@deepseek-ai/cordis'
export default {
apply(ctx: Context) {
// Access the ZAI Web Search service
const zaiWebSearch = ctx.get('zai-web-search')
if (zaiWebSearch) {
// Search the web
zaiWebSearch.searchWeb('your search query').then(results => {
console.log(results)
})
// Fetch web content
zaiWebSearch.fetchWeb('https://example.com').then(content => {
console.log(content)
})
}
}
}
```
## Environment Variables
- `ZAI_CODING_CN_API_KEY`: Your ZAI API key for authentication (optional if configured in DSH)
- `ZAI_API_KEY`: Alternative environment variable for ZAI API key
- `ZAI_MODE`: Set to "ZHIPU" for Chinese market (default)
## MCP Servers
The plugin uses the following MCP servers:
1. **web-search-prime**: Web search service from ZAI
- URL: `https://open.bigmodel.cn/api/mcp/web_search_prime/mcp`
- Transport: HTTP Streamable
2. **web-reader**: Web content fetching service
- URL: `https://open.bigmodel.cn/api/mcp/web_reader/mcp`
- Transport: HTTP Streamable
3. **zai-vision**: Vision capabilities
- Command: `npx -y @z_ai/mcp-server@latest`
- Transport: stdio
## Development
To build the plugin:
```bash
npm run build
```
To run tests:
```bash
npm test
```
## License
MITInstall
dsh plugin --profile web add github:Tazio7/dsh-web-search-glm
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install web-search-glm from the hub
- This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.