Model Context Protocol Resources & Guides

Model Context Protocol Resources & Guides

探索模型上下文协议 (MCP):通过我在学习这个新协议时构建的实用指南、客户端和服务器。

cyanheads

研究与数据
访问服务器

README

模型上下文协议资源 & 指南

modelcontextprotocol.io MCP SDK - TypeScript MCP SDK - Python MCP SDK - Kotlin Last Updated

这是我探索和实现强大的模型上下文协议 (MCP) 标准时开发的一系列指南、实用程序、客户端和服务器。它是一个正在进行中的项目,随着我不断试验和学习,我会添加更多内容。如果您有任何问题,请随时与我联系!感谢您的光临!🚀

📋 目录

🔍 MCP 简介

模型上下文协议 (MCP) 是一种标准化的通信协议,使大型语言模型 (LLM) 能够与外部系统和服务进行交互。优点包括:

  • 一致的接口:LLM 访问工具和资源的标准化方法
  • 增强的功能:使 LLM 能够与数据库、API 和本地系统进行交互
  • 安全与控制:提供具有内置验证的结构化访问模式
  • 可扩展性:随着系统需求的演变,易于实现新功能

有关 MCP 的更深入介绍,包括其设计理念和技术细节,请查看规范

🚀 MCP TypeScript 模板仓库

✨ 刚刚发布!构建 MCP 服务器的终极入门套件 ✨

TypeScript Model Context Protocol Version License Status GitHub

这是一个用于构建模型上下文协议 (MCP) 服务器的 TypeScript 模板。它为创建您自己的 MCP 服务器提供了坚实的基础,包括最佳实践、实用程序和模块化架构。

无论您是初学者还是经验丰富的开发人员,此模板都旨在帮助您快速高效地入门。

非常适合 vibe 代码会话 - 获取此模板,您的 LLM 编码代理将立即理解架构和模式,从而实现轻松高效的 MCP 服务器开发体验。

包含什么?

  • 坚如磐石的架构:精心设计的结构,专为可扩展性和可维护性而设计
  • 生产就绪的实用程序:日志记录、错误处理、ID 生成等等 - 经过实战测试,随时可用
  • 类型安全:全面的 TypeScript 类型,可在错误发生之前捕获它们
  • 安全第一:内置保护,防止常见漏洞
  • 工作示例:完全实现的 MCP 服务器工具和资源,您可以将其用作参考
  • 开发者速查表:一个 .clinerules 文件,可帮助您的 LLM 编码代理立即理解项目

谁应该使用它?

  • MCP 初学者:跳过学习曲线,从最佳实践开始
  • 经验丰富的开发人员:节省时间,专注于您的独特功能
  • 团队:确保整个 MCP 生态系统中的一致模式
  • LLM 爱好者:了解 MCP 并为您的 AI 助手提供完美的起点

核心架构

该模板遵循模块化架构,专为清晰性和可扩展性而设计:

<details> <summary>点击展开架构图</summary>

flowchart TB
    subgraph API["API 层"]
        direction LR
        MCP["MCP 协议"]
        Val["验证"]
        San["清理"]

        MCP --> Val --> San
    end

    subgraph Core["核心组件"]
        direction LR
        Config["配置"]
        Logger["日志系统"]
        Error["错误处理"]
        Server["MCP 服务器"]

        Config --> Server
        Logger --> Server
        Error --> Server
    end

    subgraph Implementation["实现层"]
        direction LR
        Tool["工具"]
        Resource["资源"]
        Util["实用程序"]

        Tool --> Server
        Resource --> Server
        Util --> Tool
        Util --> Resource
    end

    San --> Config
    San --> Server

    classDef layer fill:#2d3748,stroke:#4299e1,stroke-width:3px,rx:5,color:#fff
    classDef component fill:#1a202c,stroke:#a0aec0,stroke-width:2px,rx:3,color:#fff
    class API,Core,Implementation layer
    class MCP,Val,San,Config,Logger,Error,Server,Tool,Resource,Util component

</details>

试用此模板并构建您的第一个 MCP 服务器!查看 仓库文档 了解更多详情。

🛠️ MCP 指南

MCP 客户端开发指南

想要构建您自己的 MCP 客户端?查看我的综合 MCP 客户端开发指南,其中涵盖:

  • 核心架构和组件
  • 连接生命周期管理
  • 工具和资源处理
  • 错误处理和安全最佳实践
  • Python 和 TypeScript 中的分步实现示例
  • 采样和多服务器连接等高级主题

MCP 服务器开发指南

