TSAP MCP Server
Dicklesworthstone
README
TSAP MCP 服务器
一个用于代码智能和文本分析的文本搜索与分析处理 (TSAP) 服务器的 Model Context Protocol (MCP) 实现。
目录
概述
TSAP MCP 服务器是 Model Context Protocol (MCP) 标准的实现,它提供了高级的文本搜索、处理和分析能力。它作为一个独立的服务器运行,通过 MCP 接口暴露了广泛的功能,使其与 Claude Desktop 和其他 MCP 兼容的客户端兼容。
该服务器构建在 MCP Python SDK 之上,并利用了一组多样化的专用库,通过标准化接口为 AI 助手提供了处理文本、代码和文档分析的丰富能力。
项目组件
该项目由三个主要组件组成,它们协同工作:
-
tsap
: 核心文本搜索与分析处理系统,提供以下基本功能:- 代码和文本搜索
- 文档分析
- 模式提取
- 数据处理
- 进化算法
- 存储和缓存
该组件实现了系统的核心功能和业务逻辑。
-
toolapi
:tsap
内部的 API 系统,它:- 定义工具交互协议
- 处理工具请求/响应生命周期
- 管理工具注册和发现
- 提供用于工具消费的客户端库
toolapi
作为原始 API 层,用于以编程方式访问 TSAP 功能。 -
tsap_mcp
: Model Context Protocol 适配器层,它:- 将核心 TSAP 功能包装在 MCP 兼容的接口中
- 将 TSAP 工具映射到 MCP 工具函数
- 实现 MCP URI 模式的资源处理程序
- 提供 MCP 提示模板
- 充当 TSAP 和 Claude Desktop(或其他 MCP 客户端)之间的桥梁
这些组件共同创建了一个强大的系统,其中核心 TSAP 功能通过标准化的 MCP 接口暴露,使其能够与 Claude Desktop 和其他支持 Model Context Protocol 的 AI 助手无缝集成。
特性
-
MCP 协议实现: 完全符合 AI 工具的 Model Context Protocol 标准。
-
搜索能力:
- 文本搜索,支持正则表达式、区分大小写选项和路径过滤
- 代码搜索,使用 ripgrep 进行模式匹配和文件过滤
- 语义搜索,使用来自 Nomic 和 sentence-transformers 的嵌入模型
-
处理工具:
- 文本规范化和转换
- 基于模式的数据提取
- 文档结构分析
-
分析工具:
- 代码质量和结构分析
- 文本内容分析
- 文档分析和元数据提取
-
可视化工具:
- 使用 matplotlib 进行数据可视化
- 使用 networkx 进行网络可视化
-
资源访问:
- 使用基于路径的检索访问文件内容
- 项目结构信息
- 配置管理
- 语义语料库管理
-
Claude Desktop 集成:
- 通过 MCP 协议与 Claude Desktop 无缝集成
安装
前提条件
- Python 3.13 或更高版本
- 系统上安装了 ripgrep(用于代码搜索功能)
从源码安装
# 克隆仓库
git clone https://github.com/your-org/tsap-mcp.git
cd tsap-mcp
# 安装包
pip install -e .
# 对于所有可选依赖项(可视化、语义搜索等)
pip install -e ".[all]"
Claude Desktop 集成
要安装服务器以与 Claude Desktop 一起使用:
tsap-mcp install --desktop
这会将服务器注册到 Claude Desktop,使其可在对话中使用。
使用
运行服务器
# 使用默认设置运行(localhost:8000)
tsap-mcp run
# 指定主机和端口
tsap-mcp run --host 0.0.0.0 --port 9000
# 启用自动重新加载以进行开发
tsap-mcp run --reload
# 禁用适配器层
tsap-mcp run --no-adapter
服务器信息
# 显示基本服务器信息
tsap-mcp info
# 显示所有已注册的组件(工具、资源、提示)
tsap-mcp info --components
命令行选项
服务器支持各种命令行选项:
tsap-mcp run [-H HOST] [-p PORT] [--reload] [--no-adapter]
tsap-mcp info [--components]
tsap-mcp test [--compatibility]
tsap-mcp install [--desktop] [--system]
环境变量
可以使用以下环境变量配置服务器行为:
TSAP_HOST
: 要绑定的主机(默认值:127.0.0.1)TSAP_PORT
: 要绑定的端口(默认值:8000)TSAP_LOG_LEVEL
: 日志级别(默认值:INFO)TSAP_PERFORMANCE_MODE
: 性能模式(balanced、speed、accuracy)TSAP_CACHE_ENABLED
: 启用缓存(默认值:true)TSAP_DEBUG
: 启用调试模式(默认值:false)
架构
TSAP MCP 服务器遵循围绕核心组件组织的模块化架构:
src/
├── tsap/ # 核心 TSAP 实现
│ ├── __init__.py # 包初始化
│ ├── server.py # 主服务器实现
│ ├── cli.py # 命令行界面
│ ├── config.py # 配置管理
│ ├── main.py # 主入口点
│ ├── api/ # API 层
│ ├── analysis/ # 文本和代码分析
│ ├── core/ # 核心功能
│ ├── project/ # 项目管理
│ ├── storage/ # 存储实用程序
│ ├── utils/ # 实用函数
│ ├── toolapi/ # 工具 API 协议实现
│ │ ├── __init__.py # 包初始化
│ │ ├── handler.py # 工具请求处理
│ │ ├── models.py # 数据模型
│ │ ├── protocol.py # 协议定义
│ │ └── client/ # 客户端库
│ └── ... # 其他 TSAP 组件
│
├── tsap_mcp/ # MCP 适配器层
│ ├── __init__.py # 包初始化
│ ├── server.py # MCP 服务器实现
│ ├── cli.py # 命令行界面
│ ├── adapter.py # 原始 TSAP 的适配器
│ ├── tool_map.py # 工具映射实用程序
│ ├── lifespan.py # 服务器生命周期管理
│ ├── tools/ # MCP 工具实现
│ │ ├── search.py # 搜索工具
│ │ ├── processing.py # 文本处理工具
│ │ ├── analysis.py # 分析工具
│ │ ├── visualization.py # 可视化工具
│ │ └── composite.py # 复合工具
│ ├── resources/ # MCP 资源实现
│ │ ├── files.py # 文件访问资源
│ │ ├── project.py # 项目结构资源
│ │ ├── config.py # 配置资源
│ │ └── semantic.py # 语义语料库资源
│ ├── prompts/ # MCP 提示实现
│ └── adapters/ # 协议适配器
│
├── scripts/ # 实用程序脚本
└── tests/ # 测试套件
数据流
系统中的数据流遵循以下模式:
- MCP 客户端(例如 Claude Desktop)向
tsap_mcp
服务器发出请求 tsap_mcp
适配器层将 MCP 请求转换为相应的tsap
操作tsap
核心系统处理请求,可能会使用其toolapi
子系统- 结果由
tsap_mcp
转换回 MCP 兼容的响应 - MCP 客户端接收并处理响应
MCP 组件
服务器实现了三种 MCP 组件类型:
- 工具: 可以调用以执行特定操作的函数
- 资源: 通过基于 URI 的接口的数据访问模式
- 提示: 用于常见交互的可重用模板
开发
开发环境设置
# 克隆仓库
git clone https://github.com/your-org/tsap-mcp.git
cd tsap-mcp
# 以开发模式安装,并包含开发依赖项
pip install -e ".[dev]"
# 运行测试
pytest
以开发模式运行
# 运行并自动重新加载
tsap-mcp run --reload
MCP 检查器
对于开发和调试,您可以使用 MCP 检查器:
pip install mcp[cli]
mcp dev src/tsap_mcp/server.py
贡献
欢迎贡献!请参阅 CONTRIBUTING.md 了解指南。
许可证
该项目已获得 MIT 许可证的许可 - 有关详细信息,请参阅 LICENSE 文件。
推荐服务器
Crypto Price & Market Analysis MCP Server
一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。
MCP PubMed Search
用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。
mixpanel
连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

Nefino MCP Server
为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。
Vectorize
将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。
Mathematica Documentation MCP server
一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。
kb-mcp-server
一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。
Research MCP Server
这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

Cryo MCP Server
一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。