URL缩短服务

一个生产就绪的URL缩短服务,提供分析功能和原生MCP工具支持。

  • by sujeetgund
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 sujeetgund/smolurls

使用说明


一个干净的、可用于生产的URL缩短器,具有分析和原生MCP工具——基于FastAPI+FastMCP和Next.js构建,从单个后端端口提供服务。

特性

  • 使用可选自定义别名快速缩短URL
  • 使用每次点击事件数据(IP、用户代理、引用者)重定向跟踪
  • 用于代理本机访问的MCP工具——缩短、查找、列表和分析
  • 单一服务表面:同一端口上的REST API+MCP
  • Next.js前端,带有分析图表

文档

文档 描述
docs/backend.md FastAPI服务——路由、架构、数据库模式、部署
docs/mcp.md MCP端点——工具、传输、客户端设置(Claude Desktop、Cursor等)
docs/frontend.md Next.js前端-页面,API客户端,环境变量

快速开始

后端

cd backend
$env:DATABASE_URL = "postgresql+psycopg://postgres:postgres@localhost:5432/smolurls"
$env:BASE_URL     = "http://127.0.0.1:8000/api/v1"
uv sync
uv run uvicorn main:app --reload

前端

cd frontend
pnpm install
pnpm dev

项目结构

smolurls/
├── backend/          # FastAPI + FastMCP service
├── frontend/         # Next.js application
└── docs/             # Documentation
    ├── backend.md
    ├── mcp.md
    └── frontend.md