# ai.meetlark/mcp-server

> Agent-first meeting schedule polls for humans and agents. Create polls, vote, find times.

- name: ai.meetlark/mcp-server
- version: 1.0.3
- connection class: R0 (autonomous)
- trust: 69/100 flags: no-repository
- quality: 77/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/ai.meetlark%2Fmcp-server
- tools: https://api.protogrid.dev/v1/servers/ai.meetlark%2Fmcp-server/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "meetlark": {
      "type": "http",
      "url": "https://meetlark.ai/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 45
- provenance: 45
- drivers: +dns-namespace +reachable +uptime-100% -stale-254d -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 77/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 71 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- fail `tools.annotations`: no tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: meetlark_create_poll (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); meetlark_get_results (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); meetlark_vote (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 998 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: 67 (weight 15)

- pass `deps.known_vulns`: no known advisory in 98 resolved packages
- fail `deps.mcp_sdk_version`: @modelcontextprotocol/sdk 1.30.1 has 1 known advisory (GHSA-6qxp-vccf-f47h); update @modelcontextprotocol/sdk to 1.31.0 or later
- pass `deps.resolvable`: @meetlark/mcp-server@1.0.3 resolved: 98 packages

- tools: 6, about 998 tokens to load them all
- tool set hash: 4c67d265a632ff3f1e4b6c6817ece0fc
- badge: [![protogrid quality](https://protogrid.dev/badge/ai.meetlark/mcp-server.svg)](https://protogrid.dev/servers/ai.meetlark/mcp-server)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Dependencies

- npm @meetlark/mcp-server@1.0.3: resolved, 97 dependencies, MCP SDK @modelcontextprotocol/sdk 1.30.1
  - GHSA-6qxp-vccf-f47h (high) in `` @modelcontextprotocol/sdk@1.30.1 ``, direct, fixed in `` 1.31.0 ``, advisory summary: "MCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP server" https://osv.dev/vulnerability/GHSA-6qxp-vccf-f47h

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0.

## Remotes

- https://meetlark.ai/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

- npm @meetlark/mcp-server@1.0.3

## Tools (6)

- `meetlark_close_poll`: Close a poll to stop accepting new votes. Use the admin token from poll creation.
- `meetlark_create_poll`: Create a scheduling poll to find a time that works for a group. Returns an admin URL (keep private) and a participation URL (share with participants). The creator's email must be verified -- if not yet verified, a verification email is sent automatically. Ask the user to check their inbox and click the link, then retry.
- `meetlark_get_admin_view`: Get full poll details including all votes and participants. This is the only way to see who voted and how they voted. Returns poll info, time slots, every participant's votes (yes/maybe/no per slot), participant emails, and admin URLs. Use the admin token from poll creation. Use this to check vote status or results.
- `meetlark_get_results`: Get poll details and available time slots using a participation token. Returns the poll title, description, status, and time slots -- but NOT votes or participant data. This is the view a participant sees before voting. To see who voted and how, use meetlark_get_admin_view instead.
- `meetlark_reopen_poll`: Reopen a previously closed poll to accept votes again. Use the admin token from poll creation.
- `meetlark_vote`: Cast a vote on a scheduling poll. Each time slot can be voted yes, maybe, or no. Requires participant name and email. Use the participation token from the poll's participate URL. If the email matches a previous voter on this poll, their response is updated instead of creating a duplicate.
