关于 astro-mcp
astro-mcp 是面向 Astro 项目开发的实验性 MCP 服务,以 Astro 集成的形式安装。它向模型提供无法仅从项目文件中获取的运行时信息、文档和集成详情。
主要功能
- 01获取 Astro 配置与开发服务器地址
- 02列出项目路由及其类型与预渲染状态
- 03查询 Astro 集成的元数据与变更日志
- 04搜索 Astro 文档内容
- 05支持通过 mcp:setup 钩子扩展自定义工具
适用场景
- 01让模型了解当前 Astro 项目的路由结构
- 02查询已启用集成的详细信息
- 03在编辑器中为 Astro 项目提供上下文
MCP 相关
该项目作为 Astro 集成运行,在开发服务器上提供 MCP 端点 /__mcp/sse,向客户端暴露配置、路由、文档等工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
astro-mcp
用于支持 Astro 项目开发的 MCP 服务,灵感来自 antfu 的 nuxt-mcp。
重要
此软件包处于实验阶段,尚不稳定。使用时请谨慎。
astro-mcp 旨在帮助模型更好地理解你的 Astro 项目,为其提供仅查看项目文件难以获取的信息,例如:
- Astro 服务的运行时信息
- 最新的 Astro 文档内容
- 你正在使用的 Astro 集成信息
安装
在你的 Astro 项目目录中运行以下命令:
npx astro add astro-mcp
手动安装
首先,安装 astro-mcp 软件包:
npm install astro-mcp
然后,将 astro-mcp 集成添加到 Astro 配置中:
import { defineConfig } from "astro/config";
import mcp from "astro-mcp";
export default defineConfig({
integrations: [mcp()],
});
用法
安装集成后,MCP 服务将在 http://localhost:4321/__mcp/sse 上提供。要连接,请在适合你的编辑器或工具的位置创建一个空配置文件:
| 编辑器/工具 | 配置文件 |
|---|---|
| VSCode | .vscode/mcp.json |
| Cursor | .cursor/mcp.json |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| Claude Code | .mcp.json |
Astro 服务启动时,astro-mcp 会自动更新该文件。
扩展 MCP 服务
astro-mcp 提供了一个名为 mcp:setup 的钩子,其他集成可以利用它来扩展 MCP 服务。如果你想向 MCP 服务添加自定义工具,这会很有用。
export default function createExampleIntegration(): AstroIntegration {
return {
name: "example-integration",
hooks: {
"mcp:setup": async ({ mcp }) => {
mcp.tool("add", { a: z.number(), b: z.number() }, async ({ a, b }) => ({
content: [{ type: "text", text: String(a + b) }],
}));
},
},
};
}
工具
get-astro-config:获取 Astro 配置对象,其中包含全面的项目设置,包括文件路径(root、src、public、output 目录)、网站 URL、构建选项、服务设置、已启用的集成、Markdown 处理配置、图像处理、Vite 插件、安全设置和实验性功能- 参数:无
list-astro-routes:列出 Astro 项目的详细路由信息,包括所有路由的文件入口点、URL 模式、动态参数、预渲染状态和路由类型。还可按类型筛选,以便聚焦特定路由类别- 参数:
type(字符串,可选):redirect、page、endpoint或fallback
- 参数:
get-astro-server-address:获取正在运行的 Astro 开发服务的当前网络地址、IP 协议族和端口号- 参数:无
list-astro-integrations:列出生态系统中所有可用的 Astro 集成- 参数:无
get-astro-integration:获取特定 Astro 集成的详细元数据,包括其名称、描述、类别、仓库链接、npm 信息、相关网站链接、官方状态和下载统计数据- 参数:
name(字符串):要获取信息的 Astro 集成名称
- 参数:
search-astro-docs:搜索 Astro 文档中的特定主题、概念或功能。返回与你的查询相匹配的相关文档片段- 参数:
query(字符串):要搜索的查询
- 参数:
get-astro-changes:获取 Astro 相关软件包的变更日志- 参数:
packageName(字符串):要获取变更日志的 Astro 相关软件包名称
- 参数:
来自 vite-plugin-mcp 的工具
get-vite-config:获取 Vite 配置摘要,包括 root、resolve、plugins 和环境名称- 参数:无
get-vite-module-info:获取模块的图信息,包括导入方、导入的模块和编译结果- 参数:
filepath(字符串):模块的绝对文件路径
- 参数:
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。