想要构建您自己的 MCP 服务器?查看我的综合 MCP 服务器开发指南,其中涵盖:

  • 核心服务器架构
  • 构建您的第一个 MCP 服务器
  • 公开功能(工具、资源和提示)
  • 高级服务器功能(采样、根、流式传输等)
  • 安全和最佳实践
  • 故障排除和资源
  • 示例实现

🛠️ MCP 实用程序

MCP 报告器

GitHub TypeScript Model Context Protocol Version License Status GitHub

我开发的一个实用程序,用于生成关于模型上下文协议 (MCP) 服务器功能的综合报告,帮助开发人员了解其 MCP 服务器生态系统中可用的功能。也可以通过编程方式用于生成文档报告或输入到其他工具中。

  • 📊 服务器分析

    • 自动发现所有已启用的 MCP 服务器
    • 详细的功能提取(工具、资源、模板)
    • 执行期间的实时进度监控
    • 综合元数据收集
  • 📝 报告生成

    • 结构良好的 markdown 文档
    • 详细的输入模式文档
    • 工具和资源使用示例
    • 按服务器组织,格式一致
  • 🔧 集成选项

    • 具有可自定义选项的命令行界面
    • 用于与其他工具集成的编程 API
    • 可配置的输出格式和位置

🛠️ MCP 服务器

Perplexity MCP 服务器

TypeScript Model Context Protocol Version License Status <!-- Assuming repo path, adjust if needed --> GitHub <!-- Assuming repo path, adjust if needed -->

一个 MCP 服务器,提供与 Perplexity AI API 交互的工具,使用 mcp-ts-template 构建。此服务器允许与 模型上下文协议 (MCP) 兼容的 AI 代理利用 Perplexity 的搜索增强查询功能。包括一个 showThinking 参数,使推理模型能够显示其内部推理过程。

  • 🔧 核心实用程序

    • 使用敏感数据编辑的日志记录
    • 使用基于模式的分类的错误处理
    • 具有前缀支持的 ID 生成
    • 速率限制以防止 API 滥用
    • 请求上下文跟踪
    • 输入验证和清理
  • 📝 类型安全

    • 用于一致接口的共享类型定义
    • 标准化错误结构
    • MCP 协议类型定义
    • 工具注册接口
  • 🔍 Perplexity 集成

    • 通过 Perplexity API 进行搜索增强查询
    • 支持最近性和域过滤
    • 相关问题建议
    • 使用 showThinking 参数的推理可见性
    • 自动成本跟踪和估算
  • 🔒 安全

    • 使用 validator 进行输入验证
    • 通过 sanitize-html 进行内容清理
    • 参数边界强制执行
    • 敏感数据保护

构建在 mcp-ts-template 基础上,以实现一致的架构和模式。 需要通过环境变量配置 Perplexity API 密钥。 具有全面的文档和开发人员指南,以实现可扩展性。

Atlas MCP 服务器

GitHub TypeScript Model Context Protocol Version License Status GitHub

ATLAS(自适应任务和逻辑自动化系统)是 LLM 代理的任务管理系统,构建在集成了项目、任务和知识的三层架构上。ATLAS 作为模型上下文协议服务器实现,使 AI 助手能够通过标准化接口管理复杂的项目。

  • 📋 项目管理

    • 使用元数据、状态和丰富内容进行全面跟踪
    • 使用自动验证的依赖项处理
    • 支持批量操作以实现高效管理
    • 用于外部资源和文档的 URL 管理
  • 任务管理

    • 具有优先级的任务生命周期管理
    • 使用标签进行分类以实现更好的组织
    • 用于结构化工作流程的依赖项跟踪
    • 分配和所有权跟踪
  • 🧠 知识管理

    • 链接到项目的结构化知识库
    • 域分类和标记,便于检索
    • 用于跟踪信息来源的引用支持
    • 具有上下文保留的可搜索内容
  • 🔍 图数据库集成

    • Neo4j 驱动的本机关系管理
    • 确保数据完整性的 ACID 兼容事务
    • 具有模糊匹配和通配符的高级搜索
    • 具有优化查询模式的高性能
  • 🔎 统一搜索

    • 跨项目、任务和知识的跨实体搜索
    • 基于属性的过滤和不区分大小写的选项
    • 内容相关性评分和上下文结果
    • 具有模糊匹配支持的全文搜索

重要版本说明:1.5.4 版本是最后一个使用 SQLite 作为数据库的版本。2.0 及更高版本已完全重写为使用 Neo4j,这需要使用 Docker(存储库中包含 docker-compose)进行自托管或使用 Neo4j AuraDB 云服务:https://neo4j.com/product/auradb/。2.5.0 版本引入了一个新的 3 节点系统(项目、任务、知识),取代了之前的结构。

Toolkit MCP 服务器

GitHub TypeScript Model Context Protocol Version License Status GitHub

