MCP 协议没那么神秘:我写了个 Server 连到 Claude Code,20 分钟搞定
上个月有个需求特别烦——团队内部有一堆 API 文档散落在不同的 Confluence 页面和 Markdown 文件里,每次写代码想查个接口定义,得切出去翻半天。我就想,能不能让 Claude Code 直接读这些文档?试了各种方案。把文档喂到 prompt 里?上下文窗口撑不住。做成 RAG?太重了,连个向量数据库都不值当。后来看到 MCP(Model Context Protocol),才意识到我要的就是这东西。MCP 是什么?我的理解一句话:MCP 就是给 AI 模型开了个后门,让它能自己决定去读什么数据、调什么工具。不是我给你塞一堆上下文,而是它需要什么就自己来拿。背后就是个标准的 Client-Server 架构:Claude Code 作为 Host 内置了 MCP Client,你写一个 MCP Server 暴露工具或数据,两者通过 JSON-RPC 通信。官方的说法是 AI 应用的 USB-C 接口,我倒觉得更像是一个问路机制——模型不知道路怎么走不要紧,它知道问就行了。开干:写一个能读 Markdown 文档的 MCP Server我选了 Python,因为 FastMCP 这个库把协议细节都封装好了,pip install 就行。from fastmcp import FastMCP mcp = FastMCP("docs-server") @mcp.tool() def search_docs(query: str) - str: """在团队文档中搜索匹配的内容""" import glob, os results = [] for f in glob.glob("/path/to/docs/**/*.md", recursive=T