mcpField
C
crimson-crab-mcp-template

crimson-crab-mcp-template

本地服务
github.com/singhpratech开发工具012 周前更新

关于 crimson-crab-mcp-template

crimson-crab-mcp-template 是面向开发者的 Rust 入门模板,通过 crimson-crab SDK 使用 Anthropic 的 Claude API 构建 MCP 服务。它提供提示词请求、多轮聊天、Token 计数和模型信息查询工具。

主要功能

  1. 01发送单条 Claude 请求
  2. 02支持多轮对话
  3. 03按模型计算 Token 数
  4. 04列出可用的 Claude 模型
  5. 05获取模型限制和元数据

适用场景

  1. 01以 Rust 开始构建 Claude MCP 服务
  2. 02发送提示词并延续对话历史
  3. 03调用 API 前估算输入 Token
  4. 04查看 API 密钥可用的模型

MCP 相关

该服务通过 stdio 与 MCP 客户端通信,并提供 Claude 请求、聊天、Token 计数和模型信息等五种工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Rust 中由 Claude 驱动的 MCP 服务(入门模板)

crimson-crab-mcp-template MCP 服务 crates.io license

一个精简且可用于生产环境的模型上下文协议 (MCP)服务,以 Rust 编写,通过 crimson-crab SDK 接入 Anthropic 的 Claude API。它提供五个 工具:ask_claude(发送提示词并获取 Claude 的回复)、chat(多轮 对话)、count_tokens(计算提示词的费用而不实际运行)、list_models (列出 API 密钥可使用的模型)以及 get_model(获取单个模型的限制和 元数据)。

可将其用作参考起点,构建自己的 Rust Claude 驱动型 MCP 工具。

使用此模板

在 GitHub 上点击 Use this template,或使用 cargo generate 生成一个全新的项目:

cargo generate --git https://github.com/singhpratech/crimson-crab-mcp-template

也可以直接克隆:

git clone https://github.com/singhpratech/crimson-crab-mcp-template

快速入门

export ANTHROPIC_API_KEY=sk-ant-...
cargo run

服务通过 stdio 通信,因此直接运行时只会等待 MCP 客户端连接。所有日志都写入 stderr,stdout 专用于 MCP 协议。设置 RUST_LOG=debug 可输出更详细的日志。

要构建一个优化后的二进制文件,可将客户端指向:

cargo build --release
# -> target/release/crimson-crab-mcp-template

将其接入 Claude Desktop

在 Claude Desktop MCP 配置文件 (claude_desktop_config.json)中添加一条配置,指向构建好的二进制文件,并通过环境传入 API 密钥:

{
  "mcpServers": {
    "claude-via-crimson-crab": {
      "command": "/absolute/path/to/target/release/crimson-crab-mcp-template",
      "env": {
        "ANTHROPIC_API_KEY": "sk-ant-..."
      }
    }
  }
}

重启 Claude Desktop,即可使用 ask_claude、chat、count_tokens、 list_models 和 get_model 工具。

工具

ask_claude
参数类型必填说明
promptstring是要发送给 Claude 的提示词。
systemstring否可选的系统提示词。

构建 Claude Messages 请求(默认使用 claude-opus-5 模型), 调用 API,并返回 Claude 回复中拼接后的文本。

chat
参数类型必填说明
messagesarray是到目前为止的对话,按时间从早到晚排列:{role, content},其中 role 是限定为 "user" 或 "assistant" 的枚举。必须以用户轮次结束。
systemstring否可选的系统提示词。
modelstring否模型 ID(默认为 ask_claude 使用的模型)。
max_tokensinteger否要生成的最大令牌数(默认为 1024)。

将完整的消息历史发送给 Claude,并返回下一条回复;当调用方需要在多轮对话间保留上下文时,请使用此工具,而不是 ask_claude。

count_tokens
参数类型必填说明
promptstring是要计算令牌数的提示词。
systemstring否计数时一并包含的可选系统提示词。
modelstring否用于计数的模型 ID(计数结果因模型而异)。

返回提示词会占用的输入令牌数,而不实际运行提示词,可用于在进行高成本调用前估算费用。

list_models
ParameterTypeRequiredDescription
limitintegerno返回的模型数量上限。

返回配置的 API 密钥可用的每个 Claude 模型的 ID、显示名称和发布日期。

get_model
ParameterTypeRequiredDescription
modelstringyes要查询的模型 ID,例如 claude-opus-5。

返回模型的显示名称、发布日期、上下文窗口 (max_input_tokens)和最大输出 token 数。

所有工具的错误都会作为 MCP 工具错误返回,而不会触发 panic。 Claude 客户端会在启动时创建一次,并在后续调用中重复使用。

使用 crimson-crab 构建

此模板使用 crimson-crab 构建, 这是一个面向生产环境的 Anthropic Claude API Rust SDK。源代码: https://github.com/singhpratech/crimson-crab。

许可证

可选择使用以下任一许可证:


crimson-crab 是一个独立的开源项目,与 Anthropic 无关联。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。