mcp-db-wrapper-example

mcp-db-wrapper-example

An MCP server that wraps a small SQL database with tools for AI agents to query and insert data. It comes with a demo table for immediate use and can be extended with custom tables and tools.

Category
访问服务器

README

mcp-db-wrapper-example

The foro.sh database starter: an MCP server that wraps a small SQL database. It comes with one demo table (notes) so there's something to query straight away, and tools your AI coding agent can use to read and write it.

Opening this in Claude Code? Nothing to install. The repo ships the skills your agent needs in .claude/skills/: how to deploy this server, and how to add tools that are worth what they cost a model to carry.

Before you deploy

Without any setup, this runs on a local SQLite file that's wiped on every restart and redeploy - fine for trying it out, not for data you care about.

To keep data around, set DATABASE_URL as a secret in your project's Secrets tab (a sqlite:/// URL pointing at a file on a volume you control). For a different kind of database entirely, see Storage below.

Tools

Tool What it does
list_tables() See every table in the database
query(sql, params) Run a read query (SELECT ...) and get the rows back
insert(table, values) Add one row to a table

Make it yours

This is a starting point, not a finished product. Open this repo in Claude Code (or another AI coding agent) and ask it to:

  • add the tables your project actually needs
  • add tools for the specific things you want to do with your data — not just raw query/insert — e.g. find_customer(email), log_event(...)
  • point it at a real database once you have one (see Storage below)

You don't need to know FastMCP or the Model Context Protocol to do any of this — describe what you want in plain language and let the agent write the code.

Storage

The database type is declared in pyproject.toml:

[tool.mcp-db-wrapper]
database = "sqlite"

server.py reads this and refuses to boot if DATABASE_URL doesn't match it (e.g. a non-sqlite:/// URL while database = "sqlite"), since the type is config, not something inferred from whatever URL happens to be set.

By default, with no DATABASE_URL secret, this runs on /tmp/db.sqlite3, created automatically, no setup required, and wiped on every restart and redeploy (the platform mounts no persistent volumes). Set DATABASE_URL to a sqlite:/// path on a volume you control to keep data around. For a different kind of database entirely (e.g. Postgres), ask your coding agent to swap in the matching driver and update database above to match.

Run it locally

uv run server.py

The server speaks MCP over streamable HTTP at http://localhost:8000/mcp (set PORT to change the port — the same name foro injects when it deploys you).

Deploy it

Its pyproject.toml is all foro.sh needs, so this repo deploys as-is: sign in, pick this repo, deploy.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选