一个模型上下文协议服务器,为 LLM 代理提供系统实用程序和工具,包括 IP 地理位置、网络诊断、系统监控、加密操作和 QR 码生成。

  • 🌍 网络和系统工具

    • 具有智能缓存的 IP 地理位置
    • 网络诊断和连接测试
    • Ping 和 traceroute 实用程序
    • 公共 IP 检测
    • 系统资源监控
    • 性能指标跟踪
    • 负载平均值跟踪
    • 网络接口详细信息
  • 🔐 安全和生成

    • 加密操作(MD5、SHA-256 等)
    • 恒定时间哈希比较
    • UUID 生成
    • 多种格式的 QR 码生成
    • SVG 和 Base64 编码输出
  • ⏱️ 时间和日期管理

    • 具有格式化选项的当前时间检索
    • 时区转换实用程序
    • IANA 时区列表和过滤
    • 具有本地化支持的日期格式化

具有优化的地理位置缓存,以减少 API 使用量(45 个请求/分钟限制)。 所有加密操作都使用 Node.js 本机加密模块,以实现最大的安全性和性能。 可以通过 npm 轻松安装或从源代码安装,只需最少的配置。

Mentor MCP 服务器

GitHub TypeScript Model Context Protocol Version License Status GitHub

一个模型上下文协议服务器,通过 AI 驱动的 Deepseek-Reasoning (R1) 指导功能为 LLM 代理提供第二意见,包括代码审查、设计评论、写作反馈和通过 Deepseek API 进行的创意头脑风暴。通过专家第二意见和可操作的见解,让您的 LLM 代理取得成功。

  • 🧠 代码分析

    • 综合代码审查
    • 错误检测和预防
    • 风格和最佳实践评估
    • 性能优化建议
    • 安全漏洞评估
  • 🎨 设计和架构

    • UI/UX 设计评论
    • 架构图分析
    • 设计模式建议
    • 可访问性评估
    • 一致性检查
  • 📝 内容增强

    • 写作反馈和改进
    • 语法和风格分析
    • 文档审查
    • 内容清晰度评估
    • 结构建议
  • 🔮 战略规划

    • 功能增强头脑风暴
    • 对方法的第二意见
    • 创新建议
    • 可行性分析
    • 用户价值评估

由 Deepseek-Reasoning (R1) 通过 Deepseek API 提供支持,以获得高质量的技术反馈和指导。 可配置超时设置、重试机制和令牌限制,以实现最佳性能。 实施请求速率限制和响应缓存,以确保高效的 API 使用。

Obsidian MCP 服务器

GitHub TypeScript Model Context Protocol Version License Status GitHub

一个模型上下文协议服务器,旨在让 LLM 与 Obsidian 保险库进行交互。它使用 TypeScript 构建,具有安全的 API 通信、高效的文件操作和全面的搜索功能,使 AI 助手能够通过干净、灵活的工具界面无缝地管理知识库。

  • 📝 知识库管理

    • 文件创建、读取和更新
    • YAML 前置元数据处理和验证
    • 内容追加和修补
    • 目录结构导航和列表
    • 具有错误处理的原子文件操作
  • 🔍 高级搜索

    • 具有上下文突出显示的全文本搜索
    • 用于复杂过滤器的 JsonLogic 查询支持
    • 基于标签和属性的过滤
    • 支持 glob 模式和前置元数据字段
  • 🔧 属性管理

    • YAML 前置元数据解析和智能合并
    • 自动时间戳管理
    • 具有类型验证的自定义字段支持
    • 标准化属性模式
  • 🔒 安全和性能

    • 具有速率限制的 API 密钥身份验证
    • 资源监控和运行状况检查
    • 可配置的请求限制和超时
    • 正常关机处理

需要 Obsidian 中的 Local REST API 插件才能运行。 具有安全的保险库访问权限,具有适当的权限边界和验证。 支持所有 Obsidian markdown 功能,包括链接、嵌入和自定义语法。

Git MCP 服务器

GitHub TypeScript Model Context Protocol Version License Status

一个模型上下文协议 (MCP) 服务器,提供通过标准化接口与 Git 存储库交互的工具:

  • 📦 存储库管理

    • 初始化、克隆和检查存储库状态
    • 浏览存储库内容和结构
    • 管理配置和设置
    • 访问存储库历史记录和日志
  • 🌿 分支操作

    • 创建、列出、检出、删除和合并分支
    • 比较分支并可视化差异
    • 管理分支保护和权限
    • 解决合并冲突和问题
  • 📝 工作目录

    • 暂存文件、提交更改、创建差异
    • 恢复和重置工作树
    • 查看文件历史记录和 blame 信息
    • 管理忽略的文件和模式
  • 🔄 远程操作

    • 添加远程、获取、拉取、推送
    • 跟踪上游分支
    • 配置身份验证和访问
    • 管理远程引用
  • 🔧 高级 Git 命令

    • 管理标签、隐藏更改、cherry-pick、rebase
    • 执行交互式 rebase
    • 处理子模块和工作树
    • 执行高级 git 操作

