Skip to main content
Glama

Server Details

Create hosted mock REST APIs as tools: seed fake data, import specs, query, write, snapshot. Free.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 8 of 8 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: creating projects, adding resources, importing data, querying records, writing records, managing custom routes, snapshots, and viewing project info. There is no functional overlap.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (e.g., create_project, query_records, write_record). No mixing of conventions.

Tool Count5/5

With 8 tools, the server is well-scoped for a mock API service. Each tool addresses a distinct aspect of project and resource management, neither too sparse nor overstuffed.

Completeness4/5

The tool set covers the main lifecycle: project creation, resource addition, data import, CRUD, custom routes, and snapshots. The only notable gap is the lack of a tool to delete a project or resource, but the core functionality is well-covered.

Available Tools

8 tools
add_resourceAInspect

Add a resource (collection) to a project and seed it with realistic fake data. Either pass template (one of the built-ins, e.g. users, products, posts, comments, orders, todos, reviews, customers, events) or fields: an array of {name, type} where type ∈ uuid|firstName|lastName|fullName|username|email|avatar|image|word|words|title|sentence|paragraph|number|price|percent|boolean|date|pastDate|futureDate|url|domain|ip|phone|city|country|address|zipCode|company|jobTitle|color|latitude|longitude|rating|age|slug|status|category|refId, plus {name, type:"oneOf", values:[...]} for enums. seed = number of records to generate (default 20, max 100, 0 = empty).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesResource name, plural (e.g. products).
seedNoRecords to seed (default 20, max 100).
fieldsNoArray of {name, type} (or {name, type:'oneOf', values:[…]}). Optional.
projectYesProject id.
adminKeyYesThe project's adminKey.
templateNoBuilt-in template name. Optional (use this OR fields).
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description details key behaviors: seeding fake data, two configuration methods, and seed constraints. Does not mention error conditions or return values, but adequately covers the tool's operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four-sentence paragraph, front-loaded with purpose. Efficient but could be structured with bullet points for clarity. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, parameters, and usage, but lacks details on return values, error handling (e.g., resource already exists), or side effects. Adequate for a moderate-complexity tool with no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. Description enhances understanding by listing built-in templates, explaining fields structure with types, and clarifying seed defaults/max. Adds value beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Add a resource (collection) to a project and seed it with realistic fake data', using specific verb and resource. It differentiates from siblings like 'import_data' and 'write_record' by focusing on seeding fake data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Describes when to use (add resource with fake data) and how to use via template or fields. Provides seed limits and defaults. Lacks explicit exclusions or alternative tool references.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_projectAInspect

Create a new mock REST API project. Returns {id, adminKey, baseUrl, resources[]}. SAVE the adminKey — it is required for admin operations (add_resource, custom_route, snapshots) and is shown only once. Presets seed a full multi-resource backend: blog (posts/comments/authors), ecommerce (products/orders/customers/reviews), saas (users/teams/events). Omit preset (or use "blank") for an empty project you fill via add_resource or import_data. The mock API is then live at baseUrl: standard REST CRUD (GET/POST/PUT/PATCH/DELETE), CORS enabled, no auth needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoProject name (max 60 chars). Optional.
presetNoSeeded preset, or blank. Optional.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description fully discloses key behaviors: adminKey shown once, standard REST CRUD with CORS and no auth, and the live baseUrl. This equips the agent with necessary operational knowledge.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is tightly written with no wasted words. It front-loads the core action, then efficiently conveys critical details in a logical order.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of creating a project with presets, adminKey management, and live API behavior, the description covers all necessary aspects. No output schema exists, but return structure is described clearly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. The description adds value by explaining the 'name' as optional and the 'preset' options with examples of seeded resources, going beyond the enum list.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Create a new mock REST API project' and lists returned fields. It distinguishes from siblings like add_resource and import_data by being the initial creation step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use presets versus blank, and notes the adminKey's one-time visibility. It provides clear context but lacks an explicit 'when not to use' statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

custom_routeAInspect

