模型上下文协议演示

一个展示模型上下文协议(MCP)功能的演示仓库,提供语言分析工具和学术研究辅助功能。

  • by dachenlian
  • Jupyter Notebook
  • 本地部署
  • 更新于
在 GitHub 查看 dachenlian/mcp-demo

使用说明

MCP演示

演示存储库展示 模型上下文协议(MCP).

概述

此存储库包含:

  • 自定义MCP服务器 (server.py):使用FastMCP构建的语言分析服务器,提供:

    • 用于文本检索的语料库资源
    • 语言分析工具(TTR计算、字数统计等)
    • 常见分析工作流的预构建提示
  • Jupyter笔记本 (notebooks/):

    • mcp_short.ipynb:全面介绍MCP概念、架构和设计原则
    • mcp_long.ipynb:附加示例的扩展教程
  • 演示演练 (DEMO_WALKTHROUGH.md):课堂演示分步指南,展示如何使用VS Code:

    • 使用我们新创建的语言分析MCP服务器
    • 从arXiv搜索和下载学术论文
    • 执行人工智能辅助的研究分析

使用GitHub代码空间

如果你不想在本地设置环境,你可以使用GitHub Codespace在云中运行演示。只需点击 Code 位于存储库页面顶部的按钮,然后选择 Open with Codespaces 创建新的代码空间实例。

先决条件

1.安装 紫外线

macOS🍎 和Linux🐧

使用 curl 下载脚本并使用执行 sh:

curl -LsSf https://astral.sh/uv/install.sh | sh

如果你的系统没有 curl,您可以使用 wget:

wget -qO- https://astral.sh/uv/install.sh | sh

视窗🪟

使用 irm 下载脚本并使用执行 iex:

PS> powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

更改 执行策略 允许从互联网运行脚本。

通过在URL中包含特定版本来请求:

PS> powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/0.9.12/install.ps1 | iex"

2.安装依赖项

# Install dependencies
uv sync

3.配置MCP服务器

添加到 .vscode/mcp.json:

{
    "servers": {
        "linguistHelper": {
            "type": "stdio",
            "command": "uv",
            "args": ["run", "fastmcp", "run", "server.py"]
        },
        "arxiv-mcp-server": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "arxiv-mcp-server",
                "--storage-path",
                "./data/arxiv_storage"
            ]
        }
    }
}

什么是MCP?

这 模型上下文协议(MCP) 就像USB-C for AI一样,这是一种通用标准,允许任何AI助手通过单一协议访问您的工具和数据。

与REST API的主要区别:

  • 行动导向的 (动词)不以资源为导向(名词)
  • AI发现能力 自动无需阅读文档
  • 服务器端逻辑 处理复杂性,而不是人工智能客户端
  • 内置安全 凭据保留在服务器端

演示用例

  1. 自定义语言工具:构建特定领域的分析能力
  2. 学术研究:在人工智能的帮助下搜索、下载和分析论文
  3. 语料库分析:提供对语言数据集的结构化访问
  4. 多服务器集成:无缝结合自定义和第三方MCP服务器

存储库结构

mcp-demo/
├── server.py                 # Custom linguistic analysis MCP server
├── notebooks/
│   ├── mcp_short.ipynb      # MCP introduction and tutorial
│   ├── mcp_long.ipynb       # Extended examples
├── DEMO_WALKTHROUGH.md      # Classroom demo script
├── paper_analysis.md        # Example analysis output
├── .vscode/
│   └── mcp.json            # MCP server configuration
└── data/                    # Data storage (gitignored)

学习资源