将 Git 操作公开为 MCP 资源和工具,同时保持适当的安全边界。 具有标准化的错误处理、全面的验证和一致的资源 URI 用于访问存储库信息、分支、远程、标签、文件、差异和提交。

GitHub MCP 服务器

GitHub TypeScript Model Context Protocol Version License Status GitHub

一个模型上下文协议 (MCP) 服务器,提供与 GitHub API 交互的工具。此服务器允许 LLM 代理通过标准化接口管理 GitHub 存储库、问题、拉取请求、分支、文件和发布。

  • 📁 存储库管理

    • 创建、列出和获取存储库信息
    • 配置存储库设置和属性
    • 管理存储库可见性(公共/私有)
    • 添加详细的描述和配置
    • 支持组织存储库
  • 🌿 分支管理

    • 创建、删除和列出分支
    • 按受保护的分支过滤
    • 支持高级分支操作
    • 分支保护和权限
    • 解决合并冲突和问题
  • 🔖 问题管理

    • 创建和列出具有过滤的问题
    • 应用标签对问题进行分类
    • 按状态过滤(打开、关闭、全部)
    • 详细的标题和正文内容
    • 跟踪问题状态和进度
  • 🔄 拉取请求管理

    • 具有合并选项的完整 PR 生命周期
    • 支持不同的合并策略(合并、压缩、rebase)
    • 更新现有拉取请求
    • 过滤和列出拉取请求
    • 添加提交消息和引用
  • 📝 文件管理

    • 创建和更新存储库内容
    • 支持二进制文件的 Base64 编码
    • 将文件更改与提交关联
    • 为更改指定提交消息
    • 处理文件路径和内容
  • 🚀 发布管理

    • 创建带有自定义选项的标记发布
    • 草稿和预发布支持
    • 资产管理和发布
    • 发布说明和文档
  • ⚙️ 系统架构

    • 原子特征导向架构
    • 使用 Zod 模式进行全面验证
    • GitHub API 速率限制保护
    • 错误分类和处理
    • 一致的响应格式

需要具有适当权限的 GitHub 个人访问令牌。 实施强大的错误处理,具有标准化的错误对象和详细的日志记录。 具有自动速率限制处理,以防止 GitHub API 限制。

Ntfy MCP 服务器

GitHub TypeScript Model Context Protocol Version License Status GitHub

一个 MCP 服务器,旨在与 ntfy 推送通知服务进行交互。它使 LLM 和 AI 代理能够向您的设备发送通知,并具有广泛的自定义选项。

  • 📱 推送通知

    • 向移动和桌面设备发送通知
    • 支持可自定义的优先级(1-5 级)
    • 用于快速视觉分类的表情符号标签
    • 标题和消息自定义
    • 可点击的通知操作
  • 🔔 高级功能

    • 具有多种类型(查看、http、广播)的操作按钮
    • 具有自定义命名的文件附件
    • 延迟交付计划
    • 电子邮件转发选项
    • Firebase 云消息传递集成
  • 📊 配置选项

    • 自定义 ntfy 服务器 URL 支持
    • 默认主题配置
    • Markdown 格式
    • 消息过期设置
    • 通知缓存控制
  • 🔧 集成

    • 通过环境变量进行简单配置
    • 全局 npm 包安装选项
    • 与所有 MCP 客户端兼容
    • 用于主题发现的一致资源公开
    • 具有全面验证的类型安全 API

使用 ntfy.sh 轻松设置 - 无需帐户,只需在 ntfy 应用程序中订阅您的主题即可。 通过 NTFY_BASE_URL 环境变量支持自托管 ntfy 实例。 使用标准化的 MCP 工具和资源,以便与任何 MCP 兼容的 LLM 代理无缝集成。

🚀 入门指南

  1. 浏览指南 以了解 MCP 概念和实现方法
  2. 选择一个服务器,该服务器与您的用例匹配,并按照其安装说明进行操作
  3. 连接到 MCP 兼容的客户端 或使用客户端开发指南构建您自己的客户端
  4. 通过提交问题或拉取请求进行试验和贡献

📄 许可证

Apache 2.0 License


<div align="center"> 由 <a href="https://github.com/cyanheads">cyanheads</a> 使用模型上下文协议创建 </div>

推荐服务器

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
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

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

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

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

本地
Python