Define a custom endpoint on a project (like /health, /config/:key, or a catch-all /webhooks/* request bin). body is a response template: {{query.x}} {{params.x}} {{body.x}} {{headers.x}} {{method}} {{path}} {{now}} {{ts}} {{uuid}} {{rand}}; triple braces {{{body}}} insert raw JSON. Custom routes take precedence over resource routes; '*' catch-alls are a fallback. Max 20 routes/project.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoResponse body template (string; JSON works).
pathYese.g. /health, /config/:key, /webhooks/*
methodNoDefault GET.
statusNoResponse status (default 200).
delayMsNoArtificial latency in ms.
projectYes
adminKeyYes
contentTypeNoDefault application/json.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses key behaviors: body template syntax with variable substitutions, triple braces for raw JSON, method/status/contentType defaults, precedence over resource routes, and the 20-route limit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but informative, delivering all key points in one paragraph; could benefit from slight restructuring (e.g., bullets) for easier scanning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 8 parameters and no output schema, the description covers template syntax and limits but omits what the tool returns (e.g., the created route) and error handling, leaving the agent somewhat uncertain about the response.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 75%, and the description adds significant meaning (e.g., template syntax for 'body', default values for method/status/contentType), though it does not detail 'project' or 'adminKey' beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it 'Define a custom endpoint on a project' with concrete examples like '/health, /config/:key, or a catch-all /webhooks/* request bin', and distinguishes from resource routes by noting precedence and fallback behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explains when to use (for custom endpoints) and notes constraints ('Max 20 routes/project') and precedence rules, but does not explicitly compare to sibling tools or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_dataAInspect

Create a live mock API from existing artifacts. Auto-detects: OpenAPI 3.x / Swagger 2.0 spec (JSON or YAML) → resources with realistic seeded data; json-server db.json → hosts your exact records; Postman Collection v2.x → resources from requests, saved example responses become records verbatim; CSV/TSV → one typed collection (numbers/booleans inferred per column). Max 512 KB. Returns {id, adminKey, baseUrl, warnings[]}.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoProject name override. Optional.
seedNoRecords to seed per resource for OpenAPI specs (default 20, max 100).
contentYesThe raw spec / db.json / collection / CSV text.
resourceNoCSV only: collection name (default items).
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It discloses auto-detection behavior, max file size (512 KB), and return object fields (id, adminKey, baseUrl, warnings). It also explains how Postman examples and CSV types are handled. This is solid behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph, efficient and front-loaded with the main purpose. It covers all key points without wasted words. Could be slightly more structured but is effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multiple artifact types, auto-detection, parameters), the description is quite complete. No output schema exists, but return values are described. Sibling tools hint at missing guidance but overall the description provides sufficient context for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds meaning: explains 'content' accepts various artifact types, 'seed' default/max for OpenAPI, and 'resource' is CSV-only with default 'items'. This enhances parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Create a live mock API from existing artifacts.' It lists specific artifact types (OpenAPI, Swagger, json-server, Postman, CSV/TSV) and what each produces, distinguishing it from sibling tools like 'create_project' or 'add_resource'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage (when you have an existing artifact) but lacks explicit guidance on when not to use this tool or alternatives. No exclusions or comparisons to siblings are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

project_infoAInspect

Get a project's public root index: every resource with record counts and URLs, custom routes, auth mode, and export links (openapi.json, types.ts, postman.json, db.json, GraphQL). No adminKey needed. Try project "demo" for the shared public playground.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectYesProject id (e.g. demo).
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavior. It states it is public (no adminKey needed) and lists return contents. It does not mention side effects, but as a read operation, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no extraneous information. The first sentence lists all return elements, the second adds auth info and an example. Efficient and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description is complete: it explains what is returned, that no authentication is required, and provides an example. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter. The description adds context by calling it a 'project id' and providing an example ('demo'), which adds value beyond the schema's bare description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it gets a project's public root index, listing resources, routes, auth mode, and export links. It uses a specific verb ('Get') and resource ('project's public root index'), distinguishing it from sibling tools like query_records.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description notes that no adminKey is needed, indicating it is a public read operation. It also suggests trying the 'demo' project. While it does not explicitly contrast with alternatives, the context is sufficient for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_recordsAInspect

GET records from a mock resource. params is an object of query parameters, all optional: exact filters (field=value), operator suffixes (price_gte, date_lte, name_like, status_ne), full-text q, _sort/_order (or _page/_limit for pagination), select (field projection, e.g. "name,price"), _expand=/_embed= relations. Failure simulation for testing: mock_status=503 forces that status, mock_delay=2000 adds latency (ms), mock_chaos=0.3 fails that fraction of requests randomly, mock_jitter=500 adds random latency, mock_envelope=data wraps the response. Pass id to fetch a single record. Defaults to _limit=25 — pass _limit explicitly for more (max 100 per page).

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoSingle record id. Optional.
paramsNoQuery params as key→value. Optional.
projectYes
resourceYesResource name (e.g. products).
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries full burden and excels: it discloses failure simulation (mock_status, mock_delay, mock_chaos), pagination defaults (_limit=25, max 100), and behavior for single record vs. list. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one dense paragraph with high information density. It front-loads the purpose and uses clear prefixes. Could benefit from bullet points for easier scanning, but every sentence is valuable, earning a 4.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and moderate schema coverage, the description fully compensates: it explains all parameters, defaults, behavior for single vs. list, and even failure simulation. No gaps remain for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 75% schema coverage, the description adds rich semantics beyond the schema: operator suffixes (gte, lte, like, ne), full-text q, sorting (_sort/_order), pagination (_page/_limit), field projection, relation expands, and three mock parameters. This significantly aids correct invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'GET records from a mock resource,' specifying the action and resource. It effectively differentiates from sibling tools like add_resource or create_project, which are not query tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides extensive details on when to use the tool, including query parameters, pagination, and failure simulation. However, it does not explicitly mention when not to use it or contrast with alternatives, leaving room for slight improvement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

snapshotsAInspect

Deterministic test fixtures: save the project's entire dataset under a name, restore it exactly later (list/delete too). Any GET can also be served read-only FROM a snapshot without touching live data via query param mock_snapshot= in query_records params — parallel test scenarios on one project.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoSnapshot name (required for restore/delete; default for save: snapshot-<n>).
actionYes
projectYes
adminKeyYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description clearly discloses the tool's behavior: saving entire dataset, exact restoration, list/delete operations, and read-only serving from snapshots. It does not cover potential side effects like overwriting existing snapshots or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with two sentences covering core functionality and an advanced use case. No redundant information, and key details are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers primary use cases and the advanced mock_snapshot feature, but lacks details on return values (e.g., what list returns) and error scenarios. Given no output schema, this is a notable gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning to the action enum (save, list, restore, delete) and notes the default naming for save. However, project and adminKey parameters remain unexplained, and schema coverage is only 25%, leaving gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool's purpose: creating deterministic test fixtures by saving, restoring, listing, and deleting snapshots of the entire project dataset. It clearly distinguishes from siblings by focusing on testing scenarios.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides practical guidance, including an advanced use case for serving GET requests from a snapshot via query param, enabling parallel test scenarios. However, it does not explicitly name alternative tools or state when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

write_recordAInspect

Create, update, or delete records in a mock resource. Writes persist (unlike JSONPlaceholder/FakeStoreAPI). POST creates (auto-id), PUT replaces, PATCH merges, DELETE removes. id required for PUT/PATCH/DELETE.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoRecord id (PUT/PATCH/DELETE).
bodyNoRecord fields (POST/PUT/PATCH).
methodYes
projectYes
resourceYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses persistence behavior (writes persist) and explains the id requirement for PUT/PATCH/DELETE, which is not enforced in the schema (id is optional). This adds valuable behavioral context beyond the input schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences that cover core functionality, persistence characteristics, and parameter requirements. Every sentence is necessary and informative with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers operations and persistence but omits details like return behavior (does it return the created/updated record?), error scenarios, or response format. Given the tool has no output schema and 5 parameters, a bit more completeness (e.g., 'returns the record' or 'empty body on success') would be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 40% (id and body have descriptions). The description adds meaning by explaining which methods require which parameters (e.g., id for PUT/PATCH/DELETE, body for POST/PUT/PATCH). However, it does not clarify the purpose of the required 'project' and 'resource' parameters, leaving a gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool creates, updates, or deletes records, with clear mapping of HTTP verbs to operations (POST creates, PUT replaces, PATCH merges, DELETE removes). This distinguishes it from sibling tools like query_records, which are read-only, and other resource-management tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies when to use each method (e.g., POST for create, id required for PUT/PATCH/DELETE) and notes that writes persist unlike JSONPlaceholder/FakeStoreAPI. However, it does not explicitly contrast with sibling tools or advise when not to use this tool (e.g., for reading).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources