Langextract Mcp

Langextract Mcp

🚀 LangExtract MCP 服务器

LangExtract MCP 服务器是一个基于 Google langextract 库的 FastMCP 服务器。它允许像 Claude Code 这样的 AI 助手,通过 MCP 接口利用大语言模型从非结构化文本中提取结构化信息。

🚀 快速开始

概述

LangExtract 是一个 Python 库,它利用大语言模型从文本文档中提取结构化信息,同时保持精确的来源定位。这个 MCP 服务器通过模型上下文协议(Model Context Protocol)将 langextract 的功能暴露出来。服务器具备智能缓存、持久连接和服务器端凭证管理等特性,能够在像 Claude Code 这样的长期运行环境中提供最佳性能。

针对 Claude Code 的快速设置

前提条件

  • 已安装并配置好 Claude Code
  • 拥有 Google Gemini API 密钥(在此获取
  • Python 3.10 或更高版本

安装

使用内置的 MCP 管理功能直接在 Claude Code 中安装:

claude mcp add langextract-mcp -e LANGEXTRACT_API_KEY=your-gemini-api-key -- uv run --with fastmcp fastmcp run src/langextract_mcp/server.py

服务器将自动启动并与 Claude Code 集成,无需额外配置。

验证

安装完成后,在 Claude Code 中输入以下命令验证集成情况:

/mcp

你应该会看到表明服务器正在运行的输出,并且可以进入服务器查看其工具内容。

✨ 主要特性

服务器提供了以下用于文本提取工作流的工具:

核心提取工具

  • extract_from_text - 从提供的文本中提取结构化信息
  • extract_from_url - 从网页内容中提取信息
  • save_extraction_results - 将提取结果保存为 JSONL 格式
  • generate_visualization - 创建交互式 HTML 可视化

更多信息可查看 src/langextract_mcp/resources 下客户端可用的资源。

💻 使用示例

基础文本提取

使用自然语言要求 Claude Code 提取信息:

Extract medication information from this text: "Patient prescribed 500mg amoxicillin twice daily for infection"

Use these examples to guide the extraction:
- Text: "Take 250mg ibuprofen every 4 hours"
- Expected: medication=ibuprofen, dosage=250mg, frequency=every 4 hours

高级配置

对于复杂的提取任务,指定配置参数:

Extract character emotions from Shakespeare using:
- Model: gemini-2.5-pro for better literary analysis
- Multiple passes: 3 for comprehensive extraction
- Temperature: 0.2 for consistent results

URL 处理

直接从网页内容中提取信息:

Extract key findings from this research paper: https://arxiv.org/abs/example
Focus on methodology, results, and conclusions

🔧 技术细节

支持的模型

此服务器目前仅支持 Google Gemini 模型,针对具有高级模式约束的可靠结构化提取进行了优化:

  • gemini-2.5-flash - 推荐默认值 - 在速度、成本和质量之间实现了最佳平衡
  • gemini-2.5-pro - 最适合需要最高精度的复杂推理和分析任务

服务器使用持久连接、模式缓存和连接池,以确保与 Gemini 模型的最佳性能。未来版本可能会增加对其他提供商的支持。

配置参考

环境变量

在安装过程中或服务器环境中设置:

LANGEXTRACT_API_KEY=your-gemini-api-key  # 必需

工具参数

通过工具参数配置提取行为:

{
"model_id": "gemini-2.5-flash",     # 语言模型选择
"max_char_buffer": 1000,            # 文本块大小
"temperature": 0.5,                 # 采样温度 (0.0 - 1.0)  
"extraction_passes": 1,             # 提取尝试次数
"max_workers": 10                   # 并行处理线程数
}

输出格式

所有提取操作都返回一致的结构化数据:

{
"document_id": "doc_123",
"total_extractions": 5,
"extractions": [
{
"extraction_class": "medication",
"extraction_text": "amoxicillin",
"attributes": {"type": "antibiotic"},
"start_char": 25,
"end_char": 35
}
],
"metadata": {
"model_id": "gemini-2.5-flash",
"extraction_passes": 1,
"temperature": 0.5
}
}

📚 详细文档

使用场景

LangExtract MCP 服务器支持跨多个领域的广泛用例。在医疗保健和生命科学领域,它可以从临床笔记中提取药物、剂量和治疗方案,对放射学和病理学报告进行结构化处理,以及处理研究论文或临床试验数据。在法律和合规应用中,它能够提取合同条款、当事人和义务,分析监管文件、合规报告和判例法。在研究和学术界,该服务器可用于从论文中提取方法、研究结果和引用,分析调查回复和访谈记录,以及处理历史或档案材料。在商业智能方面,它有助于从客户反馈和评论中提取见解,分析新闻文章和市场报告,以及处理财务文件和收益报告。

支持与文档

主要资源

  • 0 关注
  • 0 收藏,34 浏览
  • system 提出于 2025-09-19 00:33

相似服务问题

相关AI产品