
A production-ready Model Context Protocol (MCP) server for interacting with USCardForum, a Discourse-based community focused on US credit cards, points, miles, and financial optimization.
概览
A production-ready Model Context Protocol (MCP) server for interacting with USCardForum, a Discourse-based community focused on US credit cards, points, miles, and financial optimization. - organized into 4 logical groups: - 📰 (5) — Find topics via hot/new/top/search/categories - 📖 (3) — Access topic content with pagination - 👤 (9) — Profile research, badges, activity, social - 🔐 (5) — Login, notifications, bookmarks, subscriptions - for guided research workflows (Chinese) - for quick data access - — stdio, SSE, Streamable HTTP - with Pydantic domain models - with exponential backoff - via cloudscraper - deployment configuration The server supports three transport modes: - (default): Standard input/output, used by Cursor and Claude Desktop - : Server-Sent Events over HTTP - : Streamable HTTP transport (recommended for web deployments) When using streamable-http transport, you can require clients to authenticate with a bearer token by setting NITAN_TOKEN: This is useful for...
README
以下为原文 README 节选,完整内容请查看原文。
USCardForum MCP Server
A production-ready Model Context Protocol (MCP) server for interacting with USCardForum, a Discourse-based community focused on US credit cards, points, miles, and financial optimization.
Features
- 22 Tools organized into 4 logical groups:
- 📰 Discovery (5) — Find topics via hot/new/top/search/categories
- 📖 Reading (3) — Access topic content with pagination
- 👤 Users (9) — Profile research, badges, activity, social
- 🔐 Auth (5) — Login, notifications, bookmarks, subscriptions
- 4 Prompts for guided research workflows (Chinese)
- 3 Resources for quick data access
- Multiple Transports — stdio, SSE, Streamable HTTP
- Strongly Typed with Pydantic domain models
- Rate Limiting with exponential backoff
- Cloudflare Bypass via cloudscraper
- Heroku Ready deployment configuration
Project Structure
uscardforum/
├── src/uscardforum/
│ ├── __init__.py # Package exports
│ ├── client.py # Main client (composes APIs)
│ ├── server.py # FastMCP server (MCP layer)
│ ├── server_core.py # Server configuration
│ ├── models/ # Domain models (Pydantic)
│ │ ├── topics.py # Topic, Post, TopicInfo, TopicSummary
│ │ ├── users.py # UserSummary, UserAction, Badge, etc.
│ │ ├── search.py # SearchResult, SearchPost, SearchTopic
│ │ ├── categories.py # Category, CategoryMap
│ │ └── auth.py # Session, Notification, Bookmark, etc.
│ ├── api/ # API modules (backend)
│ │ ├── base.py # Base API with HTTP methods
│ │ ├── topics.py # Topic operations
│ │ ├── users.py # User profile operations
│ │ ├── search.py # Search operations
│ │ └── auth.py # Authentication operations
│ ├── server_tools/ # MCP tool definitions
│ └── utils/ # HTTP and Cloudflare utilities
├── tests/ # Integration tests
├── .github/workflows/ # CI/CD workflows
│ ├── ci.yml # Tests, linting, type checking
│ └── deploy.yml # Multi-platform deployment
├── Dockerfile # Container build
├── docker-compose.yml # Local development
├── fly.toml # Fly.io configuration
├── railway.toml # Railway configuration
├── render.yaml # Render blueprint
├── koyeb.yaml # Koyeb configuration
├── digitalocean-app.yaml # DigitalOcean App Platform
├── cloudbuild.yaml # Google Cloud Build
├── heroku.yml # Heroku manifest
├── app.json # Heroku button config
├── Procfile # Heroku process
└── pyproject.toml # Python package config
Installation
Using UV (Recommended)
# Clone the repository
git clone https://github.com/uscardforum/mcp-server.git
安装
docker run -d \配置
{
"mcpServers": {
"uscardforum": {
"command": "uv",
"args": ["--directory", "/path/to/uscardforum", "run", "uscardforum"],
"env": {
"NITAN_USERNAME": "your_forum_username",
"NITAN_PASSWORD": "your_forum_password"
}
}
}
}