初始mcp
一个包裹 开端的AERO v1 REST API,将语料库管理操作公开为MCP工具和CLI命令。
注释始终由INCEpTION界面内的人工注释器执行。 此包不进行注释:它处理语料库管理任务(上传、导出、监控、导入),这些任务可以自动化或委托给代理。
"Upload all .txt files in gutenberg/processed/ to project 1."
"Export annotations for document 42 by user admin in ctsv3 format to data/annot.tsv."展示INCEpTION的AERO v1 REST API为:
- MCP工具 --可从任何MCP兼容代理(Claude Code、Claude Desktop等)调用
- 命令行界面 --独立终端接口,无需AI代理
两者共享相同的基础 InceptionClient.
用例
| 场景 | 如何 |
|---|---|
| 大规模上传语料库 | 批量上传数百个文档到一个项目 |
| 管道管理 | 链上传→ 监督进展→ 导出已完成的注释 |
| 进度监控 | 列出每个用户的所有文档及其注释状态 |
| 导出和后处理 | 导出ctsv3/XMI注释并将其导入解析脚本 |
| 多项目管理 | 无需离开终端即可创建、检查和归档项目 |
______________________________________________________________________
特性
| 功能 | MCP服务器 | CLI |
|---|---|---|
| 列出/创建/删除项目 | ✓ | ✓ |
| 导出/导入项目ZIP(架构+文档+注释) | ✓ | ✓ |
| 项目进度状态 | ✓ | ✓ |
| 列出/上传/删除文档 | ✓ | ✓ |
| 批量上传文档文件夹 | ✓ | ✓ |
| 导出文档源 | ✓ | ✓ |
| 按用户列出注释 | ✓ | ✓ |
| 导出/导入注释(13种格式) | ✓ | ✓ |
| 导出项目的所有注释 | ✓ | ✓ |
| 按用户删除注释 | ✓ | ✓ |
| 导出/删除管理层 | ✓ | ✓ |
支持的导出格式: ctsv3, xmi, xmi-struct, conllu, conll2003, conll2006, conll2009, conll2012, text, tcf, jsoncas, jsoncas-struct, nif.
______________________________________________________________________
需求
- Python≥3.10
- 正在运行的INCEpTION实例(用INCEpTION 33+测试) 启用REST API时 (见下文)
uv(推荐)或pip
______________________________________________________________________
启用INCEpTION REST API
在使用此软件包之前,必须启用AERO v1 REST API。请参阅 正式公司文件 以获取说明。
启用后,API可在 http://: /api/aero/v1Swagger用户界面可在以下网址获得:
http://:
/swagger-ui.html身份验证使用HTTP基本身份验证和您的INCEpTION凭据。
______________________________________________________________________
安装
紫外线(推荐)
git clone https://github.com/RaphFaure/inception-mcp
cd inception-mcp
uv sync使用pip
git clone https://github.com/RaphFaure/inception-mcp
cd inception-mcp
pip install -e .______________________________________________________________________
配置
连接参数从环境变量(或 .env 项目根目录下的文件):
| 变量 | 默认值 | 描述 |
|---|---|---|
INCEPTION_URL | http://localhost:8080 | INCEpTION实例的基本URL |
INCEPTION_USER | admin | 用户名 |
INCEPTION_PASSWORD | *(空)* | 密码 |
创建一个 .env 文件:
cp .env.example .env
# then edit .env with your credentials______________________________________________________________________
用法--MCP服务器
克劳德桌面版
将以下块添加到您的 ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"inception": {
"command": "uv",
"args": ["run", "--directory", "/absolute/path/to/inception-mcp", "inception-mcp"],
"env": {
"INCEPTION_URL": "http://localhost:8080",
"INCEPTION_USER": "admin",
"INCEPTION_PASSWORD": "your_password"
}
}
}
}重新启动克劳德桌面。INCEpTION工具将自动出现。
克劳德代码(Claude.ai/Code)
在下面添加相同的块 mcpServers 在您的项目中 .claude/settings.json 或在 ~/.claude/settings.json.
可用的MCP工具
项目
| 工具 | 说明 |
|---|---|
list_projects | 列出所有可访问的项目 |
create_project(name, description?) | 创建新项目 |
delete_project(project_id) | ⚠️ 删除项目及其所有文档 |
export_project_zip(project_id, output_path) | 将整个项目导出为ZIP |
import_project_zip(zip_path) | 从ZIP导入项目 |
project_status(project_id) | 显示每个文档的注释进度 |
文件
| 工具 | 说明 |
|---|---|
list_documents(project_id) | 列出项目中的文档 |
upload_document(project_id, file_path, fmt?) | 上传单个文件 |
batch_upload(project_id, folder_path, fmt?, glob?) | 上传文件夹中的所有文件 |
export_document_source(project_id, document_id, output_path, fmt?) | 导出文档来源 |
delete_document(project_id, document_id) | ⚠️ 删除文档 |
注释
| 工具 | 说明 |
|---|---|
list_annotations(project_id, document_id) | 列出每个用户的注释 |
export_annotations(project_id, document_id, user, fmt?, output_path?) | 导出注释 |
export_all_annotations(project_id, user, output_dir, fmt?) | 导出项目中的所有文档 |
import_annotations(project_id, document_id, user, file_path, fmt?, state?) | 导入注释 |
delete_annotations(project_id, document_id, user) | ⚠️ 删除用户的注释 |
策展
| 工具 | 说明 |
|---|---|
export_curation(project_id, document_id, fmt?, output_path?) | 导出策划的注释 |
delete_curation(project_id, document_id) | ⚠️ 删除策划的注释 |
______________________________________________________________________
用法--CLI
# via uv
uv run inception-cli
# or, if installed via pip
inception-cli 全局选项
--url URL INCEpTION (overrides $INCEPTION_URL)
--user Username (overrides $INCEPTION_USER)
--password Password (overrides $INCEPTION_PASSWORD)命令
# Projects
inception-cli list-projects
inception-cli create-project --name my_project
inception-cli status --project 1
inception-cli export-project --project 1 --out backup.zip
inception-cli import-project --zip backup.zip
inception-cli delete-project --project 1
# Documents
inception-cli list-documents --project 1
inception-cli upload --project 1 --file doc.txt --format text
inception-cli batch-upload --project 1 --folder ./texts --glob "*.txt"
inception-cli export-doc-source --project 1 --doc 42 --out source.txt
inception-cli delete-doc --project 1 --doc 42
# Annotations
inception-cli list-annotations --project 1 --doc 42
inception-cli export --project 1 --doc 42 --user admin --format ctsv3 --out annot.tsv
inception-cli export-all --project 1 --user admin --out-dir ./annotations
inception-cli import-annotations --project 1 --doc 42 --user admin --file annot.tsv
inception-cli delete-annotations --project 1 --doc 42 --user admin
# Curation
inception-cli export-curation --project 1 --doc 42 --format ctsv3 --out curation.tsv
inception-cli delete-curation --project 1 --doc 42______________________________________________________________________
建筑
inception_mcp/
├── __init__.py # Public exports: InceptionClient, InceptionError
├── client.py # InceptionClient — HTTP layer over AERO v1 REST API
├── server.py # FastMCP server — wraps client as MCP tools
└── cli.py # argparse CLI — wraps client as shell commands
tests/
└── test_client.py # Unit tests (22 tests, no INCEpTION instance required)client.py 是所有API调用的唯一真相来源。添加新操作意味着只需执行一次 InceptionClient,然后将其暴露在 server.py (作为a @mcp.tool())和in cli.py (作为一个新的子命令)。
使用以下工具运行测试:
pip install pytest
pytest tests/______________________________________________________________________
安全说明
破坏性行动是不可逆转的。delete_project,delete_document,delete_annotations和delete_curationINCEpTION中没有撤消机制。在调用ID之前,始终验证它们。
服务器在本地运行,只能从启动它的计算机访问。 凭据是从环境变量中读取的,永远不要将其硬编码在文件中 致力于版本控制。这 .gitignore 在此存储库中不包括 .env.
______________________________________________________________________
INCEpTION API参考
完整的AERO v1 Swagger用户界面可在以下网址获得:
http://:
/swagger-ui.html______________________________________________________________________
许可证
麻省理工学院 --只要保留原始版权声明,您就可以在任何项目中自由使用、修改和重新分发此软件,无论是否商业化。
