内容
# flutter-stripe-mcp
一个MCP服务器,用于诊断Flutter + Stripe([flutter_stripe](https://pub.dev/packages/flutter_stripe))的设置问题,以便Claude可以自动检查您的项目。
## 功能
三个工具:一个用于诊断本地项目设置,另外两个用于在GitHub上搜索已知问题及其解决方法。
`diagnose_setup` 接受您的Flutter项目根目录的路径,并运行所有检查:
| 检查 | 要求 |
|-------|-------------|
| `kotlin` | Kotlin版本 >= 1.9.0(从`android/settings.gradle`或旧版`android/build.gradle`读取) |
| `gradle_wrapper` | Gradle包装器 >= 8.0 |
| `android_themes` | 主题样式派生自`Theme.AppCompat.*`、`Theme.MaterialComponents.*`或`Theme.Material3.*` |
| `main_activity` | `MainActivity`扩展`FlutterFragmentActivity`(而非`FlutterActivity`) |
| `proguard_rules` | `proguard-rules.pro`包含所有必需的Stripe规则 |
| `ios_deployment_target` | iOS部署目标 >= 13.0(来自`Podfile`或`project.pbxproj`) |
| `ios_camera_permission` | 在`Info.plist`中设置`NSCameraUsageDescription`(建议 - 需要用于卡片扫描) |
结果按名称列出通过的检查,并为每个发现的问题返回修复指令。没有`android/`或`ios/`目录的平台将被跳过。
### 检查已知问题
另外两个工具允许Claude检查问题是否是[flutter_stripe GitHub仓库](https://github.com/flutter-stripe/flutter_stripe)中已文档化的已知问题,并直接从讨论中读取解决方法:
| 工具 | 目的 |
|------|---------|
| `search_flutter_stripe_issues(query, state="all", limit=10)` | 按关键词搜索问题(例如错误消息);返回标题、状态和简短摘录。 |
| `get_flutter_stripe_issue(issue_number)` | 获取某个问题的完整正文和所有评论,以找到实际的解决方法。 |
这些工具使用GitHub的公共搜索API,未认证时每小時限制60次请求。如果达到速率限制,工具会返回明确的错误,而不是静默失败。可选地,设置`GITHUB_TOKEN`(或`GH_TOKEN`)环境变量,将其提高到每小時5,000次请求 - 无需其他配置。
## 安装
```bash
pip install flutter-stripe-mcp
```
或使用`uv`:
```bash
uv tool install flutter-stripe-mcp
```
## 添加到Claude Desktop
打开`~/Library/Application Support/Claude/claude_desktop_config.json`并添加:
```json
{
"mcpServers": {
"flutter-stripe-mcp": {
"command": "flutter-stripe-mcp"
}
}
}
```
重启Claude Desktop。Claude现在可以访问诊断工具。
## 添加到Claude Code
```bash
claude mcp add flutter-stripe-mcp -- flutter-stripe-mcp
```
## 用法
询问Claude:
> "检查我的Flutter项目在`/path/to/myapp`是否正确设置为flutter_stripe。"
Claude调用`diagnose_setup`并带有项目根目录,并准确告诉您需要修复的内容。
## 开发
```bash
uv sync
uv run pytest
```
参见[DEVELOPMENT.md](DEVELOPMENT.md),了解使用MCP Inspector在本地运行服务器。