MCP商业服务器
一组使用FastMCP构建的生产就绪MCP(模型上下文协议)服务器示例,旨在教您如何创建解决实际业务问题的服务器。
由...创建 哈米什弗拉梅塔什 - 油管
此存储库是什么
此存储库包含 22台功能齐全的MCP服务器 展示了在构建自己的MCP服务器时可以作为参考的模式、工具和资源。每台服务器都是自包含的,记录良好,并展示了MCP协议的不同方面。
关键见解:这些服务器不需要连接到任何外部应用程序或服务。它们被设计为独立工作,证明您可以构建功能强大、具有商业价值的MCP服务器,而无需复杂的集成。
为什么这很重要
许多MCP教程侧重于连接到外部API(Slack、GitHub、Google等)。但真正的商业价值往往来自:
- 数据组织 -为AI查询构建信息
- 工作流自动化 -创建可重复的流程
- 知识管理 -构建可搜索系统
- 跟踪和分析 -监控习惯、时间、费用
这个存储库证明MCP服务器可以在没有单个外部API密钥的情况下提供所有这些。
服务器概述
联系人和CRM
知识与文档
| 服务器 | 描述 | 主要功能 | 数据文件 |
|---|---|---|---|
| 文档Wiki | 双向链接的Wiki | Wiki链接 [[title]]、类别、标签、反向链接 | wiki.json |
| 卡片盒 | 滑箱笔记系统 | 笔记类型、链接图、集线器检测、孤儿查找 | zettelkasten.json |
| 笔记和想法 | 快速捕获和组织 | 文件夹、固定、归档、想法跟踪 | notes.json |
生产力与规划
| 服务器 | 描述 | 主要功能 | 数据文件 |
|---|---|---|---|
| 职业经理人 | 完整的职业生涯管理系统 | 简历构建器、求职申请、面试练习、技能盘点、人际网络 | ~/.career-manager/*.json |
| 项目经理 | 项目、任务、里程碑、团队 | 任务层次结构、任务分配、进度跟踪 | projects.json |
| 看板 | 带有可视化界面的看板 | Web UI、CLI工具、任务管理、板统计、拖放就绪 | kanban_data.json |
| 会议记录 | 会议、议程、行动项目 | 与会者、笔记、行动项目跟踪 | meetings.json |
| 任务自动机 | 工作流和模板 | 触发器、模板渲染、快速操作 | automator.json |
个人跟踪
| 服务器 | 描述 | 主要功能 | 数据文件 |
|---|---|---|---|
| 习惯追踪器 | 每日习惯跟踪记录 | 签到、记录、排行榜、每周概览 | habits.json |
| 时间追踪 | 使用计时器进行时间跟踪 | 启动/停止计时器、手动记录、计费费率 | time.json |
| 支出追踪器 | 费用和预算管理 | 类别、预算、支出分析 | expenses.json |
| 期刊 | 个人日记条目 | 情绪跟踪、标签、日历视图、写作统计 | journal.json |
公用事业
| 服务器 | 描述 | 主要功能 | 数据文件 |
|---|---|---|---|
| 文件管理器 | 组织和分类文件 | 文件分析、重复检测、组织规则 | organizer.json |
| 库存经理 | 库存和产品管理 | 入库/出库、调拨、低库存警报 | inventory.json |
| 密码保管 | 安全凭证存储 | 加密、密码生成、强度检查 | vault.json |
开发者工具
| 服务器 | 描述 | 主要功能 | 数据文件 |
|---|---|---|---|
| 技能服务器 | 将Claude Code技能作为MCP资源公开 | 技能发现、动态加载、资源URI | 无(读取文件系统) |
| 代码审查员 | 代码审查管理 | 审查会议、问题跟踪、代码标准 | code_reviewer.json |
| 设计审核 | 网页设计审核 | UI/UX问题、设计系统、可访问性检查 | design_audit.json |
| 科技债务追踪 | 技术债务管理 | 债务跟踪、重构任务、质量指标 | tech_debt.json |
快速开始
每个服务器都是独立的,可以独立运行:
# Install FastMCP
pip install fastmcp
# Navigate to any server
cd mcp-servers/contact-book
# Run the server
python server.py数据持久化:每台服务器自动创建一个 data/ 首次使用时使用目录。您的所有数据都存储在JSON文件中,并在服务器重启时保持不变。您可以在以下网址找到您的数据 mcp-servers//data/.json.
关键概念演示
1.工具
每台服务器都公开了AI助手可以调用的工具:
@mcp.tool
def create_contact(name: str, email: str = None) -> dict:
"""Create a new contact."""
# Implementation2.资源
资源提供只读数据访问:
@mcp.resource("contacts://all")
def get_all_contacts() -> str:
"""Resource providing all contacts as formatted list."""
return formatted_contact_list3.持久存储
所有服务器都具有基于JSON的持久存储功能——数据在服务器重启后仍然有效:
# Data persistence setup
DATA_DIR = Path(__file__).parent / "data"
DATA_FILE = DATA_DIR / "contacts.json"
def _load_data() -> dict:
if DATA_FILE.exists():
with open(DATA_FILE, "r", encoding="utf-8") as f:
return json.load(f)
return {"contacts": {}, "next_id": 1}
def _save_data(data: dict) -> None:
DATA_DIR.mkdir(parents=True, exist_ok=True)
with open(DATA_FILE, "w", encoding="utf-8") as f:
json.dump(data, f, indent=2, default=str)每台服务器都将其数据存储在专用的 data/ 目录:
- 自动加载 -服务器启动时的数据加载
- 自动保存 -每次操作后更改都会立即保留
- 便携的 -JSON文件可以轻松备份、迁移或检查
- 无外部依赖关系 -仅使用Python的内置
json模块
备份您的数据:只需复制 data/ 来自任何服务器的文件夹。要重置服务器,请删除其 data/ 文件夹。
4.类型安全
所有工具都使用适当的类型提示来更好地理解AI:
def create_task(
title: str,
priority: str = "medium", # low, medium, high, urgent
due_date: Optional[str] = None
) -> dict:5.控制值的枚举
状态值和类别使用枚举:
class TaskStatus(str, Enum):
TODO = "todo"
IN_PROGRESS = "in_progress"
DONE = "done"架构模式
CRUD模式
大多数服务器遵循一致的CRUD模式:
create_*-创建新记录get_*-按ID检索list_*-带过滤器的列表update_*-修改记录delete_*-删除记录search_*-全文搜索
分析模式
许多服务器都包含分析工具:
get_*_summary-汇总统计数据get_*_history-历史数据get_*_stats-总体指标
链接模式
知识系统使用双向链接:
- 跟踪内容中的传出链接
- 计算反向链接
- 查找笔记之间的路径
- 识别中心笔记和孤立笔记
项目结构
mcp-servers/
├── career-manager/
│ ├── server.py # Career management with 70+ tools
│ ├── README.md # Server-specific documentation
│ └── pyproject.toml # Package configuration
├── contact-book/
│ ├── server.py # Main server implementation
│ ├── README.md # Server-specific documentation
│ └── data/ # Persistent storage (auto-created)
│ └── contacts.json # Contact data
├── crm/
│ ├── server.py
│ └── data/
│ └── crm.json # Leads, deals, customers, interactions
├── document-wiki/
│ ├── server.py
│ └── data/
│ └── wiki.json # Documents, categories
├── expense-tracker/
│ ├── server.py
│ └── data/
│ └── expenses.json # Expenses, budgets, categories
├── file-organizer/
│ ├── server.py
│ └── data/
│ └── organizer.json # Rules, file registry
├── habit-tracker/
│ ├── server.py
│ └── data/
│ └── habits.json # Habits, check-ins
├── inventory-manager/
│ ├── server.py
│ └── data/
│ └── inventory.json # Products, stock, movements
├── kanban-mcp/
│ ├── kanban_server.py
│ ├── models.py
│ ├── storage.py
│ ├── cli.py
│ └── kanban_data.json # Boards, tasks, columns
├── journal/
│ ├── server.py
│ └── data/
│ └── journal.json # Entries, tags
├── meeting-notes/
│ ├── server.py
│ └── data/
│ └── meetings.json # Meetings, action items
├── notes-ideas/
│ ├── server.py
│ └── data/
│ └── notes.json # Notes, folders
├── password-vault/
│ ├── server.py
│ └── data/
│ └── vault.json # Encrypted credentials
├── project-manager/
│ ├── server.py
│ └── data/
│ └── projects.json # Projects, tasks, milestones
├── task-automator/
│ ├── server.py
│ └── data/
│ └── automator.json # Workflows, templates
├── time-tracker/
│ ├── server.py
│ └── data/
│ └── time.json # Time entries, projects
├── zettelkasten/
│ ├── server.py
│ └── data/
│ └── zettelkasten.json # Notes, links, tags
├── skills-server/
│ └── server.py # No persistence (reads from filesystem)
├── code-reviewer/
│ ├── server.py
│ ├── README.md
│ └── data/
│ └── code_reviewer.json # Reviews, issues, standards
├── design-audit/
│ ├── server.py
│ ├── README.md
│ └── data/
│ └── design_audit.json # Audits, issues, design systems
└── tech-debt-tracker/
├── server.py
├── README.md
└── data/
└── tech_debt.json # Debt items, tasks, metrics学习路径
初学者:从这些简单、专注的服务器开始:
- 联系簿-基本CRUD操作
- 笔记和想法-简单的笔记管理
- 习惯跟踪器-每日跟踪模式
中级:这些引入了更复杂的关系:
- 项目经理-分层任务、团队管理
- CRM-多实体关系(潜在客户、交易、客户)
- 会议记录-议程、与会者、行动项目
- 看板-Web UI、CLI工具、板管理
高级:复杂的模式和算法:
- Zettelkasten-链接图、寻路、集线器检测
- 文档维基-维基链接解析,反向链接
- 任务自动机-工作流、触发器、模板渲染
- Skills Server-文件系统扫描、资源模板、动态资源生成
- 职业经理人-简历生成、求职跟踪、面试练习、技能差距分析
- 代码审查员-审查会议、按类别/严重性跟踪问题、代码标准
- 设计审核-设计系统、无障碍合规性、WCAG跟踪
- 科技债务跟踪器-利息跟踪、快照、质量指标
为什么选择FastMCP?
所有服务器都使用 FastMCP 因为它提供了:
- 简单的装饰师 -
@mcp.tool和@mcp.resource - 自动模式生成 -类型提示变成JSON模式
- 内置服务器 -不需要样板代码
- 开发模式 -开发过程中的热重载
贡献
这是一个教育资源库。请随意:
- 将这些服务器用作您自己项目的起点
- 建议改进或新的服务器想法
- 报告问题或文件差距
数据管理
备份
只需复制 data/ 来自任何服务器的目录:
cp -r mcp-servers/contact-book/data/ backup/contact-book/迁移
数据文件是纯JSON格式的,您可以:
- 使用任何文本编辑器直接编辑它们
- 导入/导出到其他系统
- 使用git对数据进行版本控制
重置
要重置服务器的数据,请删除其JSON文件:
rm mcp-servers/contact-book/data/contacts.json服务器将在下次运行时重新启动。
许可证
MIT许可证-免费使用这些示例来学习和构建自己的MCP服务器。
______________________________________________________________________
了解更多关于MCP和AI开发的信息: YouTube-来自科技公司的哈米什
