文档管理接口服务

该服务是一个使用Model Context Protocol (MCP)的接口,使Claude AI能够与esa API交互,实现文档的搜索、创建和更新等操作。

  • by kajirita2002
  • JavaScript
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 kajirita2002/esa-mcp-server

使用说明

esa MCP服务器

阅读此内容 日语

概述

此服务器是一个使用 模型上下文协议(MCP) 使Claude AI能够与 esa API.

借助此MCP服务器,Claude AI可以执行搜索、创建和更新esa文档等操作。

关于存储库

此存储库提供了esa MCP服务器的独立实现。它将Claude AI与esa集成在一起,以简化文档管理。

设置

先决条件

  • Node.js 18或更高版本
  • esa API访问令牌
  • esa团队名称

安装

# Install globally
npm install -g @kajirita2002/esa-mcp-server

# Or use directly with npx
npx @kajirita2002/esa-mcp-server

设置环境变量

# Set environment variables
export ESA_ACCESS_TOKEN="your_esa_access_token"
export ESA_TEAM="your_team_name"

MCP配置示例

如果您正在使用此MCP服务器,请将以下配置添加到您的 mcp_config.json 文件:

"esa": {
  "command": "npx",
  "args": ["-y", "@kajirita2002/esa-mcp-server"],
  "env": {
    "ESA_ACCESS_TOKEN": "your_esa_access_token",
    "ESA_TEAM": "your_team_name"
  }
}

启动服务器

# Start the server
npm start

可用工具

此MCP服务器提供以下工具:

相关文章

  1. esa_list_posts

    • 获取团队中的帖子列表
    • 输入:
      • q (字符串,可选):搜索查询
      • include (字符串,可选):要包含在响应中的相关数据(例如“评论、观星者”)
      • sort (字符串,可选):排序方法(更新、创建、数字、星星、手表、评论、best_match)
      • order (字符串,可选):排序顺序(desc,asc)
      • per_page (数字,可选):每页结果数(最大值:100)
      • page (数字,可选):要检索的页码
  2. esa_get_post

    • 获取特定帖子的详细信息
    • 输入:
      • post_number (数字,必填):要检索的帖子编号
      • include (字符串,可选):要包含在响应中的相关数据(例如“评论、观星者”)
  3. esa_create_post

    • 创建新帖子
    • 输入:
      • name (字符串,必填):帖子标题
      • body_md (字符串,可选):帖子正文(Markdown格式)
      • tags (字符串数组,可选):帖子的标签列表
      • category (字符串,可选):帖子类别
      • wip (布尔值,可选,默认值:true):是否标记为WIP(正在进行的工作)
      • message (字符串,可选):更改消息
      • user (字符串,可选):Poster的screen_name(只有团队所有者可以指定)
      • template_post_id (数字,可选):用作模板的帖子的ID
  4. esa_update_post

    • 更新现有帖子
    • 输入:
      • post_number (编号,必填):要更新的帖子编号
      • name (字符串,可选):帖子的新标题
      • body_md (字符串,可选):帖子的新正文(Markdown格式)
      • tags (字符串数组,可选):帖子的新标签列表
      • category (字符串,可选):帖子的新类别
      • wip (布尔值,可选):是否标记为WIP(正在进行的工作)
      • message (字符串,可选):更改消息
      • created_by (字符串,可选):Poster的screen_name(只有团队所有者可以指定)
      • original_revision (字符串,可选):更新所依据的修订

相关评论

  1. esa_list_comments

    • 获取帖子的评论列表
    • 输入:
      • post_number (number,必填):获取评论的帖子编号
      • page (数字,可选):要检索的页码
      • per_page (数字,可选):每页结果数(最大值:100)
  2. esa_get_comment

    • 获取具体评论
    • 输入:
      • comment_id (数字,必填):要检索的评论的ID
      • include (字符串,可选):要包含在响应中的相关数据(例如“观星者”)
  3. esa_create_comment

    • 对文章发表评论
    • 输入:
      • post_number (数字,必填):要评论的帖子编号
      • body_md (字符串,必填):评论正文(Markdown格式)
      • user (字符串,可选):Poster的screen_name(只有团队所有者可以指定)

会员相关

  1. esa_get_members

    • 获取团队成员列表
    • 输入:
      • page (数字,可选):要检索的页码
      • per_page (数字,可选):每页结果数(最大值:100)
  2. esa_get_member

    • 获取特定团队成员的信息
    • 输入:
      • screen_name_or_email (string,必填):要检索的成员的用户名或电子邮件

用法示例

以下是Claude使用此MCP服务器创建esa帖子的示例:

[Claude] Please create a new post in esa. The title should be "Project X Progress Report" and the body should include "# This Week's Progress\n\n- Implementation of Feature A completed\n- Testing of Feature B started\n\n## Next Week's Plan\n\n- Start implementation of Feature C".

[MCP Server] Using the esa_create_post tool to create a new post.

[Result]
{
  "number": 123,
  "name": "Project X Progress Report",
  "body_md": "# This Week's Progress\n\n- Implementation of Feature A completed\n- Testing of Feature B started\n\n## Next Week's Plan\n\n- Start implementation of Feature C",
  "wip": false,
  "created_at": "2023-06-01T12:34:56+09:00",
  "updated_at": "2023-06-01T12:34:56+09:00",
  "url": "https://your-team.esa.io/posts/123"
}

[Claude] The post has been created successfully. The post number is 123, and you can access it at the following URL:
https://your-team.esa.io/posts/123

故障排除

访问令牌问题

Error: Request failed with status code 401

如果您看到此错误,则您的esa访问令牌可能无效或已过期。从esa设置屏幕生成新的访问令牌并更新您的环境变量。

权限问题

Error: Request failed with status code 403

如果您看到此错误,则当前访问令牌没有必要的权限。在esa设置屏幕中检查您的访问令牌的权限,并在需要时颁发新令牌。

许可证

根据MIT许可证提供。