MCP-summarization-functions

MCP-summarization-functions

通过简洁、可扩展的架构提供智能摘要功能。主要用于解决 AI 代理在大型存储库中遇到的问题,因为大型文件会占用上下文窗口。

研究与数据
开发者工具
知识与记忆
访问服务器

Tools

summarize_command

Execute a command and summarize its output if it exceeds the threshold

summarize_files

Summarize the contents of one or more files

summarize_directory

Summarize the structure of a directory

summarize_text

Summarize any text content (e.g., MCP tool output)

get_full_content

Retrieve the full content for a given summary ID

README

<div align="center">

摘要函数

用于模型上下文协议的智能文本摘要

特性AI 代理集成安装使用

smithery badge npm version

</div>


概述

一个强大的 MCP 服务器,通过简洁、可扩展的架构提供智能摘要功能。使用现代 TypeScript 构建,专为与 AI 工作流程无缝集成而设计。

安装

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装摘要函数:

npx -y @smithery/cli install mcp-summarization-functions --client claude
npm i mcp-summarization-functions

AI 代理集成

此 MCP 服务器主要用于增强 AI 代理(如 Roo Cline 和 Cline)的性能和可靠性。它解决了 AI 代理操作中的一个关键挑战:上下文窗口管理。

上下文窗口优化

AI 代理经常遇到上下文窗口被以下内容快速填满的情况:

  • 命令执行结果
  • 文件内容读取
  • 目录列表
  • API 响应
  • 错误消息和堆栈跟踪

此服务器通过以下方式帮助维持高效的上下文使用:

  1. 提供简洁、相关的摘要,而不是完整内容
  2. 存储完整内容,以便在需要时参考
  3. 根据特定需求(安全性、API 表面等)提供重点分析
  4. 支持多种输出格式,以实现最佳上下文利用

AI 代理的优势

  • 降低失败率:通过防止上下文窗口溢出
  • 提高响应质量:通过重点、相关的摘要
  • 提高效率:通过在减少噪音的同时保持重要上下文
  • 更好的资源管理:通过智能内容缓存和检索
  • 灵活的集成:支持多个 AI 提供商和配置选项

推荐的 AI 代理提示

在与 AI 代理集成时,请在代理的指令中包含以下内容:

# 上下文管理

您可以通过 MCP 服务器访问摘要函数。这些函数不是可选的 - 您必须将它们用于所有可能的大型输出,以防止上下文溢出:

强制摘要:
- 您必须始终对以下内容使用摘要函数:
    - 任何首次文件读取操作(除非您确定它很小并且您将要编辑它)
    - 所有命令执行输出
    - 每个目录分析
    - 任何 API 响应或错误日志
    - 任何可能很大的输出

切勿尝试直接处理原始输出 - 始终使用适当的摘要函数:
• 对于命令:summarize_command
• 对于文件:summarize_files
• 对于目录:summarize_directory
• 对于其他文本:summarize_text

始终利用可用功能:
• 指定提示以进行重点分析
• 选择适当的输出格式
• 仅在绝对必要时使用内容 ID 访问完整详细信息

无需处理完美或完整的输出。与原始数据相比,始终首选摘要内容。如有疑问,请使用摘要。

<b>Ollama 存储库上的摘要操作(Gemini 2.0 Flash 摘要,Claude 3.5 代理)</b>

alt text

特性

  • 命令输出摘要 执行命令并获取其输出的简洁摘要

  • 文件内容分析 摘要单个或多个文件,同时保持技术准确性

  • 目录结构理解 获取复杂目录结构的清晰概览

  • 灵活的模型支持 使用来自不同提供商的模型

  • AI 代理上下文优化 通过智能摘要防止上下文窗口溢出并提高 AI 代理性能

配置

服务器通过环境变量支持多个 AI 提供商:

必需的环境变量

  • PROVIDER:要使用的 AI 提供商。支持的值: - ANTHROPIC - 来自 Anthropic 的 Claude 模型 - OPENAI - 来自 OpenAI 的 GPT 模型 - OPENAI-COMPATIBLE - 与 OpenAI 兼容的 API(例如 Azure) - GOOGLE - 来自 Google 的 Gemini 模型
  • API_KEY:所选提供商的 API 密钥

可选环境变量

  • MODEL_ID:要使用的特定模型(默认为提供商的标准模型)
  • PROVIDER_BASE_URL:与 OpenAI 兼容的提供商的自定义 API 端点
  • MAX_TOKENS:模型响应的最大令牌数(默认值:1024)
  • SUMMARIZATION_CHAR_THRESHOLD:何时进行摘要的字符数阈值(默认值:512)
  • SUMMARIZATION_CACHE_MAX_AGE:缓存持续时间(以毫秒为单位)(默认值:3600000 - 1 小时)
  • MCP_WORKING_DIR - 用于尝试查找具有相对路径的文件的备用目录

示例配置

# Anthropic 配置
PROVIDER=ANTHROPIC
API_KEY=your-anthropic-key
MODEL_ID=claude-3-5-sonnet-20241022

# OpenAI 配置
PROVIDER=OPENAI
API_KEY=your-openai-key
MODEL_ID=gpt-4-turbo-preview

# Azure OpenAI 配置
PROVIDER=OPENAI-COMPATIBLE
API_KEY=your-azure-key
PROVIDER_BASE_URL=https://your-resource.openai.azure.com
MODEL_ID=your-deployment-name

# Google 配置
PROVIDER=GOOGLE
API_KEY=your-google-key
MODEL_ID=gemini-2.0-flash-exp

使用

将服务器添加到您的 MCP 配置文件:

{
		"mcpServers": {
				"MUST_USE_summarization": {
						"command": "node",
						"args": ["path/to/summarization-functions/build/index.js"],
						"env": {
								"PROVIDER": "ANTHROPIC",
								"API_KEY": "your-api-key",
								"MODEL_ID": "claude-3-5-sonnet-20241022",
                "MCP_WORKING_DIR": "default_working_directory"
						}
				}
		}
}

可用函数

服务器提供以下摘要工具:

summarize_command

执行并摘要命令输出。

{
  // Required
  command: string,    // 要执行的命令
  cwd: string,       // 命令执行的工作目录
  
  // Optional
  hint?: string,      // 重点领域:"security_analysis" | "api_surface" | "error_handling" | "dependencies" | "type_definitions"
  output_format?: string  // 格式:"text" | "json" | "markdown" | "outline"(默认值:"text")
}

summarize_files

摘要文件内容。

{
  // Required
  paths: string[],    // 要摘要的文件路径数组(相对于 cwd)
  cwd: string,       // 用于解析文件路径的工作目录
  
  // Optional
  hint?: string,      // 重点领域:"security_analysis" | "api_surface" | "error_handling" | "dependencies" | "type_definitions"
  output_format?: string  // 格式:"text" | "json" | "markdown" | "outline"(默认值:"text")
}

summarize_directory

获取目录结构概览。

{
  // Required
  path: string,       // 要摘要的目录路径(相对于 cwd)
  cwd: string,       // 用于解析目录路径的工作目录
  
  // Optional
  recursive?: boolean,  // 是否包含子目录。对于深层目录是安全的
  hint?: string,       // 重点领域:"security_analysis" | "api_surface" | "error_handling" | "dependencies" | "type_definitions"
  output_format?: string   // 格式:"text" | "json" | "markdown" | "outline"(默认值:"text")
}

summarize_text

摘要任意文本内容。

{
  // Required
  content: string,    // 要摘要的文本内容
  type: string,       // 内容类型(例如,“日志输出”、“API 响应”)
  
  // Optional
  hint?: string,      // 重点领域:"security_analysis" | "api_surface" | "error_handling" | "dependencies" | "type_definitions"
  output_format?: string  // 格式:"text" | "json" | "markdown" | "outline"(默认值:"text")
}

get_full_content

检索给定摘要 ID 的完整内容。

{
  // Required
  id: string         // 存储内容的 ID
}

许可证

MIT

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
MCP Package Docs Server

MCP Package Docs Server

促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
mermaid-mcp-server

mermaid-mcp-server

一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。

精选
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

精选
TypeScript
Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的。

精选
Python