DocsReferenceMCP

MCP Reference

All tools and resources exposed by openserve’s Model Context Protocol server. Built for Claude Code, Cursor, and any MCP-compatible client.

14 tools5 resourcesstreamable HTTP · SSEAPI-key auth · stable

Connection§ /connection

Point your MCP-compatible client at the openserve endpoint. Every request is authenticated with an API key generated from your dashboard.

Endpoint
https://api.openserve.dev/mcp streamable http
Auth
Authorization: Bearer YOUR_API_KEY
Region
sfo-1 · hnd-1 · ams-1 (auto-routed)
Transport
HTTP/2 · keep-alive · SSE chunked
~/.claude/mcp.json
json
{ "mcpServers": { "openserve": { "type": "streamable-http", "url": "https://api.openserve.dev/mcp", "headers": { "Authorization": "Bearer YOUR_API_KEY_HERE" } } } }

Once connected, your client will see openserve as an available MCP server. List its capabilities with the standard MCP tools/list and resources/list methods, or just browse below.

Resources§ /resources · 5

Resources are read-only context documents that LLMs read before writing code. The static resources (sdk-docs, rules, examples, shared-file-types) require no arguments. The dynamic project-context resource is scoped to a project and requires auth.

Five complete example functions showing SCF patterns. Use these as templates when creating new functions — they cover the patterns that account for ~90% of cloud-function code on openserve.

  • · Read/write Postgres
  • · Redis caching
  • · External fetch with retry
  • · Parameter validation with zod
  • · Structured error responses
resources/read
json-rpc
{ "method": "resources/read", "params": { "uri": "scf://examples" } }

Tools§ /tools · 14

Tools are operations the LLM can call. Grouped by domain: projects, functions, shared files, and database. Every tool returns a JSON object — schemas below.

Projects

/ 4 tools

Returns counts of functions and shared files so you can understand what each project contains. Use this to find the projectId needed by other tools.

No arguments — call with an empty object.
projectId string
Stable identifier — use this in subsequent calls.
name string
Human-readable project name.
description string · nullable
Optional short description set by the owner.
functionCount integer
Number of cloud functions in this project.
sharedFileCount integer
Number of shared files in this project.
response.json
json
[ { "projectId": "prj_8jK2", "name": "focus-timer", "description": "Pomodoro w/ streaks & sync", "functionCount": 7, "sharedFileCount": 3 }, { "projectId": "prj_q4M9", "name": "penned", "description": "Journal that writes back", "functionCount": 12, "sharedFileCount": 5 } ]

Functions

/ 8 tools

Shared files

/ 1 tool

Database

/ 1 tool

Errors§ /errors

Errors follow the standard MCP error envelope. Every error has a numeric code, a stable tag for programmatic handling, and a human message.

error.json
json
{ "error": { "code": -32602, "tag": "forbidden_import", "message": "Function imports 'fs' — SCF rules forbid filesystem access.", "hint": "Read scf://rules for the full list of forbidden APIs." } }