Skip to main content
Glama
liuwenlonghub

LimeAI MCP Server

LimeAI MCP Server (Python)

环境要求

  • Python 3.10 或更高版本。

1. 设置环境

首先,我们来安装uv

MacOS/Linux

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Related MCP server: MCP Server Sample

2. 获取 LimeAI MCP Server

# LimeAI Mcp Server 官方开源仓库下载
git@github.com:liuwenlonghub/limeai-mcp-server.git
cd limeai-mcp-server

# 创建虚拟环境并激活
uv venv
source .venv/bin/activate

# 安装依赖
uv add "mcp[cli]" httpx

获取 LIMEAI_ACCESS_TOKEN

3. 在Cursor中使用

Cursor -> Preferences -> Cursor Settings -> MCP -> Add new global MCP

添加以下配置内容(其它MCP客户端类似):

{
  "mcpServers": {
      "limeai-mcp-server": {
        "command": "uv",
        "args": [
          "--directory",
          "{YOUR_PATH}/limeai-mcp-server/",
          "run",
          "main.py"
        ],
        "env": {
        "LIMEAI_ACCESS_TOKEN": "<USER_LIMEAI_ACCESS_TOKEN>"
        }
      }
    }
}

回到配置,此时 LimeAI MCP Server已经启用

Available Tools

3 tools
get_user_infoA

获取当前用户信息

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only states 'get current user information' and provides no details about authentication requirements, rate limits, or what the response contains. For a read operation, some assurance of safety or a note about response format would improve transparency.

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 a single, clear sentence that contains no filler words. It is appropriately concise and front-loaded with the action and object.

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?

This is a very simple tool with no parameters, no output schema, and a self-explanatory purpose. Given its low complexity, the description is nearly complete—it only lacks optional context like authentication or return format, but those are not essential for a tool this basic.

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?

The tool has zero parameters, so there is no schema information to complement. The baseline of 4 is appropriate because the description doesn't need to explain parameters that don't exist, and nothing is missing in this dimension.

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 uses a specific verb ('get') and resource ('current user information'), making it immediately clear what the tool does. It also clearly distinguishes itself from sibling tools that are focused on saving (save_markdown, save_html).

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

Usage Guidelines2/5

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

No explicit guidance is provided on when to use this tool versus alternatives. While the sibling tools are obviously different (save vs get), there is no stated context, prerequisites, or exclusions.

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

save_htmlC

保存 html 代码到 LimeAI

ParametersJSON Schema
NameRequiredDescriptionDefault
file_nameNo
html_contentYes

TDQS

C2.5/5.0
Behavior1/5

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

No annotations are provided, and the description only repeats the tool's name without disclosing side effects, overwrite behavior, response format, or required permissions. The description takes no advantage of the opportunity to explain unobservable behavior.

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

Conciseness3/5

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

The description is a single sentence with no redundancy, so it is concise. However, it is under-specified and lacks structure or supplementary detail, making it less helpful than it could be.

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

Completeness2/5

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

For a tool with two parameters and no annotations, the one-line description is insufficient. It does not explain return values, file_name semantics, or any constraints, leaving significant gaps in the agent's understanding.

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

Parameters1/5

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

The schema description coverage is 0%, and the description does not explain the purpose of file_name or html_content. With no parameter-level guidance in either schema or description, the agent cannot infer what values are expected or how they affect the operation.

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 action ('save') and the resource ('html code') with a destination ('to LimeAI'), which distinguishes it from the sibling save_markdown tool. There is no ambiguity about the tool's core function.

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

Usage Guidelines2/5

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

The description lacks any guidance on when to use this tool versus save_markdown, and it does not mention any preconditions, exclusions, or alternative scenarios. Usage is only implied by the tool's name.

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

save_markdownB

保存文本内容(markdown格式)到 LimeAI

ParametersJSON Schema
NameRequiredDescriptionDefault
file_nameNo
text_contentYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It only states 'save' without disclosing side effects, overwrite behavior, permissions, or return values, leaving the agent with minimal insight into what the operation entails.

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 a single, front-loaded sentence with no filler or redundant details. It appropriately captures the core purpose in minimal space.

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

Completeness2/5

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

There is no output schema or annotations, and the description is too sparse to compensate. It omits the file_name parameter, behavior on save, and clear differentiation from save_html, making it incomplete for reliable invocation.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not mention file_name or elaborate on text_content beyond naming it. It adds no meaning beyond the schema's property names, leaving parameters effectively undocumented.

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 saves text content in markdown format to LimeAI, using a specific verb and resource. It distinguishes this tool from the sibling save_html by explicitly mentioning 'markdown format'.

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 mention of 'markdown format' implicitly suggests this tool is for markdown content, contrasting with save_html, but there is no explicit guidance on when to use this tool versus alternatives or when not to use it.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv0.1.0
    • First observedget_user_info
    • First observedsave_html
    • First observedsave_markdown

TDQS

A3.5/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: retrieving user info, saving markdown, and saving HTML. There is no overlap or ambiguity between them.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case: get_user_info, save_markdown, save_html. The pattern is predictable and uniform.

Tool Count5/5

With just 3 tools, the server is tightly scoped to its apparent purpose of saving content in markdown/HTML and retrieving user info. No unnecessary tools are present, and the count feels appropriate.

Completeness4/5

Core save workflows for both markdown and HTML are covered, along with user info retrieval. However, there are no tools for list, get, update, or delete saved content, which is a minor gap that agents might need to work around.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers