计数器MCP
一种模型上下文协议(MCP)服务器,为文件、文件夹、行、单词、字符、字节和结构化文件项提供计数功能。
特性
- 统计目录中的文件和文件夹(可选递归搜索)
- 统计文件或文本中的行、字、字符和字节数
- 结构化文件类型的特殊处理:
- INI/CFG文件:计数部分和按键 - YAML/JSON文件:计数数组项(如果不是数组,则计数行) - HTML/XML文件:计数标签
- 长时间运行操作的超时支持
- 基于文本的计数(从提供的文本中计数行、字、字符、字节)
需求
- .NET 10.0 SDK或更高版本
- Windows 10.0.19041.0或更高版本
建筑
cd CounterMcp
dotnet build -c Release可执行文件将位于: bin\Release\net10.0-windows10.0.19041.0\counter-mcp.exe
MCP配置
添加到您的 mcp.json:
{
"counter": {
"type": "stdio",
"command": "P:\\MCPs\\counter-mcp\\CounterMcp\\bin\\Release\\net10.0-windows10.0.19041.0\\counter-mcp.exe",
"args": [],
"tools": [
"count"
]
}
}工具: count
根据提供的参数计算各种事情。
输入参数
path(字符串,必填):文件或文件夹的路径recursive(boolean,可选,默认值:false):当true且path是一个文件夹时,递归计算所有子项timeout(整数,可选,默认值:30000):超时(毫秒)text(字符串,可选):要计数的可选文本(行、单词或字符)。如果提供,则忽略路径进行文本计数。types(字符串数组,必填):要执行的计数类型数组:
- "files":计数文件 - "folders":计数文件夹 - "items":计数项目(cfg/ini、yaml/json、html/xml的特殊处理) - "lines":计数行 - "words":字数统计 - "chars":计数字符 - "bytes":计数字节数
特殊“物品”类型行为
当 "items" 包含在types数组中:
.cfg/.ini文件:退货{ "sections": , "keys": }.yaml/.yml/.json文件:如果文件包含数组,则返回数组项计数,否则返回行计数.html/.htm/.xml文件:返回标记的数量- 其他文件:返回行数
示例响应
统计目录中的文件:
{
"files": 42
}统计INI文件中的项目:
{
"items": {
"sections": 5,
"keys": 23
}
}计算多种类型:
{
"files": 10,
"folders": 3,
"lines": 1250,
"words": 8500,
"chars": 45000,
"bytes": 48000
}直接计数文本:
{
"lines": 5,
"words": 42,
"chars": 250,
"bytes": 250
}许可证
麻省理工学院
