网络知识MCP
FastMCP是一种基于web的搜索服务,它下载找到的文档(HTML/PDF),将其标准化为Markdown/Plain Text,并将JSON输出到命令中心的RAG库索引中。
主要应用: Document Collector代理调用工具 search_and_collect_knowledge文件自动保存到 `docs//web_knowledge/命令中心启动 ingest_project_docs` 新的知识立即提供给所有的代理。
机会
- DuckDuckGo按域和语言进行过滤(易于扩展到其他搜索引擎)。
- 下载HTML/PDF,提取文本并转换为Markdown。
- 自动语言检测、哈希计数和标记分配。
- 统一答案:
{
"project_slug": "sochi-rent-cc",
"query": "django documentation",
"documents": [
{
"source_url": "https://docs.djangoproject.com/en/stable/",
"title": "Django documentation | Django",
"plain_text": "...",
"markdown": "...",
"hash": "1e0b8c4d...",
"language": "en",
"tags": ["django", "docs"],
"metadata": {
"search_snippet": "The official Django documentation…",
"content_type": "text/html",
"fetched_at": "2025-12-05T08:00:01Z"
}
}
]
}环境变量
名称值默认值 | --- | --- | --- | | WEB_KNOWLEDGE_PORT fastmcp端口 8000 | | WEB_KNOWLEDGE_MAX_URLS 搜索结果(Search Results) 20 | | WEB_KNOWLEDGE_SEARCH_CANDIDATES 过滤前需要多少结果 30 | | WEB_KNOWLEDGE_MAX_BYTES 最大下载响应量 5_242_880 | | WEB_KNOWLEDGE_HTTP_TIMEOUT –HTTP请求超时(秒)。 15 | | WEB_KNOWLEDGE_USER_AGENT 用户代理下载 web-knowledge-mcp/ | | SERPAPI_KEY Ð(可选)Serpapi键,如果您需要从DuckDuckGo切换–Ð
快速启动
git clone https://github.com/paskalex1/web-knowledge-mcp.git
cd web-knowledge-mcp
docker compose up --build web-knowledge-mcp启动后,在命令中心(SLUG)注册MCP服务器 web-knowledge-mcp,基本URL http://web-knowledge-mcp:8000/mcp)并同步工具。所有活动代理将自动访问 search_and_collect_knowledge.
无Docker的本地开发
uv venv # или python -m venv .venv
source .venv/bin/activate
pip install -e .
python -m web_knowledge_mcp.server服务器正在听 0.0.0.0: 与任何FastMCP客户端兼容。
测试
uv pip install -e ".[test]" # или pip install -r requirements-dev.txt
pytest测试包括搜索、HTML/PDF解析和端到端工具处理。
在Command Center中发布知识
- Document Collector调用具有参数的工具:
{
"query": "django tutorial pdf",
"max_documents": 5,
"allowed_domains": ["djangoproject.com"],
"language_priority": ["ru", "en"]
}- 答案在 `docs/
/web_knowledge/`创建RAG源。
- 自动启动
ingest_project_docs,Knowledge Changelog记录diff,Rag Librarian报告新文档。
这样,代理商就可以获得新鲜的外部材料,而无需手动下载。
